Getting error with the code in ode45 function

2 views (last 30 days)
function dy = f(t,y)
y=[9,100];
D=0.00000001;
F=96485;
Z=0.000000016;
R=0.08206*298;
C=0.05;
J=-((D*Z*F*C)/R);
dy = J*y;
t=[0 5];
inity = 0;
[t,y]=ode45(@f, t, inity);
plot(t,y)
end
This is code for Nernst-Planck equation and when i execute it with Matlab-2020RA version it is showing error as, Out of memory. The likely cause is an infinite recursion within the program.
Error in f (line 12)
[t,y]=ode45(@f, t, inity);
So help me to correct the code

Accepted Answer

Stephan
Stephan on 14 May 2021
Edited: Stephan on 14 May 2021
t=[0 5];
inity = 1;
[t,y]=ode45(@f, t, inity);
plot(t,y)
function dy = f(~,y)
% y=[9,100]; dont overwrite y
D=0.00000001;
F=96485;
Z=0.000000016;
R=0.08206*298;
C=0.05;
J=-((D*Z*F*C)/R);
dy = J.*y;
end
  3 Comments
Mohith S
Mohith S on 14 May 2021
Now im getting this error if i use the above code u have given...
f(~, y)
f(~, y)
Error: Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched delimiters.
Stephan
Stephan on 15 May 2021
Please show the full code you use that gives error.

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!