what should I do. HELP function
Show older comments

[y, z]=rungeKutta(2,4,0,1,10000)
function dydx=f(x,y,z)
dydx=-2*y + 4*exp(-x) + exp(-1000*(z^2));
end
function dzdx=g(y,z)
dzdx=-y*(z^2)/3;
end
function [y,z]=rungeKutta(y0,z0,x0,xn,n)
h=(xn-x0)/n;
x=x0;
y=y0;
x=x0;
for i=1:n
k0=h*f(x,y,z);
l0=h*g(y,z);
k1=h*f(x+h/2, y+ k0/2, z+ lo/2);
l1=h*g(y+ k0/2, z+ lo/2);
k2=h*f(x+h/2, y+ k1/2, z+ l1/2);
l1=h*g(y+ k1/2, z+ l1/2);
k3=h*f(x+h, y+ k2, z+ l2);
l3=h*g(y+ k2, z+ l2);
y=y + (k0+2*k1+2*k2+k3)/6;
z=z + (l0+2*l1+2*l2+l3)/6;
end
end
1 Comment
Bilal Ates
on 26 Jun 2020
Accepted Answer
More Answers (1)
Steven Lord
on 26 Jun 2020
0 votes
As stated on this documentation page "Script files cannot have the same name as a function in the file." Either rename your script file to something other than rungeKutta.m or rename the function you define on line 9 of rungeKutta.m to something other than rungeKutta.
2 Comments
Gaurav Aggarwal
on 26 Jun 2020
Edited: Gaurav Aggarwal
on 26 Jun 2020
After defining some variables, the script worked for me. The script's name and the function name were same in my case. As per my understanding, it doesn't matter as long as the function call is within the file scope, which seems to be the case with Bilal's (acc. to the code he provided).
Bilal Ates
on 28 Jun 2020
Categories
Find more on Get Started with MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!