私はSciPyを使って、Newton-Raphsonを使った非常に簡単な方程式(ケプラーの方程式)を解こうとしています。しかし、プログラムをexectuingすると、次のエラーメッセージで失敗します。明らかにSciPyを読み込むことができません
return sc.optimize.newton(f, meanAnomaly, f_prime, args=(),
AttributeError: 'module' object has no attribute 'newton'
しかし、私はscipyのダウンロードは、Ubuntuの12.04の下にインストールされています。 scipy.test()から:
NumPy version 1.5.1
NumPy is installed in /usr/lib/python2.7/dist-packages/numpy
SciPy version 0.9.0
SciPy is installed in /usr/lib/python2.7/dist-packages/scipy
Python version 2.7.2+ (default, Jan 21 2012, 23:31:34) [GCC 4.6.2]
nose version 1.1.2
どうしたのですか?ここに私のコードです:あなたはsc
としてscipy.optimize
を輸入している
# File a
from b import *
print calculate_eccentric_anomaly(1,2)
# File b
def calculate_eccentric_anomaly(meanAnomaly, eccentricity):
import scipy.optimize as sc
def f(eccentricAnomaly):
return (eccentricAnomaly - eccentricity *
sc.sin(eccentricAnomaly) - meanAnomaly)
def f_prime(eccentricAnomaly):
return 1 - eccentricity * sc.cos(eccentricAnomaly)
return sc.optimize.newton(f, meanAnomaly, f_prime, args=(),
tol=1e-10, maxiter=50)
それは、愚かな初心者の間違いです。 – Ingo