diff options
Diffstat (limited to 'usth/MATH2.2/labwork/1/ratpoison.py')
-rw-r--r-- | usth/MATH2.2/labwork/1/ratpoison.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/usth/MATH2.2/labwork/1/ratpoison.py b/usth/MATH2.2/labwork/1/ratpoison.py new file mode 100644 index 0000000..16aa65d --- /dev/null +++ b/usth/MATH2.2/labwork/1/ratpoison.py @@ -0,0 +1,8 @@ +def ratpoison(f, df, x, es=10**-8, imax=20): + ea, i = 1, 0 + while ea > es and i < imax: + i += 1 + xold, x = x, x - f(x)/df(x) + if f(x) == 0: return x, 0, 0, i + if x: ea = abs((x - xold) / x) + return x, f(x), ea, i |