# PharmPK Discussion - Multiple dosing in WNL

PharmPK Discussion List Archive Index page
• On 25 Mar 2005 at 14:07:46, "Tremblay Pierre-Olivier" (potremblay.-a-.anapharm.com) sent the message
`The following message was posted to: PharmPKDear PharmPK members, I know I'm bringing up old stuff here and  not ofvery high scientific interest but if someone could give me a hand or atleast give me some hints,  it would be greatly appreciated.Here's the question: How in Winnonlin can you specify multiple dosingin a user model based on a system of differential equations (NOT theanalytical solution).I know I could do this quickly using the integrated algebraic functionsbut the model I'm working on right now is reasonably complex. I didsymbolic integration in a math software and the resulting expressionstake several pages.  The expressions were slimer using numericalintegration of course but then I figured I'd lose some control overparameter modification for simulation purposes (right ?).So in the end, I thought that getting the trick for performingmultiple-dosing in WNL using differentials would be simpler than tointegrate every time I change the value of a micro-constant.Many thanks in advance.Pierre-Olivier :o)P.S. I did browse through the PharmPK archive and got a few hits but Ihad trouble interpreting the the answers.`
Back to the Top

• On 25 Mar 2005 at 13:37:10, "Walt Woltosz" (walt.at.simulations-plus.com) sent the message
`The following message was posted to: PharmPKDear Pierre-Oliver,You might want to consider using GastroPlus for your simulations.The type of analysis you describe is quite straightforward with it. Youcan even easily simulate, and fit models to, mixed multiple doses if youwish (e.g., mixtures of iv bolus, iv infusion, immediate release, andcontrolled release doses given at various times). Any combination ofpharmacokinetic and pharmacodynamic model parameters can be fittedacross single or multiple observation sets. Saturable metabolism andtransport can also be include if needed. Simple 1-, 2-, or 3-compartmentPK can be used, or complete PBPK models if you prefer.An interactive web demonstration and a short trial period can bearranged if you are interested.Best regards,Walt WoltoszChairman & CEOSimulations Plus, Inc. (AMEX: SLP)1220 W. Avenue JLancaster, CA  93534-2902U.S.A.http://www.simulations-plus.comPhone: (661) 723-7723FAX:   (661) 723-5524E-mail: walt.at.simulations-plus.com`
Back to the Top

• On 29 Mar 2005 at 11:16:00, "Mark Lovern" (mlovern.-at-.Pharsight.com) sent the message
`Dear Pierre,Code for implementing multiple dosing for a differential equation modelin WinNonlin will vary depending upon the type of input (ie 1st-orderabsorption, IV infusion etc.)  Also, even for a particular model, thereare a variety of ways to implement the dosing code.  For example,perhaps, the most conceptually straightforward approach for a 1st-orderoral absorption model is to write code that simply 'dumps' drug intothe gut compartment at each dosing time.  However, this approach doeshave the limitation that the exact times for each dose must be embeddedin your data file. An alternative approach for the same model would beto model the amount of drug in the gut (Ag) as a superposition ofexponential terms, then incorporate the term for Ag into thedifferential equation for the central compartment.  For your reference,please find below annotated code for implementing each approach for a1-compartment model.EXAMPLE I: CODE FOR A FULL DIFFERENTIAL EQUATION MODELModel 1remark   ******************************************************remark   Developer:remark   Model Date:     29-Mar-2005remark   Model Version:  1.0remark   ******************************************************remarkremark - define model-specific commandsremark   1-Compartment Model with 1st-order extravascular absorptionremark   no.    parameter                       constantremark   ---    ---------                     ------------remark    1        Ka                         # of Dosesremark    2        CL                         Dose #1remark    3        V1                    Time of Dose #1, etc.remark   **Warning!**Warning!**Warning!**Warning!**Warning!**Warning!remark   ** In order for this model to work, you must have time    **remark   ** points in your data set that correspond to each dose   **remark   ** administration time and each dump time from the bile.  **remark   **Warning!**Warning!**Warning!**Warning!**Warning!**Warning!remark - define differential equations starting valuesCOMMANDSNFUNCTIONS 1NDERIVATIVES 2NPARAMETERS 3PNAMES  'Ka', 'CL', 'V1'ENDremark - define temporary variablesTEMPORARYT=XNDOSE = CON(1)DOSE1 = CON(2)ENDSTARTZ(1) = DOSE1Z(2) = 0ENDremark - define differential equationsDIFFERENTIALremark The next block of code handles the multiple dosing.J=3remark Count up the number of doses administered by time = T.remark NDOSE is the total number of Doses given to each subject.DO I = 1 to NDOSE-1remark The next conditional compares the current value of theremark integration time index with the administration timeremark of the ith dose.remark Note: The 3rd cell in the dosing grid contains the adminremark       time for the 1st dose. After that, dose times will beremark       in every second cell. Thus, CON(J) willremark       contain the dose time for the Jth dose.remark If the administration time for the Jth dose is < theremark current value of the integration time index thenremark J (# administered doses) is incremented andremark the DO Loop is iterated another time.remark Otherwise control "skips" to the block ofremark code labelled "RED:"IF T > CON(J) THEN   J = J+2ELSEGOTO REDENDIFNEXTremark The next block of code checks to see if the (very)last dose hasremark already been administered.  If so, then the time and amount ofremark the last dose are saved into the variables LASTDOSE andremark TLSTDOSE.IF INT(((J-1)/2)+.001) = NDOSE AND T > CON(J) THEN    LASTDOSE = CON(J-1)    TLSTDOSE = CON(J)    GOTO GREENENDIFRED:remark The following conditional ensures that the dose at Timeremark zero is not counted twice.IF J > 3 THENremark The next conditional checks to see if the integrationremark time index is exactly equal to the Jth dosing time. Ifremark so, then the dose is "dumped" into the absorptionremark compartment. LASTDOSE is the amount of the last administeredremark dose, TLSTDOSE is the administration time of the last dose.IF T = CON(J) THEN      LASTDOSE = CON(J-1)      TLSTDOSE = CON(J)        Z(1) = Z(1)+LASTDOSEELSE      LASTDOSE = CON(J-3)      TLSTDOSE = CON(J-2)ENDIFELSELASTDOSE = DOSE1TLSTDOSE = 0ENDIFGREEN:DZ(1) = -Z(1)*KaDZ(2) = (Z(1)*Ka - Z(2)*CL)/V1ENDremark - define algebraic functionsFUNCTION 1F= Z(2)ENDremark - define any secondary parametersremark - end of modelEOMEXAMPLE 2: CODE FOR A MIXED-SPECIFICATION MODELModel 1remark  one compartment model - first order input and outputremarema   no.    parameter      constant       secondary parm.rema   ---    ---------      --------       ---------------rema   1        v_f          # doses            k10rema   2        ka           dose 1             aucrema   3        k10           time, etc      ka half liferema   4                                    k10 half liferema   5                                        tmaxrema   6                                        cmaxrema*************************************************************rema            i--------------------irema            i                    irema   ka  --> i   compartment  1   i  ---> k10rema            i                    irema            i--------------------irema*************************************************************commnder 1nparm 3nsec 6pnames 'v_f', 'ka', 'CL_f'snames 'k10','auc', 'ka_hl', 'k10_hl', 'tmax', 'cmax'endSTART  Z(1) = 0ENDDIFFj=1ndose=con(1)rema  Count up the number of doses administered up to time xdo i = 1 to ndosej=j+2if x <= con(j) then goto redendifnextred:ndose = i-1rema  Perform superpositionremark Agut is the total amount of drug in the gutAgut=0j=1do i = 1 to ndosej=j+2t=x - con(j)d=con(j-1)remark A_ds_i is the amount of drug in the gut associatedremark with the ith doseA_ds_i=d*dexp(-ka*t)Agut=Agut+ A_ds_inextDZ(1) = (ka*Agut-CL_F*Z(1))/V_FENDfunc1f=Z(1)endsecok10=CL_F/V_Fd=con(2)auc=d/v_F/k10ka_hl=-dlog(.5)/kak10_hl=-dlog(.5)/k10tmax=(dlog(ka/k10)/(ka-k10))cmax=(d/v_f)*exp(-k10*tmax)endEOMOf course, code for implementing infusion dosing or zero-orderabsorption processes will differ slightly from the attached examples.So, if you are faced with either of these cases, and are having troubleplease let me know.I hope this information proves helpful.  If there is any way that I maybe of further assistance, please let me know.With Best Regards,MarkMark R. Lovern, Ph. D.Director, Marketing ServicesPharsight CorporationPhone: (919) 852-4607Mobile (919) 622-2296FAX: (919) 859-68715520 Dillard Drive, Suite 210Cary, NC 27511`
Back to the Top

• On 1 Apr 2005 at 08:48:53, "Walt Woltosz" (walt.-a-.simulations-plus.com) sent the message
`The following message was posted to: PharmPK[David - welcome back. Up for a little humor today?]By comparison, you could use GastroPlus and do the following:Enter the properties of your compound:	MWt	Solubility at a reference pH	pKa(s)	logP or logD at a reference pH	effective permeability (usually estimated from in vitro, or canbe fitted)Enter the PK parameters (CL, Vd, multi-compartment distribution rateconstants if you have them)Create a simple text file for multiple dosing that gives the time,amount, and dosage form (tablet, iv bolus, iv infusion, tablet, capsule,suspension, etc.) for each dose. If you like, you can also changephysiological models at any time by putting the name of the ACAT modelat the end of each line (e.g., fasted, fed) if you want to simulate suchchanges. A sample file might look like this:			'Dosage Form	Amount 	Start TimeEnd Time 	Physiology			IV: Bolus		10		0Human Fasted			IV: Infusion		20		28		Human Fasted			IR: Tablet		20		12Human Fed			IR: Tablet		0		14Human FastedAnd so on. The last line has no dose, but is used to switch back tofasted state.**Warning!**Warning!**Warning!**Warning!**Warning!**Warning!The next step is essential.**Warning!**Warning!**Warning!**Warning!**Warning!**Warning!Click Start to run the simulation.: )Walt WoltoszChairman & CEOSimulations Plus, Inc. (AMEX: SLP)1220 W. Avenue JLancaster, CA  93534-2902U.S.A.http://www.simulations-plus.comPhone: (661) 723-7723FAX:   (661) 723-5524E-mail: walt.-at-.simulations-plus.com`
Back to the Top

• On 2 Apr 2005 at 17:07:20, "Yung-jin Lee" (yjlee168.at.kmu.edu.tw) sent the message
`The following message was posted to: PharmPKHi,    I think that Boomer (http://www.boomer.org/) is a very good choiceto pick up, espcially if you like to use differential eqs. todefine your models with multiple dosing.  It's not very difficultto learn how to use Boomer.  And it is free.Best regards,Yung-jin Lee, Ph.D.Associate Professor & Deputy Head ofGraduate Institute of Clinical Pharmacy,College of Pharmacy,Kaohsiung Medical University,Kaohsiung, TAIWAN 807Phone: (07)312-1101 ext. 2262   Fax: (07)313-6316http://clinpharm.kmu.edu.tw/`
Back to the Top

Want to post a follow-up message on this topic? If this link does not work with your browser send a follow-up message to PharmPK@boomer.org with "Multiple dosing in WNL" as the subject

Copyright 1995-2010 David W. A. Bourne (david@boomer.org)