UUPharmacometrics / PsN

Perl-Speaks-NONMEM
https://uupharmacometrics.github.io/PsN
GNU General Public License v2.0
65 stars 19 forks source link

execute incorrectly rewrites NONMEM 7.5 model abbreviations #194

Open billdenney opened 3 years ago

billdenney commented 3 years ago

When using model abbreviations available in NONMEM 7.5 like in pheno_nm750.mod.txt, I get an error with execute:

This appears to be an issue with the parser where it is grouping the CL= into the numeric value rather than outside.

$execute pheno_nm750.mod
Starting 1 NONMEM executions. 1 in parallel.
S:1 ..
All executions started.
Pathlist information for compiler and MPI systems are located in nmpathlist.txt

Starting NMTRAN

 AN ERROR WAS FOUND IN THE CONTROL STATEMENTS.

AN ERROR WAS FOUND ON LINE 5 AT THE APPROXIMATE POSITION NOTED:
 $THETA  (CL=0,0.00469307) ; TVCL
          X
 THE CHARACTERS IN ERROR ARE: CL=
   18  INCORRECTLY FORMED VALUE, OPTION, OR RESERVED WORD.
NMtran failed. There is no output for model 1. Contents of FMSG:

 AN ERROR WAS FOUND IN THE CONTROL STATEMENTS.

AN ERROR WAS FOUND ON LINE 5 AT THE APPROXIMATE POSITION NOTED:
 $THETA  (CL=0,0.00469307) ; TVCL
          X
 THE CHARACTERS IN ERROR ARE: CL=
   18  INCORRECTLY FORMED VALUE, OPTION, OR RESERVED WORD.

Not restarting this model.
F:1 ..
execute done
rikardn commented 3 years ago

Thanks for reporting this. PsN doesn't support this currently.

sundav05 commented 3 years ago

Hi Rikard, We are testing PsN5 integration with NM750 at the moment. Is a patched version available that is fully compatible with all NM750 features?

rikardn commented 3 years ago

Thanks @sundav05 for the interest. The answer is no and it is not in the current plan. We are too few developers to be able to prioritize this at the moment. Most tools of PsN are still expected to continue working with NONMEM 7.5 though.

That being said a lot of development is currently happening in Pharmpy (https://github.com/pharmpy/pharmpy), which is used more and more by PsN and is also compatible with R via https://github.om/pharmpy/pharmr. The particular feature of this issue is not supported by Pharmpy yet though.

If you are interested in support for particular features of NONMEM 7.5 that you know doesn't work it would be useful if you could file separate issues for these. Or even better you could join the development. Let us know if there is some particular feature you would like to work on and we will be more than happy to help you get started.

sundav05 commented 3 years ago

Understand completely. We will test specific features of interest to us and get back to you if we run into issues. In the meantime, we noticed that PsN is force adding the [NODES}=1 argument to nonmem. This is counterproductive since we use wrappers for launching nonmem that automatically sets the number of NODES to the same as the number of cores requested by users. If NODES value is NOT set, nonmem defaults to a single node anyway and serves NO addl. purpose. Does PsN50 use this setting explicitly for anything internal as PsN490 does not do this.