スタートページ

数学ライブラリ(mathlib.js)一覧表

私用を目的にしたJavascriptのライブラリですので、保証はしません。誤差を考慮していないので厳密解、実務的な大規模な問題には使えません。
 (トレース版)は、作成時のデバッグに使ったものですが、処理経過がわかり、初心者向けの教育用に使えると思います。
 mathlib.jsの本体はこちらにあります。コピーしてお使いになって結構です。
 外部jsとして使うときは、次のように指定してください。
   <script src="http://www.kogures.com/hitoshi/javascript/mathlib.js"></script>



分野・機能一般形備考
●代数系
方程式の根(はさみうち法) x = xFx(fx, xmin, xmax[, eps])
方程式の根(ニュートン法) x = xFxNewton(fx, x0[, eps])
 (トレース版) x = xFxNewton(表示場所, fx, x0[, eps])
3次以下の方程式の複素根 ary = xFx3(a0, a1,..., a3) 一つの実根をニュートン法で得て2次方程式にする
 (トレース版) ary = xFx3(表示場所, a0, a1,..., a3)
数式 f(x) を最小にするx x = xminFx(fx, xmin, xmax [, eps])
数式 f(x) を最大にするx x = xmaxFx(fx, xmin, xmax [, eps])
微分(はさみうち法) a = dFx(fx, x [, d, eps])
定積分(シンプソン則) x = sFx(fx, xmin, xmax[, n2, eps]) n2はキザミ数
●多点系
補間(配列入力) polArray(n, m, xa, ya) n:次数、m:補間するxの個数、xa, yaは配列
補間( (x,y)入力) y = polPoints(x, x0,y0, x1,y1, x2,y2, ..., xn,yn) x:補間点、(xi,yi):曲線が通る点
最小二乗法(高次式:y=a0+a1x +...+anxn LeastSquare(n, p, f, xa, ya, aa) n:次数、p:観測点個数、f:内外挿点個数、aa:出力配列,係数ai
 (トレース版) LeastSquareTrace(表示場所, n, p, f, xa, ya, aa) トレース表示場所:HTMLで<div id="表示場所"></div>で指定
●配列・行列系
配列のソート(行) sortMatrix(a, keycol [, order [, fixrow]])
連立一次方程式 GaussJordan(n, a, b, x) 配列xに解が入る
連立一次方程式(特殊入力形式) GaussJordanArray(a) 全データを一つの配列 a で与える。a は維持されない。解は a[i][0] に入る
 (トレース版) GaussJordanArrayTrace(表示場所, a) 経過がHTMLの%lt;div id="〇〇"></div>に表示される
逆行列 invMatrix(n, a [, x]) xに逆行列が入る。省略するとaに入る
 (トレース版) invMatrixTrace(表示場所, n, a)
線形計画法(LP) ary = LP(m, n, a) m:制約式数、n:変数個数、a:行列配列(a[0][j]:目的関数、a[i][0]:定数項
 (トレース版) ary = LP(表示場所, m, n, a)
輸送問題 ary = TLP(m, n, a) m:供給地数、n:需要地数, a:輸送費用(a[i][0]:供給量,a[0][j]:需要量)
 (トレース版) ary = TLP(表示場所, m, n, a)
●確率分布系
基本統計量:一変数 ary = basicStat(x1, x2, ..., xn) aryは連想配列:ary["合計"], ary["標準偏差"] など
基本統計量:一変数(配列入力) ary = basicStatArray(x[, n]) x[0]~x[n-1]が対象のときnを指定、省略時はx.length
基本統計量:2変数 ary = basicStat2(x1,y1, x2,y2, ..., xn,yn) aryは連想配列:ary["共分散"], ary["相関係数"] など
基本統計量:2変数(配列入力) ary = basicStatArray(x, y[, n])
正規分布:確率密度 p = pNormalDist(x [, μ, σ])
正規分布:累積確率関数(標準形) s = sNormalDistStd(x) 正規分布(0,1)の範囲-∞~xの累積値
正規分布:累積確率関数(一般形) s = sNormalDist(x [, μ, σ])
正規分布:区間内累積確率 s = sNormalDistMinmax(xmin, xmax [, μ, σ])
正規分布:累積確率密度の逆関数(標準形) x = invNormalDistStd(p) 正規分布(0,1)の累積確率がpとなる点x
正規分布:累積確率密度の逆関数(一般形) x = invNormalDist(p [, μ, σ])
二項分布・二項係数(組合せの数)nCx m = nCx(n, x) nCx = n!/x!(n-x)!
二項分布・確率密度 p = pBinDist(x, n, p) 発生確率pの事象がn回の試行でx回発生する確率
二項分布・累積確率 s = sBinDist(x, n, p)
負の二項分布・確率密度 p = pBinNegDist(x, n, p) 発生確率pの事象がはじめてx回発生したときの試行回数nの確率分布
負の二項分布・累積確率 s = sBinNegDist(x, n, p) n回以内である確率
幾何分布・確率密度 p = pGeoDist(n, p) 発生確率pの事象がはじめて発生したときの試行回数nの確率分布
幾何分布・累積確率 s = sGeoDist(n, p)
超幾何分布・確率密度 p = pHyperGeoDist(a, b, α, β) Aがa個、Bがb個から、α+β個とりだしたときAがα個である確率
超幾何分布・累積確率 s = sHyperGeoDist(a, b, α, β)
指数分布・確率密度 p = pExpDist(t, λ) 平均λの指数分布で、t=t のときの確率密度
指数分布・累積確率 s = sExpDist(t, λ) 区間 t=0~t の累積確率
指数分布・区間内累積確率 s = sExpDistMinmax(tmin, tmax, λ) 区間 t=tmin~tmax の累積確率
指数分布・累積確率の逆関数 t = invExpDist(p, λ) sExpDistの逆関数。累積確率がpとなるtの値
ポアソン分布・確率密度 p = pPoissonDist(x, λ) 平均λの発生事象がx回発生する確率
ポアソン分布・累積確率 s = sPoissonDist(x, λ)
ポアソン分布・累積確率の逆関数 x = invPoissonDist(p, λ)
三角分布・確率密度 p = pTriDist(x, xmin, xmax, xmod) 最小値xmin, 最大値xmin, 最頻値xmin
三角分布・累積確率 s = sTriDist(x, xmin, xmax, xmod)
三角分布・累積確率の逆関数 x = invTriDist(p, xmin, xmax, xmod)
●乱数系
一様分布・連続 x = xRandomUni(xmin, xmax)
一様分布・整数 i = iRandomUni(imin, imax)
正規分布・連続 x = xRandomNormal(μ, σ) 正規分布累積確率逆関数 invNormaiDist を利用
正規分布・連続 x = xRandomNormal12(μ, σ) 12個のMath,Random()の和が正規分布になることを利用
正規分布・整数 i = iRandomNormal(μ, σ)
正規分布・連続・区間指定 x = xRandomNormalMinmax(xmin, xmax, μ, σ)
正規分布・整数・区間指定 i = iRandomNormalMinmax(imin, imax, μ, σ)
指数分布・連続 x = xRandomExp(λ) 単位時間内の発生回数が平均λの事象が、x単位時間に発生する確率の乱数
指数分布・整数 i = iRandomExp(λ)
指数分布・連続・区間指定 x = xRandomExpMinmax(xmin, xmax, λ)
指数分布・整数・区間指定 i = iRandomExpMinmax(xmin, xmax, λ)
三角分布・連続 x = xRandomTri(xmin, xmax, xmod)
三角分布・整数 i = iRandomTri(xmin, xmax, xmod)