53 subroutine addprm(ix,ix2,ibd,prmn,prmx,prsc,step,ident)
67 double precision prmn,prmx,prsc,step
70 integer i,isi,ixabs,j,jx,jx1,jx2,k,k1,l,lu,nadd,nmov
74 external itrim,spcpar,tcheck
81 if ( (spcpar(ix) .and. ix2.gt.
mxspc)
82 # .or. (.not.spcpar(ix) .and. ix2.gt.
mxsite) )
then
119 if (.not.tcheck(ix,jx,ident,lu))
return
125 ixabs=abs(mod(ix,100))
128 if (
ixpr(i).eq.ixabs .and.
ixst(i).eq.jx)
then
133 if (
ixpr(i).gt.ixabs .or.
134 # (
ixpr(i).eq.ixabs.and.
ixst(i).gt.jx) )
go to 14
160 if (
ixst(k1).le.0)
then
195 write(
tag(i)(k+1:),2000) jx
205 1000
format(
'*** Parameter ''',a,
''' is already being varied ***')
206 1001
format(
'*** Limit of',i2,
' variable parameters exceeded ***')
207 1002
format(
'*** Index out of range ***')
208 1003
format(i3,
' parameters now being varied')
209 2000
format(
'(',i1,
')')
integer, dimension(mxvar), save ixst
double precision, dimension(nfprm, mxsite), target, save fparm
double precision, dimension(mxvar), save xfdstp
integer, dimension(mxvar), save ixpr
double precision, dimension(mxvar), save prmin
integer, parameter mxsite
double precision, dimension(mxvar), save prmax
integer, parameter luttyo
integer, dimension(mxvar), save ibnd
integer, dimension(nfprm, mxsite), save ixx
subroutine addprm(ix, ix2, ibd, prmn, prmx, prsc, step, ident)
Add a parameter to list of parameters being varied for nonlinear least-squares. Also maintain the lis...
character *9, dimension(mxjcol), save tag
double precision, parameter rndoff
double precision, dimension(mxvar), save prscl
double precision, dimension(mxjcol), save x