# Numerically integrate a time dependent differential equation

8 views (last 30 days)
Alireza Mofidi on 1 Dec 2022
Commented: Torsten on 2 Dec 2022
Hi - I need to numerically integrate this equation: dCDF/dt=1/tr where tr = t0 * exp(bP/Tc). t0, b, and P are constants and Tc is defined as: Tc= {Te^4+K * [307.59-190.96 (ln⁡〖t/24〗 )^0.24 ]}^(1/4) where Te, K are constants and t is changing between 1 to 300 days. The initial condition is CDF = 0 at t=ti. I want to integrate the dCDF/dt=1/tr in the forward time direction starting from t=ti until the CDF approach a finite value of 0.05. I appreciate your help.
Torsten on 1 Dec 2022
Then my answer below should be correct.

Torsten on 1 Dec 2022
bP = 1;
Te = 1;
K = 1;
t0 = 1;
ti = 24;
CDF = @(x)integral(@(t) 1/t0*exp(-bP./(Te^4+K*(307.59-190.96*(log(t/24)).^0.24)).^0.25),ti,x)
CDF = function_handle with value:
@(x)integral(@(t)1/t0*exp(-bP./(Te^4+K*(307.59-190.96*(log(t/24)).^0.24)).^0.25),ti,x)
x = ti:ti:300*ti;
F = arrayfun(@(x)CDF(x),x)
F = 1×300
0 10.9214 21.4913 31.9095 42.2291 52.4761 62.6657 72.8082 82.9106 92.9783 103.0154 113.0253 123.0105 132.9732 142.9153 152.8384 162.7438 172.6327 182.5061 192.3650 202.2102 212.0423 221.8622 231.6703 241.4672 251.2534 261.0294 270.7955 280.5523 290.2999
plot(x,F) Torsten on 2 Dec 2022
As you can see, with the parameters I used for bP ,Te, K and t0, CDF tends to infinity as time grows. Insert the "correct" empirical parameters, run the code again and check the CDF curve shown. If it does not behave as you expect, recheck your model.

### Categories

Find more on MuPAD in Help Center and File Exchange

R2019b

### Community Treasure Hunt

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

Start Hunting!