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
Что не так с этим кодом? Кажется, это не работает.используя fsolve, чтобы найти решение
Определить «не работает». –
Похоже, что может возникнуть ошибка при указании знаменателя вашего второго параметра sqrt. Возможно, 'np.sqrt (.5 * musun ** 2/(e * (1 - x ** 2))))'? – mtadd