41 integer i,iflg,ioerr,j,lth
43 character line*80,token*30,scratch*30,fileID*30,chr1*1
74 if (getlin(line))
then
78 call gettkn(line,token,lth)
80 if (lth.eq.0 .or. token.eq.
'C' .or. token.eq.
'/*')
go to 25
83 if (token.eq.
'ASSIGN')
then
89 else if (token.eq.
'AXIAL')
then
95 else if (token.eq.
'BASIS')
then
101 else if (token.eq.
'CARTESIAN' .or. token.eq.
'CART')
then
107 else if (token.eq.
'CONFIDENCE' .or. token .eq.
'CONF')
then
113 else if (token.eq.
'CORRELATION' .or. token .eq.
'CORR')
then
119 else if (token.eq.
'DATA')
then
125 else if (token.eq.
'DELETE' .or. token.eq.
'DEL' )
then
132 else if (token.eq.
'ECHO')
then
133 call gettkn(line,token,lth)
140 if (scratch.eq.
'ON')
then
142 else if (scratch.eq.
'OFF')
then
145 call ungett(token,lth,line)
153 else if (token.eq.
'FIT')
then
159 else if (token.eq.
'FIX' .or. token.eq.
'REMOVE')
then
165 else if (token.eq.
'HELP')
then
171 else if (token.eq.
'LET')
then
177 else if (token.eq.
'LOG')
then
178 call gettkn(line,fileid,lth)
184 else if (fileid.eq.
'END' .or. fileid.eq.
'end')
then
195 # access=
'sequential',form=
'formatted',
207 else if (token.eq.
'PARMS')
then
213 else if (token.eq.
'QUIT'.or.token.eq.
'EXIT')
then
221 else if (token.eq.
'READ' .or. token.eq.
'CALL')
then
225 call gettkn(line,fileid,lth)
236 inquire(file=fileid(:lth),exist=fexist)
237 if (fexist)
open(
lucmd,file=fileid(:lth),
238 # status=
'old',access=
'sequential',
239 # form=
'formatted',iostat=ioerr)
241 if ((.not.fexist) .or. ioerr.ne.0)
then
244 write (
luttyo,1030) fileid(:lth)
266 else if (token.eq.
'RESET')
then
272 else if (token.eq.
'SCALE')
then
278 else if (token.eq.
'SEARCH')
then
284 else if (token.eq.
'SERIES')
then
290 else if (token.eq.
'SHIFT')
then
296 else if (token.eq.
'SITES')
then
302 else if (token.eq.
'SPHERICAL' .or. token.eq.
'SPHER')
then
308 else if (token.eq.
'STATUS')
then
314 else if (token.eq.
'VARY')
then
320 else if (token.eq.
'WRITE')
then
327 write(
luttyo,1040) token(:lth)
338 stop
'end of program NLSL'
369 1000
format(//,2
x,70(
'#'),//)
370 1010
format(25
x,
'PROGRAM : NLSL'/20
x,
'*** Version 1.5.1 beta ***'/
372 #15
x,
'Recompiled by Zhichun Liang, 12/13/07'/
373 #25
x,
'---------------',//)
374 1020
format(
'*** File name must be specified ***'/)
375 1021
format(
'*** Log file is not open ***')
376 1022
format(
'*** Error',i3,
' opening file ',a,
' ***')
377 1030
format(
'*** Error opening or reading file ''',a,
''' ***'/)
378 1040
format(
'*** Unknown command : ''',a,
''' ***')
379 1050
format(
'*** Cannot open ''',a,
''': more than',i2,
integer, parameter mxfile
double precision, dimension(mxspc), save sbi
double precision, save srange
character *30, dimension(mxfile), save files
double precision, dimension(mxspc), save sdb
double precision, pointer, save ftol
integer, dimension(mxspc), save ixsp
void FORTRAN() uncatchc(int *flag)
integer, dimension(mxspc), save ishft
integer, dimension(mxsite, mxspc), save basno
integer, dimension(mxspc), save ibase
double precision, dimension(mxspc), save tmpshft
integer, dimension(mxsite, mxspc), save modtd
double precision, dimension(mxsite, mxspc), save sfac
double precision, save confid
double precision, dimension(mxspc), save shft
double precision, save pstep
double precision, dimension(mxspc), save spsi
double precision, dimension(nfprm, mxsite), target, save fparm
double precision, save pftol
double precision, pointer, save gtol
subroutine touppr(string, lth)
integer, pointer, save maxev
integer, parameter cartesian
subroutine gettkn(line, token, lth)
Written for free-form input of parameters for slow-motional calculations. Returns a token consisting ...
integer, dimension(mxsite, mxspc), save ltd
character *30, save lgname
integer, dimension(niprm, mxsite), target, save iparm
integer, dimension(mxsite), save iscal
integer, parameter mxsite
subroutine ungett(token, lth, line)
integer, parameter ishift
void FORTRAN() catchc(int *flag)
integer, dimension(mxspc), save idrv
double precision, pointer, save xtol
integer, parameter ludisk
integer, parameter luttyo
integer, dimension(mxspc), save iform
double precision, save ctol
double precision, save pbound
integer, parameter luttyi
double precision, save ptol
double precision, dimension(mxspc), save sb0
integer, parameter icgtol
integer, dimension(nfprm, mxsite), save ixx
integer, dimension(mxspc), save npts
subroutine setfil(fileid)
integer, pointer, save maxitr
integer, parameter spherical
void FORTRAN() shtwndws()
subroutine convtc(line, iflg)
double precision, dimension(mxjcol), save x