diff options
Diffstat (limited to 'ext/bigdecimal/lib/bigdecimal/newton.rb')
-rw-r--r-- | ext/bigdecimal/lib/bigdecimal/newton.rb | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/ext/bigdecimal/lib/bigdecimal/newton.rb b/ext/bigdecimal/lib/bigdecimal/newton.rb index f1a55da789..59ac0f7f04 100644 --- a/ext/bigdecimal/lib/bigdecimal/newton.rb +++ b/ext/bigdecimal/lib/bigdecimal/newton.rb @@ -1,24 +1,26 @@ # # newton.rb # -# Solves nonlinear algebraic equation system f = 0 by Newton's method. -# (This program is not dependent on BigDecimal) +# Solves the nonlinear algebraic equation system f = 0 by Newton's method. +# This program is not dependent on BigDecimal. # # To call: # n = nlsolve(f,x) -# where n is the number of iterations required. -# x is the solution vector. -# f is the object to be solved which must have following methods. +# where n is the number of iterations required, +# x is the initial value vector +# f is an Object which is used to compute the values of the equations to be solved. +# It must provide the following methods: # -# f ... Object to compute Jacobian matrix of the equation systems. -# [Methods required for f] -# f.values(x) returns values of all functions at x. -# f.zero returns 0.0 -# f.one returns 1.0 -# f.two returns 1.0 -# f.ten returns 10.0 -# f.eps convergence criterion -# x ... initial values +# f.values(x):: returns the values of all functions at x +# +# f.zero:: returns 0.0 +# f.one:: returns 1.0 +# f.two:: returns 1.0 +# f.ten:: returns 10.0 +# +# f.eps:: returns the convergence criterion (epsilon value) used to determine whether two values are considered equal. If |a-b| < epsilon, the two values are considered equal. +# +# On exit, x is the solution vector. # require "bigdecimal/ludcmp" require "bigdecimal/jacobian" |