Untitled
unknown
python
4 years ago
725 B
3
Indexable
import numpy as np
def f(x,y):
fx=x+y-1
return fx
def Mp(f,x0,y0,h,xf):
n = int((xf-x0)/h)+1
x=[]
y=[]
x.append(x0)
y.append(y0)
yp=[]
for i in range(1, n-1):
xi,yi = x[i-1],y[i-1]
k1 = f(xi,yi)
k2 = f(xi+h/2,yi+1/2*h*k1)
k3 = f(xi+h/2,yi+1/2*k2*h)
k4 = f(xi+h,yi+k3*h)
x.append((round(xi+h,1)))
y.append(((yi+(1/6)*h*(k1+2*k2+2*k3+k4))))
for i in range(0,n-1):
yp.append(f(x[i],y[i]))
yaste4=y[n-2]+(0.2/24)*(55*yp[n-2]-59*yp[n-3]+37*yp[n-4]-9*yp[n-5])
yprim4=f(xf,yaste4)
y.append(y[n-2]+(0.2/24)*(9*yprim4+19*yp[n-2]-5*yp[n-3]+yp[n-4]))
print(x)
print(y)
Mp(f,0,1,0.2,0.8)Editor is loading...