********> bugfix.27 Author: Dave Pearlman Date: 10/30/01 Programs: interface Severity: won't work as written with sander Description: The interface files for version 6 have a bit of an idiosyncratic naming scheme. "sander" refers to sander_classic, and "sander_pme" refers to sander. The definition file for sander has some errors. Put the file below into: $AMBERHOME/src/interface/def/sander_pme_namelist.def Then "recompile" the amber interface (not the interface program, but the script). New version of sander_pme_namelist.def: ! interface code to write namelist formatted Interface input for Sander_pme ! D.A. Pearlman , 3/99 ! ! The following variables, which were included in the Amber 5.0 &cntrl ! namelist, are not in the Amber6/sander_pme namelist: ! KFORM ICHDNA IPRR IPRW TAUTS ISOLVP IFTRES NRUN INIT NATRCM ! IDIEL IMGSLT NTNB NTID ISFTRP RWELL XON XOFF TAUV TAUV0 ! VZERO CUT2ND IEWALD COSMOD ITRSLU NTWR ILBOPT ILBNOB LBFREQ LBVERB ! LBWGHT ! ! The following variables, which are in the &cntrl namelist for ! Amber6/sander_pme were not in the Amber50 namelist: ! IALTDIST IGB IGBFREQ ! writes two namelists: ! 1) &cntrl (main variables list) ! 2) &ewald (Ewald control list) ! redefine FORMEC to output 7 sig digits to namelist define FORMEC = "G16.7" assign nmfmtuse = "(10(t5,a,t28,', ',:,a,t53,', ',:,a,t78,',',:,/))" write ("TITLE: " ) \ /outfile = outfil \ /out_form = (a,/) write(" &cntrl") /outfile=outfil/out_form=(a) write ("timlim = <TIMLIM>","irest = <IREST>" ,"ibelly = <IBELLY>", \ "imin = <IMIN>", \ "ipol = <IPOL>" ) \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ntx = <NTX>" ,"ntxo = <NTXO>" ,"ntcx = <NTCX>", \ "ig = <IG>" ,"tempi = <TEMPI>" ,"heat = <HEAT>") \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ntb = <NTB>" ) \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ( "ntt = <NTT>" ,"temp0 = <TEMP0>", \ "dtemp = <DTEMP>" ,"tautp = <TAUTP>" , \ "vlimit = <VLIMIT>") \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ntp = <NTP>" ,"pres0 = <PRES0>" ,"comp = <COMP>", \ "taup = <TAUP>" ,"npscal = <NPSCAL>")\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ndfmin = <NDFMIN>","ntcm = <NTCM>" ,"nscm = <NSCM>")\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("nstlim = <NSTLIM>", "ntu = <NTU>",\ "t = <T>" ,"dt = <DT>" ) \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ntc = <NTC>" ,"ntcc = <NTCC>" ,"nconp = <NCONP>",\ "tol = <TOL>" ,"jfastw = <JFASTW>")\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ntf = <NTF>" ,"ntn = <NTN>" , \ "nsnb = <NSNB>" )\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("cut = <CUT>" ,"scnb = <SCNB>" ,"scee = <SCEE>",\ "dielc = <DIELC>") \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ntpr = <NTPR>" ,"ntwx = <NTWX>" ,"ntwv = <NTWV>",\ "ntwe = <NTWE>" , \ "ntpp = <NTPP>" ,"ioutfm = <IOUTFM>",\ "ntwprt = <NTWPRT>","ntwpr0 = <NTWPR0>") \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ntr = <NTR>" ,"nrc = <NRC>" ,"ntrx = <NTRX>",\ "taur = <TAUR>" ,"nmropt = <NMROPT>", \ "pencut = <PENCUT>" )\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("ivcap = <IVCAP>" ,"fcap = <FCAP>")\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("maxcyc = <MAXCYC>","ncyc = <NCYC>" ,"ntmin = <NTMIN>",\ "dx0 = <DX0>" ,"dxm = <DXM>" ,"dele = <DELE>",\ "drms = <DRMS>")\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil write ("igb = <IGB>" ,"igbfreq= <IGBFREQ>" ) \ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil ! new water name definition if defined: if (jfastw.eq.1 .or. jfastw.eq.3) then write ("watnam = '<WATNAM>'","owtnm = '<OWTNM>'" , \ "hwtnm1 = '<HWTNM1>'","hwtnm2 = '<HWTNM2>'") \ /outfile = outfil \ /out_form = <nmfmtuse> echo /outfile=outfil end if ! ! First, if nmropt=2 or 3, write the additional cards needed for volume ! and chemical shift restraint (lines 15A, 15B): if (nmropt.eq.2 .or. nmropt.eq.3) then write ("iscale = <ISCALE>","noeskp = <NOESKP>","ipnlty = <IPNLTY>",\ "maxsub = <MAXSUB>","scalm = <SCALM>" ,"tausw = <TAUSW>")\ /outfile=outfil\ /out_form=<nmfmtuse> echo /outfile=outfil end if ! Following variables not in distributed version ! write ("boxx(1)= <BOX1>", "boxx(2)= <BOX2>" ,"boxx(3)= <BOX3>" ,\ ! "betar = <BETA>") \ ! /outfile=outfil\ ! /out_form=<nmfmtuse> ! Write out any additional namelist variables specified by the using ! using the "nameset" command. if (iasval("inml_add").eq.0) assign inml_add = 0 if (inml_add.gt.0) then do i = 1,inml_add,3 if (inml_add.ge.i+2) then write ("<addnml<i>> = <<addnml<i>>>" , \ "<addnml<i+1>> = <<addnml<i+1>>>", \ "<addnml<i+2>> = <<addnml<i+2>>>") \ /outfile=outfil\ /out_form=<nmfmtuse> else if (inml_add.eq.i+1) then write ("<addnml<i>> = <<addnml<i>>>" , \ "<addnml<i+1>> = <<addnml<i+1>>>") \ /outfile=outfil\ /out_form=<nmfmtuse> else write ("<addnml<i>> = <<addnml<i>>>" ) \ /outfile=outfil\ /out_form=<nmfmtuse> end if end do echo /outfile=outfil end if write(" &end") /outfile=outfil/out_form=(a) ! write out &ewald namelist if the ewald command was specified (iewald=1) if (iewald.ne.1) goto ewaldskip write(" ") /outfile=outfil/out_form=(a) write(" &ewald") /outfile=outfil/out_form=(a) ! only output cell parameters if they were specified if (iasval("A_EW").ne.0) \ write ("a = <A_EW>" ,"b = <B_EW>" ,"c = <C_EW>" ,\ "alpha = <ALP_EW>" ,"beta = <BET_EW>" ,"gamma = <GAM_EW>") \ /outfile=outfil\ /out_form=<nmfmtuse> write ("nfft1 = <NFFT1>" ,"nfft2 = <NFFT2>" ,"nfft3 = <NFFT3>" ,\ "order = <ORDER_EW>","ischrgd = <ischrgd_ew>" ,\ "verbose= <VERBOSE_EW>" ,"ew_type= <CHECKACC_EW>" ,\ "dsum_tol= <DSUM_TOL_EW>")\ /outfile=outfil\ /out_form=<nmfmtuse> write ("ew_coeff= <EW_COEFF>" ,"nbflag = <NBFLAG>" ,"skinnb = <SKINNB>" ,\ "nbtell = <NBTELL>" ,"netfrc = <NETFRC>" ,"frc_int= <FRC_INT>" ,\ "ee_type = <EE_TYPE>" ,\ "vdwmeth= <VDWMETH>" ,"eedmeth= <EEDMETH>" ,\ "eedtbdns = <EEDTBDNS>" ) \ /outfile=outfil\ /out_form=<nmfmtuse> ! Write out any additional namelist variables specified by the using ! using the "nameset/ewald" command. if (iasval("inml_add_ewald").eq.0) assign inml_add_ewald = 0 if (inml_add_ewald.gt.0) then do i = 1,inml_add_ewald,3 if (inml_add_ewald.ge.i+2) then write ("<addnml_ewald<i>> = <<addnml_ewald<i>>>" , \ "<addnml_ewald<i+1>> = <<addnml_ewald<i+1>>>", \ "<addnml_ewald<i+2>> = <<addnml_ewald<i+2>>>") \ /outfile=outfil\ /out_form=<nmfmtuse> else if (inml_add.eq.i+1) then write ("<addnml_ewald<i>> = <<addnml_ewald<i>>>" , \ "<addnml_ewald<i+1>> = <<addnml_ewald<i+1>>>") \ /outfile=outfil\ /out_form=<nmfmtuse> else write ("<addnml_ewald<i>> = <<addnml_ewald<i>>>" ) \ /outfile=outfil\ /out_form=<nmfmtuse> end if end do echo /outfile=outfil end if echo /outfile=outfil write(" &end") /outfile=outfil/out_form=(a) ewaldskip: ! reset FORMEC to default of 16.5 define FORMEC = "G16.5" ------------------------------------------------------------------------------