Dear nmusers:
Recently I am trying to build a cell-cycle based tumor growth model, i.e.
tumor size = G1+ S + G2 + M. Meanwhile, I have quite a few simultaneous
biomarkers to characterize the cycle behaviors. Those biomarkers could be
calculated based on the population of G1, S, G2, and M. I have the
following puzzles needed to be addressed:
1) In my data file, what is the CMT number I should give to those
observations (such as tumor size and many biomarkers)? By the way, I need
CMT to specify/initialize the corresponding compartment. Since I am not
quite sure how to use L2 and PCMT, I tried many times, all failed except the
following foolish way:
I create one more compartment to hold the tumor size:
DADT(iTUMROR) = DADT(iG1) + DADT(iS) + DADT(iG2) + DADT(iM)
and in my data file, I put the CMT compartment created (iTUMOR) into the
observation of tumor size.
However, for all other biomarkers, there is no way to write this kind of
DADT equations. How could I solve this in a smart way?
2) Since some biomarker data are collected based on certain time point,
saying t0. In other words, they are relative fold-changes compared to the
vehicle at t0. Therefore, I need to save the intermediate population of G1,
S, G2 and M at t0, as constants, which will be used to scale the later-on
populations so that the model predictions are comparable with the
observations.
However, in the both block $DES and $ERROR, there is no way to save these
intermediate populations as global variables or constants. I guess, I have
to use MSFO to separate the simulation to many sections? But it am not
sure how to do it.
Your thoughts and feedback are really appreciated! Thanks a lot!
Feng
Build a cell-cycle based tumor growth model
4 messages
4 people
Latest: Jul 17, 2008
Dear Feng, a smart way could be to (actually) write down equations for the
other biomarkers.
The simplest way to do this is is to assume that when cells have evolved in
a given phase (say G1) for a particular duration, they move to the following
one (S). By doing such, you may also solve your second issue setting initial
conditions to all your derivative equations.
Best regards,
Benjamin
o set a phase duration and to write that when cells in G1 stayed for the
entire duration, they move to D, and so on...
Il 17-07-2008 10:49, "Feng Yang" <[EMAIL PROTECTED]> ha scritto:
> Dear nmusers:
> Recently I am trying to build a cell-cycle based tumor growth model, i.e.
> tumor size = G1+ S + G2 + M. Meanwhile, I have quite a few simultaneous
> biomarkers to characterize the cycle behaviors. Those biomarkers could be
> calculated based on the population of G1, S, G2, and M. I have the following
> puzzles needed to be addressed:
>
> 1) In my data file, what is the CMT number I should give to those
> observations (such as tumor size and many biomarkers)? By the way, I need CMT
> to specify/initialize the corresponding compartment. Since I am not quite
> sure how to use L2 and PCMT, I tried many times, all failed except the
> following foolish way:
> I create one more compartment to hold the tumor size:
> DADT(iTUMROR) = DADT(iG1) + DADT(iS) + DADT(iG2) + DADT(iM)
> and in my data file, I put the CMT compartment created (iTUMOR) into the
> observation of tumor size.
>
> However, for all other biomarkers, there is no way to write this kind of DADT
> equations. How could I solve this in a smart way?
>
> 2) Since some biomarker data are collected based on certain time point, saying
> t0. In other words, they are relative fold-changes compared to the vehicle at
> t0. Therefore, I need to save the intermediate population of G1, S, G2 and M
> at t0, as constants, which will be used to scale the later-on populations so
> that the model predictions are comparable with the observations.
>
> However, in the both block $DES and $ERROR, there is no way to save these
> intermediate populations as global variables or constants. I guess, I have
> to use MSFO to separate the simulation to many sections? But it am not sure
> how to do it.
>
> Your thoughts and feedback are really appreciated! Thanks a lot!
>
> Feng
>
>
>
Feng,
There is no need to worry about compartment numbers to match your observations. The CMT data item is only needed when you have to identify a compartment for an AMT. With NONMEM VI it is no longer necessary to use CMT and AMT to initialize compartments. If you are still using NONMEM V it is time you updated your system.
I use my own named data item called DVID to identify different types of observations e.g.
$INPUT ID TIME DVID DV L2
where DVID could range from 1 to 4 to define the 4 different observations. You could use it in $ERROR like this.
IF (DVID.EQ.1) THEN
Y=A(1)+EPS(1)
ENDIF
...
IF (DVID.EQ.4) THEN
Y=A(4)+EPS(4)
ENDIF
I am not really sure how to reply to your other questions because I dont know which things you are measuring. Do you have observations of G1, S, G2 and M? Do you also have a measurement of tumour size? Please give us an idea of what differential equations you think you need to describe the biomarkers you mention.
Nick
Feng Yang wrote:
> Dear nmusers:
>
> Recently I am trying to build a cell-cycle based tumor growth model, i.e. tumor size = G1+ S + G2 + M. Meanwhile, I have quite a few simultaneous biomarkers to characterize the cycle behaviors. Those biomarkers could be calculated based on the population of G1, S, G2, and M. I have the following puzzles needed to be addressed:
>
> 1) In my data file, what is the CMT number I should give to those observations (such as tumor size and many biomarkers)? By the way, I need CMT to specify/initialize the corresponding compartment. Since I am not quite sure how to use L2 and PCMT, I tried many times, all failed except the following foolish way:
>
> I create one more compartment to hold the tumor size:
> DADT(iTUMROR) = DADT(iG1) + DADT(iS) + DADT(iG2) + DADT(iM)
>
> and in my data file, I put the CMT compartment created (iTUMOR) into the observation of tumor size.
>
> However, for all other biomarkers, there is no way to write this kind of DADT equations. How could I solve this in a smart way?
>
> 2) Since some biomarker data are collected based on certain time point, saying t0. In other words, they are relative fold-changes compared to the vehicle at t0. Therefore, I need to save the intermediate population of G1, S, G2 and M at t0, as constants, which will be used to scale the later-on populations so that the model predictions are comparable with the observations.
>
> However, in the both block $DES and $ERROR, there is no way to save these intermediate populations as global variables or constants. I guess, I have to use MSFO to separate the simulation to many sections? But it am not sure how to do it.
>
> Your thoughts and feedback are really appreciated! Thanks a lot!
>
> Feng
--
Nick Holford, Dept Pharmacology & Clinical Pharmacology
University of Auckland, 85 Park Rd, Private Bag 92019, Auckland, New Zealand
[EMAIL PROTECTED] tel:+64(9)373-7599x86730 fax:+64(9)373-7090
http://www.fmhs.auckland.ac.nz/sms/pharmacology/holford
Feng, I don't really understand what you're trying to do , but, it might be helpful to note that you are not required to use the compartment prediction in the Y = statement For example, if you have $DES DADT(1) = .... DADT(2) = .... DADT(3) = ... it is permitted to have $ERROR Y = A(1)/6 + LOG(A(2)) + A(3)/S3 + EPS(1) without using F (which comes from a specific compartment). So, you may be able to construct the data file/model such that it doesn't matter which compartment the observation is assigned to. In NMVI, there is a new syntax for initializing compartments IF(A_0FLG.EQ.1) then A_0(2) = 1 END IF would this help with initializing the compartments? WRT your second question, I can't say that I really understand, but you can set up your own common as verbatim code and put whatever you want in it. $DES " FIRST " COMMON /MYVARS/ VAL1, VAL2, VAL3 " VAL1 = THETA(1) " VAL2 = A(1) TVAL1 = VAL1 TVAL2 = VAL2 DADT(1) = ... . . . but, always be aware of the limits of verbatim code, NMTRAN does not look at it, and will not properly take the derivative of any _expression_ inside. If you're want DOUBLE PRECISION numbers, you can just let NMTRAN generate the declarations for you, otherwise it gets a little more complicated. you can put whatever you want into it, it will be save between calls to DES, and it available in $PK and $ERROR (you'll need to put in the same COMMON statements in $PK or $ERROR). Mark Sale MD Next Level Solutions, LLC
www.NextLevelSolns.com
919-846-9185
> -------- Original Message -------- Subject: [NMusers] Build a cell-cycle based tumor growth model From: "Feng Yang" <[EMAIL PROTECTED]> Date: Thu, July 17, 2008 4:49 am To:
>
> [email protected]
>
> Dear nmusers: Recently I am trying to build a cell-cycle based tumor growth model, i.e. tumor size = G1+ S + G2 + M. Meanwhile, I have quite a few simultaneous biomarkers to characterize the cycle behaviors. Those biomarkers could be calculated based on the population of G1, S, G2, and M. I have the following puzzles needed to be addressed: 1) In my data file, what is the CMT number I should give to those observations (such as tumor size and many biomarkers)? By the way, I need CMT to specify/initialize the corresponding compartment. Since I am not quite sure how to use L2 and PCMT, I tried many times, all failed except the following foolish way: I create one more compartment to hold the tumor size: DADT(iTUMROR) = DADT(iG1) + DADT(iS) + DADT(iG2) + DADT(iM) and in my data file, I put the CMT compartment created (iTUMOR) into the observation of tumor size. However, for all other biomarkers, there is no way to write this kind of DADT equations. How could I solve this in a smart way? 2) Since some biomarker data are collected based on certain time point, saying t0. In other words, they are relative fold-changes compared to the vehicle at t0. Therefore, I need to save the intermediate population of G1, S, G2 and M at t0, as constants, which will be used to scale the later-on populations so that the model predictions are comparable with the observations. However, in the both block $DES and $ERROR, there is no way to save these intermediate populations as global variables or constants. I guess, I have to use MSFO to separate the simulation to many sections? But it am not sure how to do it. Your thoughts and feedback are really appreciated! Thanks a lot! Feng