Euler, Runge Kutta, and ODE45

조회 수: 3 (최근 30일)
fernando piedra
fernando piedra 2020년 11월 5일
답변: James Tursa 2020년 11월 5일
Hi so i have to create a program capable of pick the function that the user wants to utiliezed, if user wants to calculate the function base using euler method the program will select Eulers Method and so on. I know how to excute them all in different mfiles but im not sure how to put them all in one mfile. I also need another mfile where all the constant are gonna be
%RK 4TH ORDER
for j=1:n
k1=f3(x(j),y2(j));
k2=f3(x(j)+0.125,y2(j)+k1*0.125);
k3=f3(x(j)+0.125,y2(j)+k2*0.125);
k4=f3(x(j)+0.125,y2(j)+k3*0.125);
y2(j+1)=y2(j)+(0.25/6)*(k1+2*(k2+k3)+k4);
x(j+1)=x(j)+h;
end
%EULERS METHOD
for i=1:n
y(i+1)=y(i)+0.25*f1(x(i),y(i));
x(i+1)=x(i)+0.25;
end
%ODE_45
fun=@(t,y)y*(t^2-1.1)
[t,y]=ode45(fun,[0 2],1)
  댓글 수: 1
James Tursa
James Tursa 2020년 11월 5일
Your RK4 code has an error. This line:
k4=f3(x(j)+0.125,y2(j)+k3*0.125);
should be this
k4=f3(x(j)+0.25,y2(j)+k3*0.25);

댓글을 달려면 로그인하십시오.

채택된 답변

James Tursa
James Tursa 2020년 11월 5일
You could use a switch control block to run the method selected.

추가 답변 (0개)

제품


릴리스

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by