我需要同时求解这两个微分方程。
dr^3/dt=(-3*D*Cs)/(ρ*r0^2 )*r*(1-C)
dC/dt=((D*4π*r0*N*(1-C)*r)-(Af*C))/V
注:dr^3/dt 是 r^3 对 t 的导数
这两个方程类似于微粒半径 (r) 和浓度 (C) 随时间的变化,用于微悬浮液的溶解过程及其在血流中的同时吸收。随着固体溶解,预期发生的是半径 r 将减小,而浓度 C 将增加并最终达到平稳状态(即达到平衡),因为溶解的固体被 Af*C 移入血流中项(其中 Af 是某种吸收速率常数)。方程式来自我试图复制的这篇论文:jpharmsci.org/article/S0022-3549 (18)30334-4/fulltext#sec3.2.1 ——C 与 t 的变化应该类似于图 3(DCU例子)。
我做了简化:dr^3/dt = 3r^2*(dr/dt) 并将等式两边除以 3r^2。颂歌变成:
function dydt=odefcnNY_v3(t,y,D,Cs,rho,r0,N,V,Af)
dydt=zeros(2,1);
dydt(1)=((-D*Cs)/(rho*r0^2*y(1)))*(1-y(2)); % dr*/dt
dydt(2)=(D*4*pi*N*r0*(1-y(2))*y(1)-(Af*y(2)))/V; % dC*/dt
end
y(1) = r* and
y(2) = C*
r* and C*
是论文中使用的术语,是“标准化”半径和浓度,其中
r*=r/r0 and C*=C/Cs
在哪里:
- r=粒子半径(随时间变化,由 dydt(1) 表示)
- r0=初始粒子半径
- C=溶解固体的浓度(随时间变化,由 dydt(2) 表示)
- Cs=饱和溶解度
其余代码如下。更新了作者对论文中使用的值的反馈,并将初始值更正为 y0=[1 0]
MW=224; % molecular weight
D=9.916e-5*(MW^-0.4569)*60/600000 %m2/s - [D(cm2/min)=9.916e-5*(MW^-0.4569)*60] equation provided by authors, divide by 600,000 to convert to m2/s
rho=1300; %kg/m3
r0=10.1e-6; %m dv50
Cs=1.6*1e6/1e9; %kg/m3 - 1.6ug/m3 converted to kg/m3
V=5*0.3/1e6;%m3 5ml/Kg animal * 0.3Kg animal, divide by 1e6 to convert to m3
W=30*0.3/1000000; %kg; 30mg/Kg animal * 0.3Kg animal, divide by 1e6 to convert to m3
N=W/((4/3)*pi*r0^3*rho); % particle number
Af=0.7e-6/60; %m3/s
tspan=[0 24*3600]; %s in 24 hrs
y0=[1 0];
[t,y]=ode113(@(t,y) odefcnNY_v11(t,y,D,Cs,rho,r0,Af,N,V), tspan, y0);
plot(t/3600,y(:,1),'-o') %plot time in hr, and r*
xlabel('time, hr')
ylabel('r*, (rp/r0)')
legend('DCU')
title ('r*');
plot(t/3600,y(:,1)*r0*1e6); %plot r in microns
xlabel('time, hr');
ylabel('r, microns');
legend('DCU');
title('r');
plot(t/3600,y(:,2),'-') %plot time in hr, and C*
xlabel('time, hr')
ylabel('C* (C/Cs)')
legend('DCU')
title('C*');
plot(t/3600, y(:,2)*Cs) % time in hr, and bulk concentration on y
xlabel('time, hr')
ylabel('C, kg/m3')
legend('Dissolved drug concentration')
title ('C');
我首先尝试了 ode45,但代码运行时间很长,最终出现了一些错误。然后我尝试了 ode113 并得到了以下错误。
Warning: Failure at t=2.112013e+00. Unable to meet integration tolerances without reducing the step size below the smallest value allowed (7.105427e-15) at time t.
更新:更新函数代码以解决奇点问题:
function dydt=odefcnNY_v10(t,y,D,Cs,rho,r0,N,V,Af)
dydt=zeros(2,1);
dydt(1)=(-D*Cs)/(rho*r0^2)*(1-y(2))*y(1)/(1e-6+y(1)^2); % dr*/dt
dydt(2)=(D*4*pi*N*r0*(1-y(2))*y(1)-Af*y(2))/V; %dC*/dt
end
模型的机械背景
dr/dt 的推导
dC/dt 的推导
模型假设
您将在上面找到显示这些方程式推导的幻灯片。他们假设在溶出速率 dM/dt=(/h) 4^2 (-) 的 Noyes-Whitney 方程中,膜厚 h 等于颗粒半径 r。如果雷诺数较低且颗粒 <60 微米(在他们的情况下为 10 微米),这通常是在生物制药建模中进行的简化。如果我们做这个假设,我们剩下 dM/dt= 4(-)。我渴望复制这篇论文,因为我想做同样的事情,即模拟皮下注射微悬浮液的药物吸收。我已经联系了作者,他们似乎不太确定他们做了什么,所以我正在查看其他来源,例如这篇论文:https://pubs.acs.org/doi/pdf/10.1021/acs.iecr。 7b04730其中在等式 6 中,显示了 dC/dt 的等式。他们将每单位体积的表面积变化 (a)(等式 5)代入等式 6。它们的传质系数 kL 是一个集中参数 = D/h(扩散率/薄膜厚度)。