当前位置: 首页 > 期刊 > 《中国现代应用药学》 > 2000年第4期
编号:10236406
TBNONLIN-简便实用的非线性拟合程序及其药学应用
http://www.100md.com 《中国现代应用药学》 2000年第4期
     作者:黎洪珊 孙华东 卢炜 魏树礼

    单位:北京 100083 北京大学药学院药剂学 研究室

    关键词:非线性拟合;指数多项式拟合;生理药物动力学;组织浓度预报

    中国现代应用药学000401 摘要 目的:解决药学研究中较难解决的非线性拟合 问题。方法:以tb-BASIC语言编写了TBNONLIN程序。结果: 用编制的TBNONLIN程序较好的解决了一些非线性拟合问题,如多指数曲线和威布尔 分布的拟合、肝肠循环过程药动参数的计算、生理药动模型的求解和组织药物浓度的预报等 。结论:该程序简单易学、自定义功能强大、实用。

    Development of TBNONLIN-A simple and practible program for non-line fitting and its pharmaceutical applications
, http://www.100md.com
    Li Hongsan(Li HS), Sun Huadong(Sun HD),Lu Wei(Lu W),et al

    (School of Pharmaceutical Sciences,Peking University,Beijing 100083)

    ABSTRACT OBJECTIVE:Solve non-line problems in pharmaceutical rese arch.METHOD:To develop,a non-line fitting program TBNONLIN,by tb-B ASIC.RESULTS:Some typical pharmaceutical and pharmacokinetical non- line problems,i.e.multi-exponential curve fitting,Weibulll fitting,gut-liver c irculating fitting,and physiological pharmacokinetic model fitting,were solved s uccessfully.CONCLUSION:TBNONLIN is simple,practicable and powerful p rogram to solve all sorts of non-line problems.
, 百拇医药
    KEY WORDS non-line fitting,multi-exponential fitting,physiologica l pharmacokinetic model fitting,prediction of tissue drug concertration

    多指数曲线和威布尔分布的拟合、肝肠循环过程药动参数的计算、生理药物 动力学模型的求解和组织药物浓度的预报等非线性问题在药学研究中日益普遍,为解决上述 问题,本研究室以国内外广泛使用的NONLIN为蓝本,避免了国内使用的NONLIN程序(用FORTR AN语言编写)的操作复杂和BASIC语言虽简单却速度慢的缺点,用turbo-BASIC语言编写了简 单实用的非线性拟合程序TBNONLIN。

    1 系统组成与功能

    1.1 系统组成

    TBNONLIN由以下6个部分组成:TB.exe(turbo-BASIC运行环境)、TBNONLIN.bas(主程序)、W EIFEN.bas或JIFEN.bas(自定义子程序)、NL.bas(数据文件)、NL.res(结果文件)、OUTPUT.b as(显示打印程序)。
, http://www.100md.com
    1.2 使用方法

    分为三个步骤。

    首先,写出待拟合曲线的微分或积分方程式,再将方程式定义到子程序中。子程序名为WEIF EN.bas(微分形式)和JIFEN.bas(积分形式),可在turbo-BASIC环境中的“EDIT”功能窗内 或WINDOW附件中的记事本中进行编辑。

    接着,将待拟合的数据及参数的初始值等以特定格 式写入数据文件NL.bas中。此过程同样可在turbo-BASIC或记事本中完成。EXCEL数据可粘 贴到WORD中,用“表格窗”内的“将表格转换成文本”功能,以纯文本形式粘贴到子程序中 ,从而把批量计算和非线性拟合结合起来,避免重复输入。

    最后,在turbo-BASIC环境中 进行拟合计算。在MS-DOS下运行TB.exe,进入turbo-BASIC环境,使用“File”窗内的“L OAD”功能依次载入WEIFEN.bas(或JIFEN.bas)、NL.bas和TBNONLIN.bas,接着使用“RUN"功 能,开始计算。算毕,结果在屏幕上显示,同时以输出文件(NL.bas)存盘。当要再次显示计 算结果时,可运行OUTPUT.bas,该程序调用NL.res将显示结果,还可打印输出。
, 百拇医药
    2 应用示例

    囿于篇幅,以TBNONLIN在生理药动学模型的应用为例说明该程序的使用方法。隔室模型的局 限使得生理药物动力学模型近20年来发展很快。然而,Kp(组织药物浓度与血药浓度的比值) 、f(游离药物分数)、Clint(固有清除率)等参数常常需借助微渗泵给药,使药物在少量动物 体内的分布达稳态后,以RIA和HPLC等方法测定[1,2]。微渗泵的性能好坏、植入手 术成功与否和样本的代表性等因素直接关系到参数的可靠程度;且具体药物微渗泵的取得和 操作的复杂性极大地限制了生理药物动力学的发展。而采取常规给药方法取得大量动物的组 织分布数据,采用TBNONLIN进行非线性拟合求生理药动参数,代表性和可靠性均较好,且操 作的简便性有利于一般研究单位进行此类探索[3]。反之,也可根据生理药动参数 利用TBNONLIN快速预报任何时刻的组织药物浓度。

    例:大鼠静脉注射某药2mg(浓度约为200ug/ml)后测得静脉v、肺p、肝h、消化道g和肾r等组 织不同时间的浓度如下,求药物在各组织中的分配系数Kpi、肝肾固有清除率Clint以及药物 的游离分数fb。 时间/h
, http://www.100md.com
    Cv

    /μg.ml -1

    Cp

    /μg.ml-1

    Ch

    /μg.ml-1

    Cg

    /μg.ml-1

    Cr

    /μg.ml-1
, http://www.100md.com
    1

    9.99

    42.42

    22.61

    39.71

    54.10

    2

    4.14

    15.64

    10.22

    34.96

    11.57

    3
, 百拇医药
    2.90

    10.69

    6.62

    28.05

    5.64

    5

    1.95

    7.12

    4.02

    17.75

    3.40

    8

    1.31
, 百拇医药
    4.78

    2.24

    9.40

    2.22

    12

    0.93

    3.37

    1.25

    4.76

    1.53

    18

    0.63

    2.29
, 百拇医药
    0.71

    2.47

    1.04

    24

    0.45

    1.62

    0.48

    1.62

    0.73

    2.1 建立生理药动模型

    根据大鼠生理解剖的特点,建立生理药动模型如下:t25601.gif (2460 字节)
, 百拇医药
    Qi:组织i的血浆流速,因为在正常状态下组织的体积是恒定的,所以血浆流入和流出组织的 速度是一致的。其中各部分的参数是在大鼠体内的正常值的基础上,为使肺血流量与其它各 部分的血流量之和相符,做了适当的校正。QUICK组织包括了脑、心、脾等器官,SLOW组织 主要包括肌肉、皮肤、脂肪和结缔组织等血液循环相对较差的部分。Ci为实验测得的组织i 的药物浓度。

    2.2 写出微分方程和相应的子程序

    各部分的微分方程为:

    动脉:dCa/dt=Qtot(Cp/Kp,p-Ca)/Va

    静脉:dCv/dt=(∑Qi*Ci/Kp,I-Qtot*Cv)/Vv

    肺脏:dCp/dt=Qtot*(Cv-Cp/Kp,p)/Vp
, http://www.100md.com
    慢组织:dCs/dt=Qs*(Ca-Cs/Kp,s)/Vs

    快组织:dCq/dt=Qq*(Ca-Cq*Kp,q)/Vq

    肝脏:Vh*dCh/dt=Qh*Ca+Qg*Cg/Kp,g-(Qh+Qg)*Ch/Kp,h-fb*Ch*CLh/Kp,h

    消化道:dCg/dt=Qg*(Ca-Cg/Kp,g)/Vg

    肾脏:Vr*dCr/dt=Qr*(Ca-Cr/Kp,r)-fb*Cr*CLr/Kp,r

    与此相应的微分子程序为:

    SUB WEIFEN(T,Y(1),F(1)

    SHARED SSTEP,MC,PT(),P(),TI
, 百拇医药
    VV=12.6:QQ=6.3:VL=1.2:VQ=3.2:VS=179:VH=11:VG=11:VK=2

    QT=50.7:QQ=5.1:QS=10.2:QH=13.1:QG=10.7:QK=11.7

    RQ=PT(1):RS=PT(2):RH=PT(3):RG=PT(4)

    PK=PT(5):RL=PT(6):CLH=PT(7):CLK=PT(8):FB=PT(9)

    F(1)=((QH+QG)*Y(6)/RH+QK*Y(8)/RK+QQ*Y(4)/RQ+QS*Y(5)/RS-QT*Y(1))/VV

    F(2)=QT*(Y(3)/RL-Y(2))/VA

    F(3)=QT*(Y(1)-Y(3)/RL)/VL
, 百拇医药
    F(4)=QQ*(Y(2)-Y(4)/RQ)/VQ

    F(5)=QS*(Y(2)-Y(5)/RS)/VS

    F(6)=(QH*Y(2)+QG*Y(7)/RG-(QH+QG)*Y(6)/RH-FB*CLH*Y(6)/RH)/VH

    F(7)=QG*(Y(2)-Y(7)/RG)/VG

    F(8)=(QK*(Y(2)-Y(8)/RK)-FB*CLK*Y(8)/RK)/VK

    END SUB

    其中,Y(1)、Y(2)、Y(3)、Y(4)、Y(5)、Y(6)、Y(7)、Y(8)分别代表静脉、动脉、肺脏、快 组织、慢组织、肝脏、消化道和肾中的药物浓度。RQ、RS、RH、RG、RK、RL分别代表快组织 、慢组织、肝脏、消化道、肾脏和肺脏中的药物分配系数。CLH、CLK分别表示肝脏和肾脏的 固有清除率。FB为游离药物分数。
, 百拇医药
    2.3 初值的设定和数据文件的编写

    Kp的初值可由组织药浓经时曲线上变化较缓部分的平均值除以血样药时曲线相应部分的平 均值求得,其它参数的初值可通过查阅文献结合血药浓度变化加以估计。因参数上下限可为 很宽范围(一般而言,上限可为下限的100倍或更大),故初值的设定有较大余地,无需接近 拟合出来的理论值。

    数据文件的编写具有特定的格式。如下所示:

    “NL.bas”

    “PHYSIOLOGICAL PK MODEL(i.v. 2mg)

    11,02/13,64,1005,0.0016,0.57/
, 百拇医药
    88/09,20010,011,012,013,014,015,016 ,017/518,819,4020/121,322,623,72 4,825/

    126,9.9927,42.4228,22.6129,39.7130,54.1031/2 ,4.14,15.64,10.22,34.96,11.573/3,2.90,10.69,6.62,28.05,5.648/5,1.95,7.12,4.0 2,17.75,3.400/8,1.31,4.78,2.24,9.40,2.220/12,0.93,3.37,1.25,4.76,1.539/18,0. 63,2.29,0.71,2.471.040/24,0.45,1.62,0.48,1.62,0.736/
, 百拇医药
    932/

    3.233,0.334,3035/0.8,0.1,10/5.4,0.6,60/2.9,0.3,30/7.2,0.7,70/3 .6,0.4,40/125,12.5,1250/40,4,400/

    0.9,0.1,1/

    836/137,238,339,440,541,642,743, 844/245,2446/(“/”-表示回车,即“Enter”)

    1-子程序种类(微分1,积分0);2-打印输出方式;3-权重(0、1、2分别代表权重为1、1/c、 1/c/c);4-拟合精度(选3~8,即10-3~10-8,一般为6,即求得的参数值保留 到小数点后第6位);5-拟合次数;6-增分幅度;7-微分步长(对计算结果有较直接的影响, 一般选终点时间的几十分之一到几百分之一,本例为24h的1/480);8-拟合曲线的总数;9- 初始时间;10~17-各曲线在初始时间的取值(拟和需进行数值积分运算,全部曲线均需设定 初始自变量值和初始因变量值。初始自变量可为0,也可为第一个实验点的值);18-有实验 数据的曲线数目;19-每条曲线的实验数据个数;20-实验数据总数(不含空白值);21~25- 有实验数据的曲线序号;26-取样时间;27~31-与该时间相应的各曲线的实验数据(如空白 则输入-1);此后7行数据意义相同;32-待拟和参数数目;33~35-参数PT(1)的初值及其上 下限;此后8行意义相同;36-欲给出理论值的曲线数目;37~44-欲给出理论值的曲线序号 ;45-理论值的时间间隔;46-理论值的终点时间。
, 百拇医药
    2.4 程序运行结果

    运算结果为:

    BESTFITL=56,WEIGHTOFDATA=1,INTERGALSTEP=0.05,SS=0.16102333,VAR=0.0720715,AIC=-55.04824066,P(1)=4.281440(0.251383,P(2)=0.689029(0.081386 ,P(3)=4.737387(0.885457,P(4)=2.891482(0.028301,P(5)=6.818276(1.469496

    P(6)=3.555901(0.055645,P(7)=96.139023(2711.917480,P(8)=37.096054(1061.906128

    P(9)=0.999717(28.398643

, 百拇医药     上述微分子程序适于全部含药组织均写入模型的情况,可称为“系统拟合法”。若模型未能 覆盖全部含药组织,则上述子程序中的静脉血药浓度表达式可写成类似于多室模型的多指数 项表达式[4],以消除偏差,称为“准系统拟合法”。此外,各组织药浓可分别与 血药浓度指数表达式进行拟合,以消除组织间误差的相互影响,称为“单元拟合法”。而胃 、肠、胰、脾和肝脏等相互关联的组织必须和血药浓度指数表达式置于同一子程序中求解, 称为“关联拟合法”。若以参数预报组织药物浓度,上述微分子程序不变,仅将NL.bas文件 中的参数初值及其上下限均写成已知参数值即可。TBNONLIN预报组织药浓比国内常用的RONG E KUTTA计算法要快捷。

    以上仅列举了TBNONLIN在生理药动模型中的应用。此外,对于非 线性模型、多剂量给药、统计矩分析、药动-药效模型等各种问题的求解,只要能写出对应 的程序和数据文件,用它都能拟合出所需的参数。

    参考文献
, 百拇医药
    [1]Bernareggi A,Rowland M.Phrsiologic modeling of cy closporin kenitics in rat and man.J Pharm Biopharm,1991,19(1)∶21.

    [2]Kawai R,Lemaire M,Steimer JL,et al.Ph ysiologically based pharmacokinetic study on a cyclosporin derivatative,SDZ IMM 125.J Pharm Biopharm,1994,22(5)∶327.

    [3]Blakey GE,Nestorov IA,Arndel PA,et al .Quantitave structure-pharmacokinetics relationships:I. Development of a whole -body physiologically based model to characterize changes in pharmacokinetics a cross a homologous series of barbiturates in the rat.J Pharm Biopharm,1997,25(3) ∶277.

    [4]Kang HJ,Wientjes MG,Au JLS.Phsiolo gically based pharmacokinetic models of 2′,3′-dideoxyinosine.Pharm Res,1997,1 4(3)∶337.

    收稿日期:1999-04-01, 百拇医药