0

一部のキャッシュフローの内部収益率を実装しようとしています。

0 = (c1/(1+r)) + (c2/(1+r)^2) + (c3/(1+r)^3) .... 式のように、ルート r を見つけます。

この時点で、finmath という Java ライブラリが完成しました。

これらのクラスを含む net.finmath.rootfinder という名前のパッケージがあります

BisectionSearch 
NewtonsMethod   
SecantMethod

ここまでは問題ありません。しかし、数式を使用しようとすると、c1、c2、c3 の値をリストとして入力することを期待する方法はありません。これらのクラスが実装する唯一のメソッドは

double  getAccuracy() 
double  getBestPoint() 
double  getNextPoint() 
int     getNumberOfIterations() 
boolean isDone() 
void    setValueAndDerivative(double value, double derivative) 

私の質問は、このライブラリを使用して方程式を解くにはどうすればよいですか? このライブラリを利用することについて、誰かが何か考えを持っていることを願っています。

4

1 に答える 1

0

二分法、ニュートン法、セカント法は、方程式の根を見つけたり推定したりするために使用されるいくつかの方法です。(これらの方法について知るためにいくつかの計算を行います)。これらの数学的方法を使用するには、代数方程式が必要です。

あなたが述べたクラスは、根を見つけるための数学的方法を実装していると思います。c1、c2、c3、...の値を代入して式を作成する必要があります。その後、これらの Java メソッドを使用できます。rの値が与えられたときに数式の値を見つけるには、Javaメソッドを実装する必要があると思います。(方程式ではなく数式)

于 2014-12-22T17:45:09.760 に答える