5 SUBROUTINE dnsd(X,Y,YPRIME,NEQ,RES,PDUM,WT,RPAR,IPAR,
6 * dumsvr,delta,e,wm,iwm,cj,dums,dumr,dume,epcon,
7 * s,confac,tolnew,muldel,maxit,ires,idum,iernew)
86 IMPLICIT DOUBLE PRECISION(a-h,o-z)
87 dimension y(*),yprime(*),wt(*),delta(*),e(*)
91 parameter(lnre=12, lnni=19)
102 iwm(lnni) = iwm(lnni) + 1
106 IF (muldel .EQ. 1)
THEN
108 320 delta(i) = delta(i) * confac
114 CALL
dslvd(neq,delta,wm,iwm)
121 340 yprime(i)=yprime(i)-cj*delta(i)
125 delnrm=
ddwnrm(neq,delta,wt,rpar,ipar)
126 IF (delnrm .LE. tolnew) go to 370
130 rate = (delnrm/oldnrm)**(1.0d0/m)
131 IF (rate .GT. 0.9d0) go to 380
132 s = rate/(1.0d0 - rate)
134 IF (s*delnrm .LE. epcon) go to 370
142 IF(m.GE.maxit) go to 380
147 iwm(lnre)=iwm(lnre)+1
148 CALL res(
x,y,yprime,cj,delta,ires,rpar,ipar)
149 IF (ires .LT. 0) go to 380
159 IF (ires .LE. -2 )
THEN