38 3 VR ,AR ,ISKWN ,IFRAME ,SKEW ,
39 4 XFRAME ,WEIGHT ,TEMP ,INOD ,FTHREAC,
40 5 NODREAC, CPTREAC ,DR ,IFORM ,NTHGRP2,
41 6 ITHGRP ,PINCH_DATA,ITHERM_FE)
47 USE output_mod ,
ONLY : noda_surf, noda_pext
52#include "implicit_f.inc"
62#include "submodel.inc"
67 . ISKWN(LISKN,*),IFRAME(LISKN,*),WEIGHT(NUMNOD),(*),
68 . NODREAC(*),IFORM,NTHGRP2
69 INTEGER,
DIMENSION(NITHGR,*),
INTENT(in) :: ITHGRP
70 INTEGER ,
intent(in) :: ITHERM_FE
72 . wa(*),x(3,*),d(3,numnod),v(3,*),a(3,*),vr(3,*),ar(3,*),
73 . skew(lskew,*),xframe(nxframe,*),temp(*),fthreac(6,*),
75 TYPE(
pinch) :: PINCH_DATA
84 INTEGER I, J, ISK, II, L, K, IUN, IFRA, N1,IPLY,IDIR,N
85 INTEGER :: II_SAVE,IJK, ITYP
86 INTEGER :: IAD,NN,IADV,NVAR
87 my_real :: XL(3),DL(3),VL(3),AL(3),VRL(3),ARL(3),OD(3),VO(3),AO(3),VRG(3),ARG(3)
108 isk = 1 + ithbuf(j+nn)
110 IF(.NOT. condition) condition = (weight(i) == 0)
112 DO l=iadv,iadv+nvar-1
119 DO l=iadv,iadv+nvar-1
162 IF (itherm_fe /= 0)
THEN
167 ELSEIF(k > 19 .AND. k <= 619)
THEN
168 IF(iplyxfem > 0)
THEN
169 idir = mod((k - 19),3)
170 IF(idir == 0) idir = 3
172 IF(mod((k - 19),3) /= 0) iply = iply + 1
173 wa(ijk) =
ply(iply)%U(idir,inod(i))
175 ELSEIF(k == 620)
THEN
176 IF (nodreac(i) /= 0)
THEN
177 wa(ijk) = fthreac(1,nodreac(i))
181 ELSEIF(k == 621)
THEN
182 IF (nodreac(i) /= 0)
THEN
183 wa(ijk) = fthreac(2,nodreac(i))
187 ELSEIF(k == 622)
THEN
188 IF (nodreac(i) /= 0)
THEN
189 wa(ijk) = fthreac(3,nodreac(i))
193 ELSEIF(k == 623)
THEN
194 IF (nodreac(i) /= 0)
THEN
195 wa(ijk) = fthreac(4,nodreac(i))
199 ELSEIF(k == 624)
THEN
200 IF (nodreac(i) /= 0)
THEN
201 wa(ijk) = fthreac(5,nodreac(i))
205 ELSEIF(k == 625)
THEN
206 IF (nodreac(i) /= 0)
THEN
207 wa(ijk) = fthreac(6,nodreac(i))
211 ELSEIF(k == 626)
THEN
212 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0
THEN
217 ELSEIF(k == 627)
THEN
218 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
223 ELSEIF(k == 628)
THEN
224 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
229 ELSEIF(k == 629)
THEN
232 IF(noda_surf(i) > zero)
THEN
233 wa(ijk) = noda_pext(i) / noda_surf(i)
237 ELSEIF(k == 630)
THEN
239 wa(ijk) = pinch_data%APINCH(1,i)
243 ELSEIF(k == 631)
THEN
245 wa(ijk) = pinch_data%APINCH(2,i)
249 ELSEIF(k == 632)
THEN
251 wa(ijk) = pinch_data%APINCH(3,i)
255 ELSEIF(k == 633)
THEN
257 wa(ijk) = pinch_data%VPINCH(1,i)
261 ELSEIF(k == 634)
THEN
263 wa(ijk) = pinch_data%VPINCH(2,i)
267 ELSEIF(k == 635)
THEN
269 wa(ijk) = pinch_data%VPINCH(3,i)
273 ELSEIF(k == 636)
THEN
275 wa(ijk) = pinch_data%DPINCH(1,i)
279 ELSEIF(k == 637)
THEN
281 wa(ijk) = pinch_data%DPINCH(2,i)
285 ELSEIF(k == 638)
THEN
287 wa(ijk) = pinch_data%DPINCH(3,i)
296 ELSEIF(isk<=numskw+1+nsubmod)
THEN
299 DO l=iadv,iadv+nvar-1
304 wa(ijk) = d(1,i)*skew(1,isk) + d(2,i)*skew(2,isk) + d(3,i)*skew(3,isk)
306 wa(ijk) = d(1,i)*skew(4,isk) + d(2,i)*skew(5,isk) + d(3,i)*skew(6,isk)
308 wa(ijk) = d(1,i)*skew(7,isk) + d(2,i)*skew(8,isk) + d(3,i)*skew(9,isk)
310 wa(ijk) = v(1,i)*skew(1,isk) + v(2,i)*skew(2,isk) + v(3,i)*skew(3,isk)
312 wa(ijk) = v(1,i)*skew(4,isk) + v(2,i)*skew(5,isk) + v(3,i)*skew(6,isk)
314 wa(ijk) = v(1,i)*skew(7,isk) + v(2,i)*skew(8,isk) + v(3,i)*skew(9,isk)
316 wa(ijk) = a(1,i)*skew(1,isk) + a(2,i)*skew(2,isk) + a(3,i)*skew(3,isk)
318 wa(ijk) = a(1,i)*skew(4,isk) + a(2,i)*skew(5,isk) + a(3,i)*skew(6,isk)
320 wa(ijk) = a(1,i)*skew(7,isk) + a(2,i)*skew(8,isk) + a(3,i)*skew(9,isk)
322 wa(ijk) = vr(1,i)*skew(1,isk) + vr(2,i)*skew(2,isk) + vr(3,i)*skew(3,isk)
324 wa(ijk) = vr(1,i)*skew(4,isk) + vr(2,i)*skew(5,isk) + vr(3,i)*skew(6,isk)
326 wa(ijk) = vr(1,i)*skew(7,isk) + vr(2,i)*skew(8,isk) + vr(3,i)*skew(9,isk)
328 wa(ijk) = ar(1,i)*skew(1,isk) + ar(2,i)*skew(2,isk) + ar(3,i)*skew(3,isk)
330 wa(ijk) = ar(1,i)*skew(4,isk) + ar(2,i)*skew(5,isk) + ar(3,i)*skew(6,isk)
332 wa(ijk) = ar(1,i)*skew(7,isk) + ar(2,i)*skew(8,isk) + ar(3,i)*skew(9,isk)
334 wa(ijk) = x(1,i)*skew(1,isk) + x(2,i)*skew(2,isk) + x(3,i)*skew(3,isk)
336 wa(ijk) = x(1,i)*skew(4,isk) + x(2,i)*skew(5,isk) + x(3,i)*skew(6,isk)
338 wa(ijk) = x(1,i)*skew(7,isk) + x(2,i)*skew(8,isk) + x(3,i)*skew(9,isk)
342 ELSEIF(k == 620)
THEN
343 IF (nodreac(i) /= 0)
THEN
344 wa(ijk) = fthreac(1,nodreac(i))*skew(1,isk)
345 . + fthreac(2,nodreac(i))*skew(2,isk)
346 . + fthreac(3,nodreac(i))*skew(3,isk)
350 ELSEIF(k == 621)
THEN
351 IF (nodreac(i) /= 0)
THEN
352 wa(ijk) = fthreac(1,nodreac(i))*skew(4,isk)
353 . + fthreac(2,nodreac(i))*skew(5,isk)
354 . + fthreac(3,nodreac(i))*skew(6,isk)
358 ELSEIF(k == 622)
THEN
359 IF (nodreac(i) /= 0)
THEN
360 wa(ijk) = fthreac(1,nodreac(i))*skew(7,isk)
361 . + fthreac(2,nodreac(i))*skew(8,isk)
362 . + fthreac(3,nodreac(i))*skew(9,isk)
366 ELSEIF(k == 623)
THEN
367 IF (nodreac(i) /= 0)
THEN
368 wa(ijk) = fthreac(4,nodreac(i))*skew(1,isk)
369 . + fthreac(5,nodreac(i))*skew(2,isk)
370 . + fthreac(6,nodreac(i))*skew(3,isk)
374 ELSEIF(k == 624)
THEN
375 IF (nodreac(i) /= 0)
THEN
376 wa(ijk) = fthreac(4,nodreac(i))*skew(4,isk)
377 . + fthreac(5,nodreac(i))*skew(5,isk)
378 . + fthreac(6,nodreac(i))*skew(6,isk)
382 ELSEIF(k == 625)
THEN
383 IF (nodreac(i) /= 0)
THEN
384 wa(ijk) = fthreac(4,nodreac(i))*skew(7,isk)
385 . + fthreac(5,nodreac(i))*skew(8,isk)
386 . + fthreac(6,nodreac(i))*skew(9,isk)
390 ELSEIF(k == 626)
THEN
391 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
392 wa(ijk) = dr(1,i)*skew(1,isk) + dr(2,i)*skew(2,isk) + dr(3,i)*skew(3,isk)
396 ELSEIF(k == 627)
THEN
397 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
398 wa(ijk) = dr(1,i)*skew(4,isk) + dr(2,i)*skew(5,isk) + dr(3,i)*skew(6,isk)
402 ELSEIF(k == 628)
THEN
403 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot
THEN
404 wa(ijk) = dr(1,i)*skew(7,isk) + dr(2,i)*skew
408 ELSEIF(k == 629)
THEN
411 IF(noda_surf(i) > zero)
THEN
412 wa(ijk) = noda_pext(i) / noda_surf(i)
416 ELSEIF(k == 630)
THEN
418 wa(ijk) = pinch_data%APINCH(1,i)*skew(1,isk) +pinch_data%APINCH(2,i)*skew(2,isk)
419 . +pinch_data%APINCH(3,i)*skew(3,isk)
423 ELSEIF(k == 631)
THEN
430 ELSEIF(k == 632)
THEN
432 wa(ijk) = pinch_data%APINCH(1,i)*skew(7,isk) +pinch_data%APINCH(2,i)*skew(8,isk)
433 . +pinch_data%APINCH(3,i)*skew(9,isk)
437 ELSEIF(k == 633)
THEN
439 wa(ijk) = pinch_data%VPINCH(1,i)*skew(1,isk) +pinch_data%VPINCH(2,i)*skew
440 . +pinch_data%VPINCH(3,i)*skew(3,isk)
444 ELSEIF(k == 634)
THEN
446 wa(ijk) = pinch_data%VPINCH(1,i)*skew(4,isk) +pinch_data%VPINCH(2,i)*skew(5,isk)
447 . +pinch_data%VPINCH(3,i)*skew(6,isk)
451 ELSEIF(k == 635)
THEN
453 wa(ijk) = pinch_data%VPINCH(1,i)*skew(7,isk) +pinch_data%VPINCH(2,i)*skew(8,isk)
454 . +pinch_data%VPINCH(3,i)*skew(9,isk)
458 ELSEIF(k == 636)
THEN
460 wa(ijk) = pinch_data%DPINCH(1,i)*skew(1,isk) +pinch_data%DPINCH(2,i)*skew(2,isk)
461 . +pinch_data%DPINCH(3,i)*skew(3,isk)
465 ELSEIF(k == 637)
THEN
467 wa(ijk) = pinch_data%DPINCH(1,i)*skew(4,isk) +pinch_data%DPINCH(2,i)*skew(5,isk)
468 . +pinch_data%DPINCH(3,i)*skew(6,isk)
472 ELSEIF(k == 638)
THEN
474 wa(ijk) = pinch_data%DPINCH(1,i)*skew(7,isk) +pinch_data%DPINCH(2,i)*skew(8,isk)
475 . +pinch_data%DPINCH(3,i)*skew(9,isk)
487 ifra=isk-(numskw+1+nsubmod)-
min(iun,nspcond)*numsph
489 1 x(1,i) ,d(1,i) ,v(1,i) ,a(1,i) ,vr(1,i) ,
490 2 ar(1,i) ,xframe(1,ifra),xframe(10,ifra),
491 . xframe(34,ifra) ,xframe(31,ifra) ,
492 3 xframe(28,ifra) ,xl ,dl ,vl ,al ,
495 DO l=iadv,iadv+nvar-1
538 IF (itherm_fe /= 0)
THEN
560 isk = 1 + ithbuf(j+nn)
562 IF(.NOT. condition) condition = (weight(i) == 0)
564 DO l=iadv,iadv+nvar-1
570 DO l=iadv,iadv+nvar-1
601 IF (itherm_fe /= 0)
THEN
606 ELSEIF(k == 620)
THEN
607 IF (nodreac(i) /= 0)
THEN
608 wa(ijk) = fthreac(1,nodreac(i))
612 ELSEIF(k == 621)
THEN
613 IF (nodreac(i) /= 0)
THEN
614 wa(ijk) = fthreac(2,nodreac(i))
618 ELSEIF(k == 622)
THEN
619 IF (nodreac(i) /= 0)
THEN
620 wa(ijk) = fthreac(3,nodreac(i))
624 ELSEIF(k == 623)
THEN
625 IF (nodreac(i) /= 0)
THEN
626 wa(ijk) = fthreac(4,nodreac(i))
630 ELSEIF(k == 624)
THEN
631 IF (nodreac(i) /= 0)
THEN
632 wa(ijk) = fthreac(5,nodreac(i))
636 ELSEIF(k == 625)
THEN
637 IF (nodreac(i) /= 0)
THEN
638 wa(ijk) = fthreac(6,nodreac(i))
642 ELSEIF(k == 626)
THEN
643 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND.iroddl/=0 )
THEN
648 ELSEIF(k == 627)
THEN
649 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
654 ELSEIF(k == 628)
THEN
655 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
660 ELSEIF(k == 629)
THEN
663 IF(noda_surf(i) > zero)
THEN
664 wa(ijk) = noda_pext(i) / noda_surf(i)
673 ELSEIF(isk<=numskw+1+nsubmod)
THEN
677 DO l=iadv,iadv+nvar-1
682 wa(ijk) = d(1,i)*skew(1,isk) + d(2,i)*skew(2,isk) + d(3,i)*skew(3,isk)
684 wa(ijk) = d(1,i)*skew(4,isk) + d(2,i)*skew(5,isk) + d(3,i)*skew(6,isk)
686 wa(ijk) = d(1,i)*skew(7,isk) + d(2,i)*skew(8,isk) + d(3,i)*skew(9,isk)
688 wa(ijk) = v(1,i)*skew(1,isk) + v(2,i)*skew(2,isk) + v(3,i)*skew(3,isk)
690 wa(ijk) = v(1,i)*skew(4,isk) + v(2,i)*skew(5,isk) + v(3,i)*skew(6,isk)
692 wa(ijk) = v(1,i)*skew(7,isk) + v(2,i)*skew(8,isk) + v(3,i)*skew(9,isk)
694 wa(ijk) = a(1,i)*skew(1,isk) + a(2,i)*skew(2,isk) + a(3,i)*skew(3,isk)
696 wa(ijk) = a(1,i)*skew(4,isk) + a(2,i)*skew(5,isk) + a(3,i)*skew(6,isk)
698 wa(ijk) = a(1,i)*skew(7,isk) + a(2,i)*skew(8,isk) + a(3,i)*skew(9,isk)
700 wa(ijk) = x(1,i)*skew(1,isk) + x(2,i)*skew(2,isk) + x(3,i)*skew(3,isk)
702 wa(ijk) = x(1,i)*skew(4,isk) + x(2,i)*skew(5,isk) + x(3,i)*skew(6,isk)
704 wa(ijk) = x(1,i)*skew(7,isk) + x(2,i)*skew(8,isk) + x(3,i)*skew(9,isk)
708 IF (itherm_fe /= 0)
THEN
713 ELSEIF(k == 620)
THEN
714 IF (nodreac(i) /= 0)
THEN
715 wa(ijk) = fthreac(1,nodreac(i))*skew(1,isk) + fthreac(2,nodreac(i))*skew(2,isk)
716 . + fthreac(3,nodreac(i))*skew(3,isk)
720 ELSEIF(k == 621)
THEN
721 IF (nodreac(i) /= 0)
THEN
722 wa(ijk) = fthreac(1,nodreac(i))*skew(4,isk) + fthreac(2,nodreac(i))*skew(5,isk)
723 . + fthreac(3,nodreac(i))*skew(6,isk)
727 ELSEIF(k == 622)
THEN
728 IF (nodreac(i) /= 0)
THEN
729 wa(ijk) = fthreac(1,nodreac(i))*skew(7,isk) + fthreac(2,nodreac(i))*skew(8,isk)
730 . + fthreac(3,nodreac(i))*skew(9,isk)
734 ELSEIF(k == 623)
THEN
735 IF (nodreac(i) /= 0)
THEN
736 wa(ijk) = fthreac(4,nodreac(i))*skew(1,isk) + fthreac(5,nodreac(i))*skew(2,isk)
737 . + fthreac(6,nodreac(i))*skew(3,isk)
741 ELSEIF(k == 624)
THEN
742 IF (nodreac(i) /= 0)
THEN
743 wa(ijk) = fthreac(4,nodreac(i))*skew(4,isk) + fthreac(5,nodreac(i))*skew(5,isk)
744 . + fthreac(6,nodreac(i))*skew(6,isk)
748 ELSEIF(k == 625)
THEN
749 IF (nodreac(i) /= 0)
THEN
750 wa(ijk) = fthreac(4,nodreac(i))*skew(7,isk) + fthreac(5,nodreac(i))*skew(8,isk)
751 . + fthreac(6,nodreac(i))*skew(9,isk)
755 ELSEIF(k == 626)
THEN
756 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
757 wa(ijk) = dr(1,i)*skew(1,isk) + dr(2,i)*skew(2,isk) + dr(3,i)*skew(3,isk)
761 ELSEIF(k == 627)
THEN
762 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND. iroddl/=0 )
THEN
763 wa(ijk) = dr(1,i)*skew(4,isk) + dr(2,i)*skew(5,isk) + dr(3,i)*skew(6,isk)
767 ELSEIF(k == 628)
THEN
768 IF ((idrot == 1 .OR. isecut>0 .OR. iisrot>0 .OR. impose_dr>0) .AND.iroddl/=0 )
THEN
769 wa(ijk) = dr(1,i)*skew(7,isk) + dr(2,i)*skew(8,isk) + dr(3,i)*skew(9,isk)
773 ELSEIF(k == 629)
THEN
776 IF(noda_surf(i) > zero)
THEN
777 wa(ijk) = noda_pext(i) / noda_surf(i)
789 ifra=isk-(numskw+1+nsubmod)-
min(iun,nspcond)*numsph
791 1 x(1,i) ,d(1,i) ,v(1,i) ,a(1,i) ,vrg ,
792 2 arg , xframe(1,ifra),xframe(10,ifra),
793 . xframe(34,ifra) ,xframe(31,ifra) ,
794 3 xframe(28,ifra) ,xl ,dl ,vl ,al ,
797 DO l=iadv,iadv+nvar-1
828 IF (itherm_fe /= 0)
THEN