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

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?

回答(1 个)

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.

类别

帮助中心File Exchange 中查找有关 Numerical Integration and Differential Equations 的更多信息

提问:

2016-3-12

回答:

2016-3-14

Community Treasure Hunt

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

Start Hunting!

Translated by