Re: LOG(F) error model
From n.holford@auckland.ac.nz Sat Aug 31 16:55:18 1996
Subject: Re: LOG(F) error model
> Even if they can be made to do this, there are risks when NONMEM is
> allowed to compute with these IEEE default values. They should *never*
> be allowed to contribute to the NONMEM objective function. I.e., the
> user must insure that invalid floating point operations such as LOG(0)
> do not occur with observation records.
Ok. So if this is the case then one must ALWAYS use the code you suggest
>
> FLAG=0
> IF(F.EQ.0) FLAG=1
> Y=(1-FLAG)*LOG(F+FLAG) + EPS(1)
>
because compilers which do not raise errors with LOG(0) will presumably return -INF or NaN and you say this should *never*be allowed to happen. No compiler will return 0 as LOG(0) which is what your code is equivalent to. In a more general way - is'nt this a problem for NMTRAN to address? If the above code fragment is always needed for safe operation then why not get NMTRAN to generate it? Or why not make NONMEM `aware' of the problem and to ignore when F is 0 and the LOG transformed model is being used?
--
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