Jump to content


Photo

Fit mulple dose data using Model defined in ASCII Format


  • Please log in to reply
3 replies to this topic

#1 Barry Koplowitz

Barry Koplowitz

    Newbie

  • Members
  • Pip
  • 3 posts

Posted 07 August 2015 - 05:13 PM

Does anyone have any suggestions on how to program a model for fitting multiple doses (infusion) defined using the ASCII Format option (WinNonlin Phoenix 6.4)

 

Thanks,

Barry


Edited by Barry Koplowitz, 07 August 2015 - 05:54 PM.


#2 Simon Davis

Simon Davis

    Advanced Member

  • Administrators
  • 1,318 posts

Posted 07 August 2015 - 09:30 PM

Barry, the ASCII model code is essentially obsolete, if you have to write any new model code I would highly recommend that you use the Phoenix model engine since supporting multiple dosing is implicit and no extra code needs to be written.

 

Also if you can't build your model from the drop down options in the first tab you have access to both graphical and textual editor modes.  (Note there are quite a few existing models already on here if you search).

 

 Simon.



#3 Barry Koplowitz

Barry Koplowitz

    Newbie

  • Members
  • Pip
  • 3 posts

Posted 10 August 2015 - 06:42 PM

Hi Simon,

Thanks for getting back to me, I needed to fit a multiple-dose infusion (constant:  dose, infusion rate and dosing interval) and successfully used the code below (in case someone should find it of use). The nonabsorption parameters are meant for illustrative purposes only. Unfortunately, I have found using the Phoenix model engine to fit simple nonlinear regression a bit troublesome.

 

Code template--------------------------------------------------------------

IF (x LE CON(4))Then

                                                                IF (((x/CON(3)) - INT(x/CON(3)) )*CON(3) LE CON(1)) THEN

                                                                                dz(1)=(CON(2)/CON(1)) - (K12 + K10) * z(1) + K21 * z(2)

                                                                ELSE

                                                                                dz(1)=-(K12 + K10) * z(1) + K21 * z(2)

                                                                ENDIF

ELSE

                                dz(1)=-(K12 + K10) * z(1) + K21 * z(2)

ENDIF

--------------------------------------------------------------------------------------------------

 

where:

CON(1)  is Infusion time

CON(2) is the infused dose

CON(3) is the dosing interval

CON(4) is time of last dose + dosing interval

 

 

Basically the outer IF statement turns off the infusion past the last dose. The inner IF statement  turns the infusion input on/off. The key part is the use of: Integer(Time/Dosing interval) *Dosing interval compared to (Time/Dosing interval)*Dosing interval


Edited by Barry Koplowitz, 10 August 2015 - 07:12 PM.


#4 Simon Davis

Simon Davis

    Advanced Member

  • Administrators
  • 1,318 posts

Posted 10 August 2015 - 07:56 PM

Thanks for posting the ASCII code for others however I'm still a bit puzzled about the problems you're reporting with the Phoenix model engine; it should in most case be the more powerful tool, certainly more flexible so if you have a problem that you think does not work well I'd be interested to see it.  Either as a test case or if possible to provide you and others some usage tips.

 

 Simon






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users