2017-02-14 16 views
-1

Итак, я пытаюсь написать код, который решает (что мы назвали) дифференциальное уравнение орбиты в потенциале кеплера V (r) = - 1/rДифференциальное уравнение численного решения орбиты кеплера в питоне?

Когда вы делаете математику, вы получаете дифференциальное уравнение, которое выглядит следующим образом:

д^2u/д (р)^2 + и - т/м^2 = 0

Differential equation image

где и = 1/г и мы в конечном счете ищет r (fi)

и теперь я попытался решить с использованием численного метода, сначала я сказал ди/DFI = у затем definig функции (я принял некоторые произвольные М и М)

def func(y,fi): 
    m=4 
    M=5 
    return [y[1],m/M^2-y[0]]$ 

и импортирован из scipy.integrate импорта odeint , а затем положить в

ts = np.linspace(0,15,150) 
ys = odeint(func, y0, ts) 

теперь это получает меня массив из 150 массивов двух чисел и я не очень понимаю, что dodes первое число означает, и что делает второе число означает, это является

ys=[fi,u(fi)] 

или что-то еще?

+0

Вы пытались прочитать 'help (odeint)'? – DyZ

+0

Я сделал, но, к сожалению, все еще не совсем понял:/ –

+0

"_Returns ... массив, содержащий ** значение y ** для каждого ** желаемого времени в t **, с начальным значением' y0' в первая строка. » – DyZ

ответ

0

Состояние на заказ: одна система - [value, derivative]. Результатом интеграции является список пар состояний того же типа.