36 character*20 labmpc(*)
39 integer mi(*),nactdof(0:mi(2),*),nodeboun(*),ndirboun(*),
40 & ipompc(*),nodempc(3,*),mt,nk,ithermal(2),i,j,
41 & nener,iperturb(*),iout,nboun,nmpc,nmethod,ist,ndir,node,index,
42 & neq,nprint,ikin,calcul_fn,nforc,
43 & calcul_f,calcul_cauchy,calcul_qa,intpointvarm,intpointvart,
44 & irefnode,irotnode,iexpnode,irefnodeprev
46 real*8 v(0:mi(2),*),vini(0:mi(2),*),f(*),fn(0:mi(2),*),
47 & cam(5),b(*),xboun(*),coefmpc(*),veold(0:mi(2),*),xforc(*),
48 & qa(*),dtime,bnac,fixed_disp
52 if((iout.ne.2).and.(iout.gt.-1))
then 54 if((nmethod.ne.4).or.(iperturb(1).le.1))
then 55 if(ithermal(1).ne.2)
then 58 if(nactdof(j,i).gt.0)
then 65 if((iperturb(1).ne.0).and.(abs(nmethod).eq.1))
then 66 if(dabs(bnac).gt.cam(1))
then 68 cam(4)=nactdof(j,i)-0.5d0
74 if(ithermal(1).gt.1)
then 76 if(nactdof(0,i).gt.0)
then 83 if((iperturb(1).ne.0).and.(abs(nmethod).eq.1))
then 84 if(dabs(bnac).gt.cam(2))
then 86 cam(5)=nactdof(0,i)-0.5d0
97 if(ithermal(1).ne.2)
then 101 if(nactdof(j,i).gt.0)
then 108 if(dabs(bnac).gt.cam(1))
then 110 cam(4)=nactdof(j,i)-0.5d0
115 if(ithermal(1).gt.1)
then 118 if(nactdof(0,i).gt.0)
then 124 if(dabs(bnac).gt.cam(2))
then 126 cam(5)=nactdof(0,i)-0.5d0
128 cam(3)=
max(cam(3),dabs(v(0,i)-vini(0,i)))
144 if((iperturb(1).ge.2).or.((iperturb(1).le.0).and.(iout.lt.0)))
146 if((iout.lt.1).and.(iout.gt.-2))
then 150 elseif((iout.ne.-2).and.(iperturb(2).eq.1))
then 156 if((filab(5)(1:4).eq.
'RF ').or.
157 & (filab(10)(1:4).eq.
'RFL '))
then 161 if((prlab(i)(1:4).eq.
'RF ').or.
162 & (prlab(i)(1:4).eq.
'RFL '))
then 173 if((xforc(i).lt.1.2357111318d0).and.
174 & (xforc(i).gt.1.2357111316d0))
then 182 if(calcul_fn.eq.1)
then 192 if(calcul_f.eq.1)
then 201 if(abs(iout).lt.2)
then 206 if(ndirboun(i).gt.mi(2)) cycle
213 v(ndirboun(i),nodeboun(i))=fixed_disp
223 if(ithermal(1).lt.2) cycle
224 elseif(ndir.gt.mi(2))
then 227 if(ithermal(1).eq.2) cycle
233 fixed_disp=fixed_disp-coefmpc(index)*
234 & v(nodempc(2,index),nodempc(1,index))
235 index=nodempc(3,index)
239 fixed_disp=fixed_disp/coefmpc(ist)
240 v(ndir,node)=fixed_disp
249 if(labmpc(i)(1:4).eq.
'KNOT')
then 250 irefnode=nodempc(1,nodempc(3,ipompc(i)))
251 if(irefnode.ne.irefnodeprev)
then 252 irefnodeprev=irefnode
253 iexpnode=nodempc(1,nodempc(3,nodempc(3,ipompc(i))))
254 if(labmpc(i)(5:5).ne.
'2')
then 255 irotnode=nodempc(1,nodempc(3,nodempc(3,
256 & nodempc(3,ipompc(i)))))
258 irotnode=nodempc(1,nodempc(3,nodempc(3,
259 & nodempc(3,nodempc(3,nodempc(3,ipompc(i)))))))
283 if((filab(7)(1:4).eq.
'ENER').or.(filab(27)(1:4).eq.
'CELS'))
then 288 if((prlab(i)(1:4).eq.
'ENER').or.(prlab(i)(1:4).eq.
'ELSE').or.
289 & (prlab(i)(1:4).eq.
'CELS'))
then 291 elseif(prlab(i)(1:4).eq.
'ELKE')
then 305 if((nmethod.ge.4).and.(iperturb(1).lt.2))
then 307 if((filab(3)(1:4).eq.
'S ').or.
308 & (filab(4)(1:4).eq.
'E ').or.
309 & (filab(5)(1:4).eq.
'RF ').or.
310 & (filab(6)(1:4).eq.
'PEEQ').or.
311 & (filab(7)(1:4).eq.
'ENER').or.
312 & (filab(8)(1:4).eq.
'SDV ').or.
313 & (filab(13)(1:4).eq.
'ZZS ').or.
314 & (filab(13)(1:4).eq.
'ERR ').or.
315 & (filab(18)(1:4).eq.
'PHS ').or.
316 & (filab(20)(1:4).eq.
'MAXS').or.
317 & (filab(26)(1:4).eq.
'CONT').or.
318 & (filab(27)(1:4).eq.
'CELS')) intpointvarm=1
320 if((prlab(i)(1:4).eq.
'S ').or.
321 & (prlab(i)(1:4).eq.
'E ').or.
322 & (prlab(i)(1:4).eq.
'PEEQ').or.
323 & (prlab(i)(1:4).eq.
'ENER').or.
324 & (prlab(i)(1:4).eq.
'ELKE').or.
325 & (prlab(i)(1:4).eq.
'CDIS').or.
326 & (prlab(i)(1:4).eq.
'CSTR').or.
327 & (prlab(i)(1:4).eq.
'CELS').or.
328 & (prlab(i)(1:4).eq.
'SDV ').or.
329 & (prlab(i)(1:4).eq.
'RF '))
then 336 if((filab(9)(1:4).eq.
'HFL ').or.
337 & (filab(10)(1:4).eq.
'RFL ')) intpointvart=1
339 if((prlab(i)(1:4).eq.
'HFL ').or.
340 & (prlab(i)(1:4).eq.
'RFL ')) intpointvart=1
346 if(calcul_fn.eq.1)
then #define max(a, b)
Definition: cascade.c:32