Files
Model file: 1cpt.model.R
## Description ####
# 1-compartment model with 1st-order absorption rate and
# linear elimination
#
# Date: 06-02-2019
#
# Units:
# - time in hr
# - volumes in L
# - masses of substances in mg
# - concentrations of substances in mg/L
## States ####
States = {
A_gut, # Amount in the gut (mg)
A_central, # Amount in central compartment (mg)
A_elim, # Amount elimination (mg)
}
## Outputs ####
Outputs = {
BW, # Body weight (kg)
C_central, # Concentration in central compartment (mg/L)
A_total, # Total quantity for mass balance (Cumulative intake dose)
}
## Inputs ####
Inputs = { Dose } # Oral dose (mg)
## Parameters ####
# Dosing
Dose = 1.0; # Oral dose (mg/kg)
TChng = 0.05; # Infusion duration (hr)
# Chemical-specific parameters
Ka = 0.1; # Gut absorption rate constant (1/h)
Ke = 0.1; # Elimination rate constant (1/h)
Pct_M_central = 0.05; # % body weight
## Dynamics ####
Dynamics {
t1 = t / 24.0; # time in day
# Body weight (kg)
BW = (t1 < 1 ? 60 :
(t1 < 2 ? 61 :
(t1 < 3 ? 62 :
(t1 < 4 ? 63 :
(t1 < 5 ? 64 :
65)))));
V_central = BW * Pct_M_central;
# Infusion rate (/h)
kDose = Dose / TChng;
# Rate of amount change in the gut (mg/h)
dt (A_gut) = kDose - Ka * A_gut;
dt (A_elim) = Ke * A_central;
dt (A_central) = Ka * A_gut - dt(A_elim);
C_central = A_central / V_central;
}
## CalcOutputs ####
CalcOutputs {
BW = BW;
C_central = C_central;
A_total = A_gut + A_central + A_elim;
}
End.
Input file: 1cpt.in.R
# ./mcsim.1cpt.model.R.exe 1cpt.in.R
Ka = 1.9;
Pct_M_central = 1;
Simulation { # Intake 1, 2, 3, 4, 5 mg at 1, 2,3, 4, 5 day
Dose = NDoses(10, 1, 0, 2, 0, 3, 0, 4, 0, 5, 0,
0, 0.05, 24, 24.05, 48, 48.05, 72, 72.05, 96, 96.05 );
#BW = 60;
PrintStep (BW, Dose, A_central, A_elim, A_total, C_central, 0, 120, 24);
}
End.
Modeling
y <- mcsim("1cpt.model.R","1cpt.in.R")
Execute: ./mcsim.1cpt.model.R.exe modeling/1cpt.in.R
________________________________________
MCSim v6.1.0
Copyright (c) 1993-2019 Free Software Foundation, Inc.
MCSim comes with ABSOLUTELY NO WARRANTY;
This is free software, and you are welcome to redistribute it
under certain conditions; see the GNU General Public License.
* Using `modeling/1cpt.model.R' model in file "1cpt.model.R.c" created by ./MCSim/mod.exe v6.1.0
Reading experiment 1.
Doing analysis - 1 normal experiment
1
Wrote output file "sim.out"
Done.
y
Estimated body burden
Body_burden <- y$Dose / y$BW
Body_burden
[1] 0.01666667 0.03278689 0.04838710 0.06349206 0.07812500 0.00000000
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCmVkaXRvcl9vcHRpb25zOiAKICBjaHVua19vdXRwdXRfdHlwZTogaW5saW5lCi0tLQoKIyMgRmlsZXMKCk1vZGVsIGZpbGU6IDFjcHQubW9kZWwuUgoKYGBgcgojIyBEZXNjcmlwdGlvbiAjIyMjCiMgMS1jb21wYXJ0bWVudCBtb2RlbCB3aXRoIDFzdC1vcmRlciBhYnNvcnB0aW9uIHJhdGUgYW5kIAojIGxpbmVhciBlbGltaW5hdGlvbiAKIwojIERhdGU6IDA2LTAyLTIwMTkKIyAKIyBVbml0czogCiMgLSB0aW1lIGluIGhyCiMgLSB2b2x1bWVzIGluIEwKIyAtIG1hc3NlcyBvZiBzdWJzdGFuY2VzIGluIG1nCiMgLSBjb25jZW50cmF0aW9ucyBvZiBzdWJzdGFuY2VzIGluIG1nL0wKCiMjIFN0YXRlcyAjIyMjClN0YXRlcyA9IHsgCiAgQV9ndXQsICAgICAgIyBBbW91bnQgaW4gdGhlIGd1dCAobWcpCiAgQV9jZW50cmFsLCAgIyBBbW91bnQgaW4gY2VudHJhbCBjb21wYXJ0bWVudCAobWcpCiAgQV9lbGltLCAgICAgIyBBbW91bnQgZWxpbWluYXRpb24gKG1nKQogIH0gICAgIAoKIyMgT3V0cHV0cyAjIyMjCk91dHB1dHMgPSB7CiAgQlcsICAgICAgICAgIyBCb2R5IHdlaWdodCAoa2cpCiAgQ19jZW50cmFsLCAgIyBDb25jZW50cmF0aW9uIGluIGNlbnRyYWwgY29tcGFydG1lbnQgKG1nL0wpCiAgQV90b3RhbCwgICAgIyBUb3RhbCBxdWFudGl0eSBmb3IgbWFzcyBiYWxhbmNlIChDdW11bGF0aXZlIGludGFrZSBkb3NlKQogIH0gICAgCgojIyBJbnB1dHMgIyMjIwpJbnB1dHMgPSB7IERvc2UgfSAjIE9yYWwgZG9zZSAobWcpIAoKIyMgUGFyYW1ldGVycyAjIyMjCgojIERvc2luZwpEb3NlID0gMS4wOyAgICMgT3JhbCBkb3NlIChtZy9rZykKVENobmcgPSAwLjA1OwkjIEluZnVzaW9uIGR1cmF0aW9uIChocikKCiMgQ2hlbWljYWwtc3BlY2lmaWMgcGFyYW1ldGVycwpLYSA9IDAuMTsgICAgICAgICAgICAgIyBHdXQgYWJzb3JwdGlvbiByYXRlIGNvbnN0YW50ICgxL2gpCktlID0gMC4xOyAgICAgICAgICAgICAjIEVsaW1pbmF0aW9uIHJhdGUgY29uc3RhbnQgKDEvaCkKUGN0X01fY2VudHJhbCA9IDAuMDU7ICMgJSBib2R5IHdlaWdodAoKIyMgRHluYW1pY3MgIyMjIwpEeW5hbWljcyB7CiAgCiAgdDEgPSB0IC8gMjQuMDsgIyB0aW1lIGluIGRheQogIAogICMgQm9keSB3ZWlnaHQgKGtnKSAKICBCVyA9ICh0MSA8IDEgPyA2MCA6IAogICAgICAgICAgKHQxIDwgMiA/IDYxIDoKICAgICAgICAgICAgICh0MSA8IDMgPyA2MiA6CiAgICAgICAgICAgICAgICAodDEgPCA0ID8gNjMgOgogICAgICAgICAgICAgICAgICAgKHQxIDwgNSA/IDY0IDoKICAgICAgICAgICAgICAgICAgICAgIDY1KSkpKSk7CiAgCiAgVl9jZW50cmFsID0gQlcgKiBQY3RfTV9jZW50cmFsOyAKICAKICAjIEluZnVzaW9uIHJhdGUgKC9oKQogIGtEb3NlID0gRG9zZSAvIFRDaG5nOyAKICAKICAjIFJhdGUgb2YgYW1vdW50IGNoYW5nZSBpbiB0aGUgZ3V0IChtZy9oKQogIGR0IChBX2d1dCkgPSBrRG9zZSAtIEthICogQV9ndXQ7CiAgZHQgKEFfZWxpbSkgPSBLZSAqIEFfY2VudHJhbDsKICBkdCAoQV9jZW50cmFsKSA9IEthICogQV9ndXQgLSBkdChBX2VsaW0pOwogIAogIENfY2VudHJhbCA9IEFfY2VudHJhbCAvIFZfY2VudHJhbDsKfQoKIyMgQ2FsY091dHB1dHMgIyMjIwpDYWxjT3V0cHV0cyB7IAogIEJXID0gQlc7CiAgQ19jZW50cmFsID0gQ19jZW50cmFsOwogIEFfdG90YWwgPSBBX2d1dCArIEFfY2VudHJhbCArIEFfZWxpbTsKfQoKRW5kLgoKYGBgCgpJbnB1dCBmaWxlOiAxY3B0LmluLlIKCmBgYHIKIyAuL21jc2ltLjFjcHQubW9kZWwuUi5leGUgMWNwdC5pbi5SCkthICAgICAgPSAxLjk7ICAKUGN0X01fY2VudHJhbCA9IDE7CgpTaW11bGF0aW9uIHsgIyBJbnRha2UgMSwgMiwgMywgNCwgNSBtZyBhdCAxLCAyLDMsIDQsIDUgZGF5IAogIERvc2UgPSBORG9zZXMoMTAsIDEsIDAsIDIsIDAsIDMsIDAsIDQsIDAsIDUsIDAsIAogICAgICAgICAgICAgICAgMCwgMC4wNSwgMjQsIDI0LjA1LCA0OCwgNDguMDUsIDcyLCA3Mi4wNSwgOTYsCTk2LjA1ICk7IAogICNCVyA9IDYwOwogIFByaW50U3RlcCAoQlcsIERvc2UsIEFfY2VudHJhbCwgQV9lbGltLCBBX3RvdGFsLCBDX2NlbnRyYWwsIDAsIDEyMCwgMjQpOwp9CgpFbmQuCmBgYAoKIyMgTW9kZWxpbmcKCmBgYHtyfQp5IDwtIG1jc2ltKCIxY3B0Lm1vZGVsLlIiLCIxY3B0LmluLlIiKQpgYGAKCmBgYHtyfQp5CmBgYAoKIyMgRXN0aW1hdGVkIGJvZHkgYnVyZGVuCgpgYGB7cn0KQm9keV9idXJkZW4gPC0geSREb3NlIC8geSRCVwpCb2R5X2J1cmRlbgpgYGAKCgo=