> 文章列表 > 【系统生物学】利用XPPAUT求解SOD系统

【系统生物学】利用XPPAUT求解SOD系统

【系统生物学】利用XPPAUT求解SOD系统

利用XPPAUT求解SOD系统

微分方程背景介绍

常微分方程是描述一个未知函数及其导数之间关系的方程,其中未知函数只有一个自变量。在生物系统建模中,常微分方程被用来描述生物系统中状态变量随时间变化的关系。

在生物系统建模中, 刻画某状态变量随时间变化的关系, 用常微分方程来描述。
对于确定性的系统而言, 系统的状态变量随时间的改变, 可以表达成如下的微分方程组:
dxidt=x˙=fi(x1,⋯,xn,p1,⋯,pl,t)i=1,⋯,n\\frac{d x_i}{d t}=\\dot{x}=f_i\\left(x_1, \\cdots, x_n, p_1, \\cdots, p_l, t\\right) \\quad i=1, \\cdots, n dtdxi=x˙=fi(x1,,xn,p1,,pl,t)i=1,,n
这里 xix_ixi 表示变量, 如浓度; pjp_jpj 表示参数, 如酶浓度或动力学常数; ttt 表示时间。
写成矢量形式: dxdt=x˙=f(x,p,t)\\quad \\frac{d \\mathbf{x}}{d t}=\\dot{\\mathbf{x}}=\\mathbf{f}(\\mathbf{x}, \\mathbf{p}, t)dtdx=x˙=f(x,p,t)
其中, x=(x1,⋯,xn)T,f=(f1,⋯,fn)T,p=(p1,⋯,pl)T\\mathbf{x}=\\left(x_1, \\cdots, x_n\\right)^T, \\mathbf{f}=\\left(f_1, \\cdots, f_n\\right)^T, \\mathbf{p}=\\left(p_1, \\cdots, p_l\\right)^Tx=(x1,,xn)T,f=(f1,,fn)T,p=(p1,,pl)T
例如: 代谢建模中, 底物降解, 浓度变化正比于实际的浓度, 就可以表示成:
c˙(t)=k⋅c(t)\\dot{c}(t)=k \\cdot c(t) c˙(t)=kc(t)

SOD系统

SOD简介

SOD是指超氧化物歧化酶(Superoxide Dismutase),是一种抗氧化酶,它可以将细胞内产生的超氧自由基转化为过氧化氢氧分子。超氧自由基是一种高度反应性的分子,它们可以与细胞内的其他分子发生反应,导致细胞损伤和炎症等问题。因此,SOD在维持细胞健康方面起着重要作用。

SOD通常包括多个亚型,如Cu/Zn-SOD、Mn-SOD和Fe-SOD等。这些亚型在不同的组织和环境中发挥不同的作用。例如,Cu/Zn-SOD主要存在于细胞质中,而Mn-SOD则主要存在于线粒体中。

img
图1 CU/ZN superoxide dismutase from neisseria meningitidis E73A mutant

【系统生物学】利用XPPAUT求解SOD系统

图2 人体中的SOD

反应体系和微分方程

反应体系: ⟶c1O2−−⟶C2SODH2O2⟶C3cat H2O\\quad \\stackrel{\\mathrm{c}_1}{\\longrightarrow} \\mathrm{O}_2^{--} \\stackrel{\\mathrm{SOD}}{\\stackrel{\\mathrm{C}_2}{\\longrightarrow}} \\mathrm{H}_2 \\mathrm{O}_2 \\stackrel{\\text { cat }}{\\stackrel{\\mathrm{C}_3}{\\longrightarrow}} \\mathrm{H}_2 \\mathrm{O}c1O2−−C2SODH2O2C3 cat H2O
系统动力学方程:
{dO2∙−dt=c1−c2⋅SOD⋅O2∙−dH2O2dt=c2⋅SOD⋅O2∙−−c3⋅cat⋅H2O2\\left\\{\\begin{array}{l} \\frac{d O_2^{\\bullet-}}{d t}=c_1-c_2 \\cdot S O D \\cdot O_2^{\\bullet-} \\\\ \\frac{d H_2 O_2}{d t}=c_2 \\cdot S O D \\cdot O_2^{\\bullet-}-c_3 \\cdot c a t \\cdot \\mathrm{H}_2 \\mathrm{O}_2 \\end{array}\\right. {dtdO2∙−=c1c2SODO2∙−dtdH2O2=c2SODO2∙−c3catH2O2

j简写为

{dxdt=a−bxdydt=bx−cy\\left\\{\\begin{array}{l} \\frac{d x}{d t}=a-b x \\\\ \\frac{d y}{d t}=b x-c y \\end{array}\\right. {dtdx=abxdtdy=bxcy
(其中, x=O2∙−,y=H2O2,a=c1,b=c2⋅SOD,c=c3⋅cat)\\left.x=O_2^{\\bullet-}, y=H_2 O_2, a=c_1, b=c_2 \\cdot S O D, c=c_3 \\cdot c a t\\right)x=O2∙−,y=H2O2,a=c1,b=c2SOD,c=c3cat)
给定参数值:
c1=6.6×10−7,c2=1.6×109,c3=3.4×107,SOD=10−5,cat=10−5c_1=6.6 \\times 10^{-7}, \\quad c_2=1.6 \\times 10^9, \\quad c_3=3.4 \\times 10^7, \\quad S O D=10^{-5}, \\quad c a t=10^{-5} c1=6.6×107,c2=1.6×109,c3=3.4×107,SOD=105,cat=105
和初始条件: O2∗−(0)=0,H2O2(0)=0\\quad O_2^{*-}(0)=0, \\mathrm{H}_2 \\mathrm{O}_2(0)=0O2∗−(0)=0,H2O2(0)=0

求解常微分方程

XPP-AUT是一种用于求解微分方程的软件工具。它可以用于求解多种类型的微分方程,包括常微分方程、差分方程、延迟微分方程、边界值问题和随机微分方程等。

ode文件

x'=a-b*x
y'=b*x-c*y
par a=6.6e-7,b=1.6e4,c=3.4e2
init x=0,y=0
done

【系统生物学】利用XPPAUT求解SOD系统
图3 导入ODE文件

求解并画图的步骤如下:

  1. 将ODE文件拖入xpp – Shortcut

  2. 点击nUmericsDt改为0.0001并设置Method为Q

  3. Esc返回并点击Initialconds中的(G)o

  4. 选择Viewwaxes中2D X设置合适参数

  5. 点击Graphic stuffexp(o)rt data导出数据

  6. 在matlab(或其他程序)中画图

结果

【系统生物学】利用XPPAUT求解SOD系统 【系统生物学】利用XPPAUT求解SOD系统
图3 02(XPPAUT) 图4 H202(XPPAUT)
【系统生物学】利用XPPAUT求解SOD系统 【系统生物学】利用XPPAUT求解SOD系统
图5 O2(XPPAUT) 图6 H202(XPPAUT)

MATLAB画图代码如下:

data = table2array(readtable("H2O2.dat"));
plot(data(:,1),data(:,2))
xlim([0, 0.01]);
ylim([0, 2e-9]);
xlabel('Time');
ylabel('Concentration');
title('H2O2');
data = table2array(readtable("O2.dat"));
plot(data(:,1),data(:,2))
xlim([0, 0.01]);
ylim([0, 4.3e-11]);
xlabel('Time');
ylabel('Concentration');
title('O2');