#ニュートン法のコードを作りたい
以下のようなコードを作ったのですが、
#ニュートン法アルゴリズム残差による import numpy as np import matplotlib.pyplot as plt import math def f(x): return x * x * x - 8.0 def df(x): return 3.0 * x * x def newton(): eps = 10 ^ (-7) X[0] = 10.0 for k in range(0,60): X[k+1] = X[k] - f(X[k]) / df(X[k]) if abs(f(X(k))) < eps: return '{}'.format(X[k]) print("残差 = " + '{}'.format(abs(f(X[k])))) print("誤差 = " + '{:.12f}'.format(abs(X[k] - 2))) print("収束次数 = " + '{:.12f}'.format(math.log(abs(X[k] - 2)/math.log(abs(X[k-1] - 2))))) print(f"{newton():.12e}")
X[0] = 10.0 NameError: name 'X' is not defined
このようなエラーが出てしまいます。
また、この部分も
X[k+1] = X[k] - f(X[k]) / df(X[k])
エラーになり、リスト型がおかしいのか、
どうすれば良いか教えていただきたいです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/18 09:27
2019/05/18 09:44
2019/05/18 12:22
2019/05/18 12:44