Solving a system of ODEs with conditionally defined coefficient
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Cris19
el 15 de Dic. de 2019
Comentada: Cris19
el 15 de Dic. de 2019
Hi, I want to plot on the interval
the solution of the following system of ODEs
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/254496/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/254497/image.png)
with the initial conditions
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/254498/image.png)
where
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/254499/image.png)
I wrote the function, by defining the coefficient f, using "piecewise" sintax:
function dzdt=odefunw1(t,z)
syms t
f=piecewise(0<=t<1, -2*t^2+3*t, t>=1, 1/t);
dzdt=zeros(2,1);
dzdt(1)=z(2);
dzdt(2)=z(1)-f*z(2);
end
In the Command Window, I wrote
tspan = [0 1000];
z0 = [0.1 0.1];
[t,z] = ode45(@(t,z) odefunw1(t,z), tspan, z0);
plot(t,z(:,1),'g',t,z(:,2),'b')
But several errors occured. Where do I wrong and how could I fix it? Thanks in advance.
0 comentarios
Respuesta aceptada
Más respuestas (0)
Ver también
Categorías
Más información sobre Ordinary Differential Equations en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!