import numpy as np
from scipy.optimize import fsolve
musun = 132712000000
T = 365.25 * 86400 * 2/3
e = 581.2392124070273
def f(x):
return ((T * musun ** 2/(2 * np.pi)) ** (1/3) * np.sqrt(1 - x ** 2)
- np.sqrt(.5 * musun ** 2/e * (1 - x ** 2)))
x = fsolve(f, 0.01)
f(x)
print x
Co jest nie tak z tym kodem? Wygląda na to, że nie działa.używanie fsolve do znalezienia rozwiązania
Zdefiniuj "nie działa". –
Wygląda na to, że może być błąd w określaniu mianownik drugiego 'sqrt' parametru. Być może 'np.sqrt (.5 * musun ** 2/(e * (1 - x ** 2))))? – mtadd