Solve system of differntial equation with one variable
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Akhilkrishna Panamkoottathil Ramakrishnan
le 2 Jan 2021
Commenté : Akhilkrishna Panamkoottathil Ramakrishnan
le 4 Jan 2021
dydt= f(t,y)
t=0:0.0.1:1;
dydt(1) = ( 1.15125859*10^-17)*1i;
dydt(2) = ( 2.77307307*10^-17)*1i;
dydt(3) = ( 8.3780271*10^-17)*1i;
1 commentaire
Réponses (1)
Piotr Balik
le 3 Jan 2021
Define your derivative function in separate file, just as in your question:
function dydt = myODE(t,y)
dydt(1) = (1.15125859*10^-17)*1i;
dydt(2) = (2.77307307*10^-17)*1i;
dydt(3) = (8.3780271*10^-17)*1i;
end
And call for the solver:
t=0:0.01:1;
initial=[0 0 0]'; %column form
[t,y]=ode45(@myODE,t,initial);
%visualize
plot(t,y)
4 commentaires
Star Strider
le 4 Jan 2021
Change the function to:
function dydt = myODE(t,y)
dydt = zeros(3,1);
dydt(1) = (1.15125859*10^-17)*1i;
dydt(2) = (2.77307307*10^-17)*1i;
dydt(3) = (8.3780271*10^-17)*1i;
end
That will produce a column vector (the default is a row vector), and the code should work.
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!