2021-01-07 Análisis numérico Matlab Ecuación diferencial ordinaria Valor límite inicial Problema Solución numérica Estándar Runge Kutta Fórmula de cuatro etapas de cuarto orden Método de Euler

Análisis numérico de Matlab ecuación diferencial ordinaria valor límite inicial problema solución numérica estándar Runge Kuta fórmula de cuatro etapas de cuarto orden método de Euler

1. Fórmula estándar de cuatro etapas de cuarto orden de Runge Kuta

function y=rk4(fun,a,b,y0,n)
h=(b-a)/n;
y(1)=y0;
for k=1:n
  x=a+(k-1)*h;
  k1=h*feval(fun,x,y(k));
  k2=h*feval(fun,x+h/2,y(k)+k1/2);
  k3=h*feval(fun,x+h/2,y(k)+k2/2);
  k4=h*feval(fun,x+h,y(k)+k3);
  y(k+1)=y(k)+(k1+2*k2+2*k3+k4)/6;
end

Archivo de función

 

function u=frk4(x,y)u=y-2*x/y;

Programa de llamada

y=rk4(@frk4,0,1,1,10)

2 método de Euler


function y=euler(f,a,b,y0,h)
n=(b-a)/h;
y(1)=y0;
for i=1:n
  x(i)=a+(i-1)*h;
  y(i+1)=h*feval(f,x(i),y(i));
end

Archivo de función

 

function u=feuler(x,y)u=x^3-y/x;

Programa de llamada

y=euler(@feuler,1,2,0.4,0.2)

 

 

Supongo que te gusta

Origin blog.csdn.net/qingfengxd1/article/details/112322073
Recomendado
Clasificación