I am working at a mathematical problem and I wanted to solve it numerically through MATLAB. The equation has the form:
epsilon*y'(t) =t*y(t)(y(t)-a)(y(t)-b)+c
where a<0 and b>0 and c>0

 Akzeptierte Antwort

Torsten
Torsten am 7 Feb. 2019
Bearbeitet: Torsten am 7 Feb. 2019

0 Stimmen

a = -0.2;
b = 0.1;
c = 0.1;
epsilon = 1.0;
fun = @(t,y)(t*y*(y-a)*(y-b)+c)/epsilon;
tspan = [0 3.5];
y0 = 0;
[T,Y] = ode45(fun,tspan,y0);
plot(T,Y)

4 Kommentare

Thank you for your help, but are you sure for you answer, could you explain more the method of your work, please.
Torsten
Torsten am 7 Feb. 2019
Take a look at how ODE integrators are invoked:
help ode45
Would you change this algorithm to Runge Kutta algorithm, pleas?!
a = -0.2;
b = 0.1;
c = 0.1;
epsilon = 1.0;
fun = @(t,y)(t*y*(y-a)*(y-b)+c)/epsilon;
tspan = [0 3.5];
y0 = 0;
[T,Y] = ode45(fun,tspan,y0);
plot(T,Y)
Torsten
Torsten am 4 Mär. 2019
ODE45 is a Runge-Kutta integrator ...

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Numerical Integration and Differential Equations finden Sie in Hilfe-Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by