How can I solve an ODE that involves a variable parameter?

1 visualizzazione (ultimi 30 giorni)
I need to solve the next ODE:
dT/dz = h*A*(T-t)/(m*cp).
The parameter "A" is also a function of z, A=f(z) and I already know that function so I am able to calculate A for any value of z. By using the solver ode45, the problem is that I don't know at which "z" I need to evaluate the function A since the solver uses a random step to solve the differencial equation. Any suggestions?

Risposte (1)

Torsten
Torsten il 14 Mar 2016
The actual value of z is transfered to the function where you define your differential equation. Thus you only have to evaluate A at this specific z:
dTdz = myfun(z,T)
A=@(z)...;
t=...;
m=...;
cp=...;
h=...;
dTdz=h*A(z)*(T-t)/(m*cp)
Best wishes
Torsten.

Categorie

Scopri di più su Numerical Integration and Differential Equations in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by