PK model code

Dear all,

I’m trying to reproduce the literature(Mechanistically modeling peripheral cytokine dynamics following bispecific dosing in solid tumors

DOI: 10.1002/psp4.12928) using NLME, but I’m always failing. Is there a problem with my code?

My model code is as follows.I removed peripheral cytokine dynamics.The literature code is attached.

Thank you

test(){

dosepoint(A1)
#deriv(A1 = -(QCentralTebentafusp) + (QPeripheralTebentafusp) - (CLCentralTebentafusp) - ((kin_skinCentralTebentafusp-kout_skinSkinTebentafusp)Central) - ((kin_tumorCentralTebentafusp-kout_tumorTumorTebentafusp)Central))
deriv(A1 = -(Q
CentralTebentafusp) + (QPeripheralTebentafusp) - (CLCentralTebentafusp) - ((kin_skinCentralTebentafusp)Central-(kout_skinSkinTebentafusp)Skin) - ((kin_tumorCentralTebentafusp)Central-(kout_tumorTumorTebentafusp)Tumor))
CentralTebentafusp=A1/Central
#d(Central.Tebentafusp)/dt = -(Q
Central.Tebentafusp) + (Q
Peripheral.Tebentafusp) -
#(CLCentral.Tebentafusp) - ((kin_skinCentral.Tebentafusp-kout_skinSkin.Tebentafusp)Central) - ((kin_tumorCentral.Tebentafusp-kout_tumorTumor.Tebentafusp)Central)
deriv(A2 = ((Q
CentralTebentafusp) - (QPeripheralTebentafusp)))
PeripheralTebentafusp=A2/Peripheral
#d(PeripheralTebentafusp)/dt = 1/Peripheral
((QCentralTebentafusp) - (QPeripheralTebentafusp))
deriv(A3 =(-((kon_CD3TumorCD3TumorTebentafusp-koff_CD3TumorCD3Tebentafusp)) -
((kon_gp100
Tumorgp100TumorTebentafusp-koff_gp100Tumorgp100Tebentafusp))

  • ((kin_tumorCentralTebentafusp-kout_tumorTumorTebentafusp))))
    TumorTebentafusp=A3
    #d(TumorTebentafusp)/dt = 1/Tumor*(-((kon_CD3TumorCD3TumorTebentafusp-
    #koff_CD3TumorCD3Tebentafusp)Tumor) - ((kon_gp100Tumorgp100TumorTebentafusp-koff_gp100Tumorgp100Tebentafusp)Tumor) + ((kin_tumorCentralTebentafusp-kout_tumorTumorTebentafusp)Central))
    deriv(A4 =(-((kon_CD3
    TumorCD3TumorTebentafusp-koff_CD3TumorCD3Tebentafusp))
  • ((kon_CD3Tumorgp100TebentafuspTumorCD3-koff_CD3TumorTrimer))))
    TumorCD3=A4
    #d(TumorCD3)/dt = 1/Tumor
    (-((kon_CD3TumorCD3TumorTebentafusp-
    #koff_CD3TumorCD3Tebentafusp)Tumor) - ((kon_CD3Tumorgp100TebentafuspTumorCD3-koff_CD3TumorTrimer)Tumor))
    deriv(A5 =(((kon_CD3
    TumorCD3
    TumorTebentafusp-koff_CD3*TumorCD3Tebentafusp))
  • ((kon_gp100TumorCD3TebentafuspTumorgp100-koff_gp100TumorTrimer))))
    TumorCD3Tebentafusp=A5
    #d(TumorCD3Tebentafusp)/dt = 1/Tumor
    (((kon_CD3TumorCD3TumorTebentafusp-
    #koff_CD3TumorCD3Tebentafusp)Tumor) - ((kon_gp100TumorCD3TebentafuspTumorgp100-koff_gp100TumorTrimer)Tumor))
    deriv(A6 =(-((kon_gp100
    Tumorgp100
    TumorTebentafusp-koff_gp100Tumorgp100Tebentafusp)) - ((kon_gp100TumorCD3TebentafuspTumorgp100-koff_gp100TumorTrimer))))
    Tumorgp100=A6
    #d(Tumorgp100)/dt = 1/Tumor*(-((kon_gp100Tumorgp100TumorTebentafusp-
    #koff_gp100Tumorgp100Tebentafusp)Tumor) - ((kon_gp100TumorCD3TebentafuspTumorgp100-koff_gp100TumorTrimer)Tumor))
    deriv(A7 =(((kon_gp100
    Tumorgp100
    TumorTebentafusp-koff_gp100*Tumorgp100Tebentafusp))
  • ((kon_CD3Tumorgp100TebentafuspTumorCD3-koff_CD3TumorTrimer))))
    Tumorgp100Tebentafusp=A7
    #d(Tumorgp100Tebentafusp)/dt = 1/Tumor
    (((kon_gp100Tumorgp100TumorTebentafusp-
    #koff_gp100Tumorgp100Tebentafusp)Tumor) - ((kon_CD3Tumorgp100TebentafuspTumorCD3-koff_CD3TumorTrimer)Tumor))
    deriv(A8 = (((kon_gp100
    TumorCD3Tebentafusp
    Tumorgp100-koff_gp100TumorTrimer)) + ((kon_CD3Tumorgp100TebentafuspTumorCD3-koff_CD3TumorTrimer))))
    TumorTrimer=A8
    #d(TumorTrimer)/dt = 1/Tumor*(((kon_gp100TumorCD3TebentafuspTumorgp100-
    #koff_gp100TumorTrimer)Tumor) + ((kon_CD3Tumorgp100TebentafuspTumorCD3-koff_CD3TumorTrimer)Tumor))
    deriv(A9 = (-((kon_CD3
    SkinCD3
    SkinTebentafusp-koff_CD3*SkinCD3Tebentafusp))
  • ((kon_gp100Skingp100SkinTebentafusp-koff_gp100Skingp100Tebentafusp)) + ((kin_skinCentralTebentafusp-kout_skinSkinTebentafusp))))
    SkinTebentafusp=A9
    #d(SkinTebentafusp)/dt = 1/Skin
    (-((kon_CD3SkinCD3SkinTebentafusp-
    #koff_CD3SkinCD3Tebentafusp)Skin) - ((kon_gp100Skingp100SkinTebentafusp-koff_gp100Skingp100Tebentafusp)Skin) + ((kin_skinCentralTebentafusp-kout_skinSkinTebentafusp)Central))
    deriv(A10 = (-((kon_CD3
    SkinCD3SkinTebentafusp-koff_CD3SkinCD3Tebentafusp))
  • ((kon_CD3Skingp100TebentafuspSkinCD3-koff_CD3SkinTrimer))))
    SkinCD3=A10
    #d(SkinCD3)/dt = 1/Skin
    (-((kon_CD3SkinCD3SkinTebentafusp-
    #koff_CD3SkinCD3Tebentafusp)Skin) - ((kon_CD3Skingp100TebentafuspSkinCD3-koff_CD3SkinTrimer)Skin))
    deriv(A11 =(((kon_CD3
    SkinCD3
    SkinTebentafusp-koff_CD3*SkinCD3Tebentafusp))
  • ((kon_gp100SkinCD3TebentafuspSkingp100-koff_gp100SkinTrimer))))
    SkinCD3Tebentafusp=A11
    #d(SkinCD3Tebentafusp)/dt = 1/Skin
    (((kon_CD3SkinCD3SkinTebentafusp-
    #koff_CD3SkinCD3Tebentafusp)Skin) - ((kon_gp100SkinCD3TebentafuspSkingp100-koff_gp100SkinTrimer)Skin))
    deriv(A12 = (-((kon_gp100
    Skingp100
    SkinTebentafusp-koff_gp100Skingp100Tebentafusp)) - ((kon_gp100SkinCD3TebentafuspSkingp100-koff_gp100SkinTrimer))))
    Skingp100=A12
    #d(Skingp100)/dt = 1/Skin*(-((kon_gp100Skingp100SkinTebentafusp-
    #koff_gp100Skingp100Tebentafusp)Skin) - ((kon_gp100SkinCD3TebentafuspSkingp100-koff_gp100SkinTrimer)Skin))
    deriv(A13 = (((kon_gp100
    Skingp100
    SkinTebentafusp-koff_gp100Skingp100Tebentafusp)) - ((kon_CD3Skingp100TebentafuspSkinCD3-koff_CD3SkinTrimer))))
    Skingp100Tebentafusp=A13
    #d(Skingp100Tebentafusp)/dt = 1/Skin*(((kon_gp100Skingp100SkinTebentafusp-
    #koff_gp100Skingp100Tebentafusp)Skin) - ((kon_CD3Skingp100TebentafuspSkinCD3-koff_CD3SkinTrimer)Skin))
    deriv(A14 = (((kon_gp100
    SkinCD3Tebentafusp
    Skingp100-
    koff_gp100SkinTrimer)) + ((kon_CD3Skingp100TebentafuspSkinCD3-koff_CD3SkinTrimer))))
    SkinTrimer=A14
    #d(SkinTrimer)/dt = 1/Skin*(((kon_gp100SkinCD3TebentafuspSkingp100-
    #koff_gp100SkinTrimer)Skin) + ((kon_CD3Skingp100TebentafuspSkinCD3-koff_CD3*SkinTrimer)*Skin))

#dosepoint(A1, idosevar = A1Dose, infdosevar = A1InfDose, infratevar = A1InfRate)
error(CEps = 0.018)
observe(CObs = CentralTebentafusp * (1 + CEps))
#Initial Assignments
sequence{
TumorCD3 = Tumor_BL_TcellCD3_per_cell/(AvogadroTumor)

Tumorgp100 = Tumor_BL_Tumorcellgp100_per_cell/(AvogadroTumor)

SkinCD3 = Skin_BL_TcellCD3_per_cell/(AvogadroSkin)

Skingp100 = Skin_BL_Melanocytegp100_per_cellSkin_gp100_ratio/(Avogadro*Skin)

}
fixef(Central(freeze) = c(,5.25,))
fixef(Peripheral(freeze) = c(,470,))
fixef(Tumor(freeze) = c(,0.0007,))
fixef(Skin(freeze) = c(,0.26,))
fixef(CL(freeze) = c(,4.33/24,))
fixef(Q(freeze) = c(,11.4/24,))
fixef(kin_tumor(freeze) = c(,3.73,))
fixef(kin_skin(freeze) = c(,1.06,))
fixef(kon_CD3(freeze) = c(,0.02610^9,))
fixef(koff_CD3(freeze) = c(,1,))
fixef(kon_gp100(freeze) = c(,42
10^9,))
fixef(koff_gp100(freeze) = c(,1,))
fixef(CD3_per_cell(freeze) = c(,100000,))
fixef(gp100_per_cell(freeze) = c(,100000,))
fixef(Skin_gp100_ratio(freeze) = c(,0.01,))
fixef(Tumor_BL_Tcell(freeze) = c(,700000,))
fixef(Tumor_BL_Tumorcell(freeze) = c(,1.210^8,))
fixef(Skin_BL_Tcell(freeze) = c(,2
10^9,))
fixef(Skin_BL_Melanocyte(freeze) = c(,1.710^9,))
fixef(Immune_cell_ratio_to_Tcell(freeze) = c(,2,))
fixef(kout_tumor(freeze) = c(,10,))
fixef(kout_skin(freeze) = c(,10,))
fixef(Avogadro(freeze) = c(,6.02
10^23,))
fixef(molarity(freeze) = c(,1,))
}