Matlab ODE Solvers - Paramater Question
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Greetings,
I working with a system of differential equations that model amount of components as a reaction proceeds. I want to pass a variable parameter through one of matlab's ode solvers (probably 45/15). This is in addition to time bounds, so it would be like ode45(function, times, [X1(0),X2(0),...X5(0)],... ). I want to find λ given something like X1(final) = 0.35. How to include this information?
Thank you (:
0 commentaires
Réponses (2)
Walter Roberson
le 17 Mai 2024
To pass an additional parameter, use http://www.mathworks.com/help/matlab/math/parameterizing-functions.html
However... for the task of finding X1(final) = 0.35 you should be using one of the Boundary Value Problems solvers; https://www.mathworks.com/help/matlab/boundary-value-problems.html
Torsten
le 17 Mai 2024
Déplacé(e) : Torsten
le 17 Mai 2024
You mean
ode45(@(t,y)fun(t,y,lambda),times,[X1(0),X2(0),...X5(0)])
function res = fun(t,y,lambda)
...
end
? But what do you mean by "variable parameter" ? This is a contradiction in itself: A parameter isn't variable.
2 commentaires
Torsten
le 17 Mai 2024
If you have a final condition for one of the unknown functions, you should use "bvp4c" instead of "ode45".
Voir également
Catégories
En savoir plus sur Ordinary Differential Equations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!