0

私は、生データとその導関数から補間を計算するプロジェクト魔女を作ろうとしています。次のような 2 つの配列があります。

A = { 1, 2, 3, 4, ... , n }
B = { 0.23, 0.43, 0.24, 0.19, ... , n }

次の配列を記述する関数が必要なので、F(A[i]) = B[i] である関数を記述する多項式を補間するために、apache-common-math ライブラリを使用しています。その後、極値(最大/最小)を見つけるために、この関数の導関数を計算したいと思います。

どういうわけか、派生部分に問題があります。

現在使用中:

        DividedDifferenceInterpolator devider = new DividedDifferenceInterpolator();
        PolynomialFunctionNewtonForm polynom = devider.interpolate(xArray,  
        yArray);

これで、前の配列を表す関数である polynom ができました。その導関数をどのように計算すればよいですか..?

ありがとう。

4

2 に答える 2

0

ライブラリを使用する代わりにラグランジュ多項式を使用すると、多項式の導関数を簡単に見つけることができます。

簡単な関数を書くことができます ( UnivariateFunctionapache Commons からの実装)。このページの @Krokop による方程式を参照してください。

次に、ここに記載されているコモンズ数学のルート検索ライブラリを使用できます。ページに記載されている「典型的な使用法」を参照してください。

もっと簡単な方法があるかどうかはわかりません。

于 2015-03-08T11:22:19.573 に答える