Re: More about LOG(F)
From n.holford@auckland.ac.nz Wed Sep 4 13:53:35 1996
Subject: Re: More about LOG(F)
Alison,
Thanks for your further comments on this issue.
My point relates to the consequences of a compiler returning -INF for LOG(0). First of all consider the case when MDV=1. As far as I can tell it should make no difference to NONMEM what is returned. The only difference is in terms of what gets written to the TABLE output for the model prediction. On my HP system LOG(0) is -INF and EXP(-INF) is 0. So I think that I will get the "correct" prediction.
The situation when MDV=0 is different. I think this is very much the responsibility of the user. If the prediction is 0 e.g. at a time before a lagged dose enters the system or at a very late time when the prediction underflows to zero then if the user should be prepared to recognse that an additive component to the error model is probably appropriate and a simple proportional one as implied by the LOG() model is not sufficient. Your earlier suggestion of returning 0 when F=0 (even when MDV=0) should only be done with a full understanding by the user that they may be introducing serious error model misspecification.
So to sum up:
1. If your compiler produces a run time error when asked to compute LOG(0) then you need to use one of the workarounds (A. use special code when F=0 B. Use CALLFL=0 C. Change your compiler error trapping) to deal with MDV=1 and F=0.
2. If MDV=0 and F=0 you are (probably) introducing model misspecification for your error model. The work arounds may or may not be the right thing to do. Personally I would always add an additive component to the error model in this situation.
--
Nick Holford, Dept Pharmacology & Clinical Pharmacology
University of Auckland, Private Bag 92019, Auckland, New Zealand
email:n.holford@auckland.ac.nz tel:+64(9)373-7599x6730 fax:373-7556
http://www.phm.auckland.ac.nz/Staff/NHolford/nholford.html