多倍長精度計算ライブラリ TsBigMath

多倍長精度計算ライブラリ TsBigMath:


はじめに

  • github : https://github.com/hopekb/TsBigMath
  • TsBigMath は Typescript で実装した多倍長の数値を計算するためのライブラリです。
  • TsBigMath クラスは, 多倍長精度 Math 関数の static クラスです。
  • TsBigMath クラスの他, TsBigInt と TsBigFloat があり, 整数, 浮動小数が扱えます。


特徴

  • 多倍長の整数, 浮動小数を計算するための標準的で static な Math 関数の実装,
  • 簡単で簡潔な記述, 小さく短い実装,
  • Typescript による実装, 依存関係なし,


用例

import { TsBigMath } from "ts-bigmath"; 
 
for (var i = 0; i < 4; i++) { 
  TsBigMath.pr = 2 ** i; 
  console.log(`pr = ${TsBigMath.pr}`); 
  console.log(`eps = ${TsBigMath.eps.toStrE()}`); 
  console.log(`pi = ${TsBigMath.pi.toString()}`); 
  console.log(`pi/2 = ${TsBigMath.hpi.toString()}`); 
  console.log(`e = ${TsBigMath.e.toString()}`); 
  console.log(`exp(10) = ${TsBigMath.exp(10).toString()}`); 
  console.log(`ln2 = ${TsBigMath.ln2.toString()}`); 
  console.log(`ln3 = ${TsBigMath.ln3.toString()}`); 
  console.log(`ln10 = ${TsBigMath.ln10.toString()}`); 
  console.log(`pow(pi, 10) = ${TsBigMath.pow(TsBigMath.pi, 10).toString()}`); 
  console.log(`sqrt(2) = ${TsBigMath.sqrt(2).toString()}`); 
  console.log(`cbrt(2) = ${TsBigMath.cbrt(2).toString()}`); 
  console.log(`sin(pi/4) = ${TsBigMath.sin(TsBigMath.pi.mul(0.25)).toString()}`); 
  console.log(`cos(pi/4) = ${TsBigMath.cos(TsBigMath.pi.mul(0.25)).toString()}`); 
  console.log(`tan(pi/4) = ${TsBigMath.tan(TsBigMath.pi.mul(0.25)).toString()}`); 
  console.log(`sinh(pi/4) = ${TsBigMath.sinh(TsBigMath.pi.mul(0.25)).toString()}`); 
  console.log(`cosh(pi/4) = ${TsBigMath.cosh(TsBigMath.pi.mul(0.25)).toString()}`); 
  console.log(`tanh(pi/4) = ${TsBigMath.tanh(TsBigMath.pi.mul(0.25)).toString()}`); 
  console.log(`asin(0.5) = ${TsBigMath.asin(0.5).toString()}`); 
  console.log(`acos(0.5) = ${TsBigMath.acos(0.5).toString()}`); 
  console.log(`atan(10) = ${TsBigMath.atan(10).toString()}`); 
  console.log(`atan2(10,1) = ${TsBigMath.atan2(10, 1).toString()}`); 
  console.log(`asinh(1000) = ${TsBigMath.asinh(1000).toString()}`); 
  console.log(`acosh(1000) = ${TsBigMath.acosh(1000).toString()}`); 
  console.log(`atanh(0.9) = ${TsBigMath.atanh(0.9).toString()}`); 
  console.log(' '); 
} 
 

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)