Решение ODE второго порядка численно на Python с помощью SciPy с начальными условиями - PullRequest
0 голосов
/ 27 февраля 2020

Рассмотрим следующий ODE:

y''(x)=2x-2 and y'(0)=0, y(0)=0

Я использовал следующий код, чтобы попытаться решить его:

import numpy as np
import matplotlib.pyplot as plt

import scipy.integrate as integrate
from scipy.integrate import odeint

def dU_dx(U, x):
  return [U[1],2*x-2]

U0=[0,0]
xs = np.linspace(0,3,200)
Us = odeint(dU_dx, U0, xs)
ys = Us[:,0]

plt.plot(xs,ys)

Я получаю следующий график:

enter image description here

Что, безусловно, не является решением, поскольку должно быть y (x) = x 3 / 3-x 2 + 2x. Каким будет правильный код для решения этой проблемы, и что на самом деле делает мой код?

...