Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
solve runge kutta method
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
lamda=0.2;
mu=0.8;
h=0.1; % step size
x = 0:h:5; % Calculates upto y(3)
Y = zeros(1,length(x));
y(1) = 0.2; % redo with other choices here.
% initial condition
%F_xy = @(??,??) (lamda^2/(lamda+mu)^2)*exp(-2(lamda+mu)*t)+((2*mu*lamda)/(lamda+mu)^2)*exp(-(mu+lamda)*t)+mu^2/(lamda+mu)^2;
for i=1:(length(x)-1) % calculation loop
k_1 = F_xy(x(i),y(i));
k_2 = F_xy(x(i)+0.5*h,y(i)+0.5*h*k_1);
k_3 = F_xy((x(i)+0.5*h),(y(i)+0.5*h*k_2));
k_4 = F_xy((x(i)+h),(y(i)+k_3*h));
y(i+1) = y(i) + (1/6)*(k_1+2*k_2+2*k_3+k_4)*h; % main equation
end
% validate using a decent ODE integrator
tspan = [0,5]; y0 = -0.5;
[tx, yx] = ode45(F_xy, tspan, y0)
plot(x,y,'o-', tx, yx, '--')
if i have this equation F_xy=(lamda^2/(lamda+mu)^2)*exp(-2(lamda+mu)*t)+((2*mu*lamda)/(lamda+mu)^2)*exp(-(mu+lamda)*t)+mu^2/(lamda+mu)^2
the variable only t
how can correct the code to get the answer?
1 Kommentar
James Tursa
am 15 Mai 2019
Bearbeitet: James Tursa
am 15 Mai 2019
Can you show the code you are using for the F_xy function? Can you post the original DE you are trying to solve?
Antworten (0)
Diese Frage ist geschlossen.
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!