JavaScript用のCalculusライブラリを知っている人はいますか?私はいくつかのグーグルをしましたが、何も思いつきませんでした。私はWolframAlphaAPIを申請しましたが、彼らが私に助成金を与えることを選択しない限り、それは高価です。
理想的には、2次元の点の配列を関数にフィードし、導関数の点のグラフ(配列)を取得することができます。
そのようなライブラリが存在しない場合は、共有するライブラリを作成します。
JavaScript用のCalculusライブラリを知っている人はいますか?私はいくつかのグーグルをしましたが、何も思いつきませんでした。私はWolframAlphaAPIを申請しましたが、彼らが私に助成金を与えることを選択しない限り、それは高価です。
理想的には、2次元の点の配列を関数にフィードし、導関数の点のグラフ(配列)を取得することができます。
そのようなライブラリが存在しない場合は、共有するライブラリを作成します。
ポイントの2次元配列があると言うので、2つの変数の関数があると仮定しますf(x, y)
。つまり、導関数は1つではありません。代わりに、偏導関数のセットを取得します。
有限差分式を使用して偏導関数を近似できます。
x
atに関する偏導関数f(x, y)
は(f(x+h, y) - f(x-h, y))/2h
。
y
atに関する偏導関数f(x, y)
は(f(x, y+h) - f(x, y-h))/2h
。
これらの式でh
は、はグリッド上のノード間のスペースであり、一定の間隔のグリッドがあると仮定しています。水平方向と垂直方向の間隔が異なる場合は、に関するパーシャルの水平方向の間隔と、に関するパーシャルx
の垂直方向の間隔を使用しy
ます。
更新:あなたの質問を誤解しました。2次元配列はドメイン値の配列だと思いました。x
とf(x)
値のリストがある場合は、f'(x)
として概算できます(f(x+h) - f(x-h)) / 2h
。これは、用語の1つが範囲外になる最初と最後のポイントを除いて、どこでも機能します。(f(x + h) - f(x))/h
左端と右端で使用できます(f(x) - f(x-h))/h
。近似はエンドポイントでは精度が低くなりますが、回避することはできません。