From: Patrick Zhou patrickmzhou@yahoo.com
Subject: [NMusers] line length limit of NMTRAN and initial value limit of NONMEM
Date: Wed, 4 Jan 2006 11:29:42 -0800 (PST)

Dear All,
 
Happy New Year!
 
There are two questions that I am trying to figure out.
 
1. In NONMEM control file, the limit of characters in each record (line) is 80,
including space in the middle. Is there a way that we can have continue line in
the file? e.g., a line of statement is longer than 80 characters, instead of creating
and using some dummy variable to store and transfer intermidiate results, and to
shorten the line, can we have a continue line?
 
2. Sometime, we need to give a small initial value for PK parameter estimation. Is
that true the smallest initial value is .0000001 because of 8 character limit? Can
we give even smaller initial value?
 
Thank you very much for your help!
 
Patrick
_______________________________________________________

From: "Bachman, William (MYD)" bachmanw@iconus.com
Subject: RE: [NMusers] line length limit of NMTRAN and initial value limit of NONMEM
Date: Wed, 4 Jan 2006 15:19:09 -0500

The 80 character-limit is a FORTRAN artefact and you're stuck with it.
 
Since you can't use exponential format for the parameter, I think you are stuck
with 8 characters also.  The only way to get around this is to scale the parameter
as part of the control stream code:
 
$PK
   TVCL=THETA(1)/(1000000*1000000)
   CL=TVCL*EXP(ETA(1))
  etc.
$THETA
   (0, 5.) ;[CL]
  etc.
 
_______________________________________________________

From: "Elassaiss - Schaap, J. (Jeroen)" jeroen.elassaiss@organon.com
Subject: RE: [NMusers] line length limit of NMTRAN and initial value limit of NONMEM
Date:  Thu, 5 Jan 2006 09:13:06 +0100

Dear Patrick,
 
You can have a continue line in fortran fashion, but you need to use
verbatim fortran, i.e. code staring with a ".
From the docs:
 Continuation lines
     If blanks occur in positions 1-5 following the initial  "  and  a
     non-blank  in position 6, this conforms to the usual FORTRAN syn-
     tax for continuation lines, and the text is not moved from  these
     positions.  Example:
     "     X  +D/E
This may however impact readability of your code ;-). I'd rather use the 'dummy' approach.
 
When your initial values are that small you might want to consider using a
different scale (via Sx) or transform your parameter
of interest to a 'p' notation such as x=10**(-THETA(1)) *EXP(ETA(1)).
 
Best regards,
Jeroen
 
J. Elassaiss-Schaap
Scientist PK/PD
Organon NV
PO Box 20, 5340 BH Oss, Netherlands
Phone: + 31 412 66 9320
Fax:   + 31 412 66 2506
e-mail: jeroen.elassaiss@organon.com 
_______________________________________________________