42 1 ICODT ,ICODR ,ISKEW ,IBFV ,NPC ,
43 2 TF ,VEL ,NSENSOR,SENSOR_TAB,XFRAME ,
44 3 RBY ,X ,SKEW ,LPBY ,NPBY ,
45 4 ITAB ,WEIGHT,MS ,IN ,NRBYAC,
46 5 IRBYAC,NSS ,ISS ,IPARI ,INTBUF_TAB,
47 6 NINT2 ,IINT2 ,IAINT2 ,NSS2 ,
48 7 ISS2 ,NDDLI ,NNZI ,IADI ,JDII ,
49 8 DIAG_I ,LT_I ,IDDLI ,NDDL ,IADK ,
50 9 JDIK ,IKC ,DIAG_K,LT_K ,IDDL ,
51 A NUM_IMP,NS_IMP,NE_IMP,INDEX2,NDOFI ,
52 B ITOK ,UD ,LB ,GAPMIN,DIRUL ,
53 C NT_RW ,NUM_IMP1,IRBE3,LRBE3,FRBE3 ,
54 D NSS3 ,ISS3 ,IRBE2 ,LRBE2,NSB2 ,
66#include "implicit_f.inc"
77 INTEGER ,
INTENT(IN) :: NSENSOR
78 INTEGER NPC(*),IBFV(NIFV,*),DIRUL(*),
79 . ICODT(*),ICODR(*),ISKEW(*),ITOK(*),NDDL,NT_RW
80 INTEGER WEIGHT(*),LPBY(*),NPBY(NNPBY,*),ITAB(*),
81 . IPARI(NPARI,*), NRBYAC,IRBYAC(*),
82 . IDDL(*),IKC(*),NSS(*),ISS(*),NSS2(*),ISS2(*),
83 . IADK(*),JDIK(*),NDDLI,NNZI,IADI(*),JDII(*),
84 . IDDLI(*),NDOFI(*),NINT2 ,IINT2(*),IAINT2(*)
85 INTEGER NUM_IMP(*),NS_IMP(*),NE_IMP(*),INDEX2(*),NUM_IMP1(*)
86 INTEGER IRBE3(NRBE3L,*),LRBE3(*),NSS3(*),ISS3(*),
87 . IRBE2(*),LRBE2(*),NSB2(*),ISB2(*)
89 . A(3,*),V(3,*),RBY(NRBY,*),X(3,*) ,SKEW(*),IN(*),MS(*)
91 . tf(*), vel(lfxvelr,*),diag_k(*),lt_k(*),
92 . diag_i(*),lt_i(*),lb(*),ud(3,*),gapmin,xframe(nxframe,*),
94 TYPE(intbuf_struct_) INTBUF_TAB(*)
95 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) ,
INTENT(IN) :: SENSOR_TAB
99 INTEGER I,J,N, IAD,NTY,I_INT7,NUM_IMP0,
100 . lrem(ninter), isens
112 IF (num_imp(n)==0) cycle
117 ts = sensor_tab(isens)%TSTART
123 CALL i5ke3( a,v ,ms ,
124 1 ipari(1,n),intbuf_tab(n) ,x ,
125 2 num_imp(n),ns_imp(iad),ne_imp(iad) ,
126 3 iddli ,diag_i ,lt_i , iadi ,jdii )
139 ts = sensor_tab(isens)%TSTART
145 CALL i7ke3( a,v ,ms ,
146 1 ipari ,intbuf_tab(n) ,x ,n ,
147 2 num_imp1(n),ns_imp1(iad),ne_imp1(iad) ,ind_imp1(iad),
148 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
154 1 ipari(1,n),intbuf_tab(n) ,x ,n ,
155 2 num_imp1(n),ns_imp1(iad),ne_imp1(iad) ,ind_imp1(iad),
156 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
163 ts = sensor_tab(isens)%TSTART
170 1 ipari(1,n),intbuf_tab(n) ,x ,n ,
171 2 num_imp1(n),ns_imp1(iad),ne_imp1(iad) ,
172 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
180 ts = sensor_tab(isens)%TSTART
192 1 ipari ,intbuf_tab(n) ,x ,n ,
194 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
195 4 lrem(n) ,intbuf_tab_imp(n))
204 num_imp0 = num_imp(n)-num_imp1(n)
209 ts = sensor_tab(isens)%TSTART
215 CALL i7ke3( a,v ,ms ,
216 1 ipari ,intbuf_tab(n) ,x ,n ,
217 2 num_imp0 ,ns_imp1(iad),ne_imp1(iad) ,ind_imp1(iad),
218 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
224 1 ipari(1,n),intbuf_tab(n) ,x ,n ,
225 2 num_imp0 ,ns_imp1(iad),ne_imp1(iad) ,ind_imp1(iad),
226 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
233 ts = sensor_tab(isens)%TSTART
240 1 ipari(1,n),intbuf_tab(n) ,x ,n ,
241 2 num_imp0 ,ns_imp1(iad),ne_imp1(iad) ,
242 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
250 ts = sensor_tab(isens)%TSTART
257 1 ipari ,intbuf_tab(n) ,x ,n ,
259 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
260 4 lrem(n) ,intbuf_tab_imp(n))
272 IF (num_imp(n)==0) cycle
277 ts = sensor_tab(isens)%TSTART
283 CALL i5ke3( a,v ,ms ,
284 1 ipari(1,n),intbuf_tab(n) ,x ,
285 2 num_imp(n),ns_imp(iad),ne_imp(iad) ,
286 3 iddli ,diag_i ,lt_i , iadi ,jdii )
298 ts = sensor_tab(isens)%TSTART
304 CALL i7ke3( a,v ,ms ,
305 1 ipari ,intbuf_tab(n) ,x ,n ,
306 2 num_imp(n),ns_imp(iad),ne_imp(iad) ,index2(iad),
307 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
313 1 ipari(1,n),intbuf_tab(n) ,x ,n ,
314 2 num_imp(n),ns_imp(iad),ne_imp(iad) ,index2(iad),
315 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
322 ts = sensor_tab(isens)%TSTART
329 1 ipari(1,n),intbuf_tab(n) ,x ,n ,
330 2 num_imp(n),ns_imp(iad),ne_imp(iad) ,
331 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
339 ts = sensor_tab(isens)%TSTART
346 1 ipari ,intbuf_tab(n) ,x ,n ,
347 3 iddli ,diag_i ,lt_i , iadi ,jdii ,gapmin ,
348 4 lrem(n) ,intbuf_tab_imp(n))
355 IF(gapmin<zero)
RETURN
356 CALL upd_int_k(icodt ,icodr ,iskew ,ibfv ,npc ,
358 2 rby ,x ,skew ,lpby ,npby ,
359 3 itab ,weight,ms ,in ,nrbyac,
360 4 irbyac,nss ,iss ,ipari ,intbuf_tab,
361 5 nint2 ,iint2 ,iaint2 ,nss2 ,
362 5 iss2 ,nddli ,nnzi ,iadi ,jdii ,
363 6 diag_i ,lt_i ,iddli ,nddl ,iadk ,
364 7 jdik ,ikc ,diag_k,lt_k ,iddl ,
365 8 ndofi ,itok ,ud ,lb ,dirul ,
366 9 nt_rw ,irbe3 ,lrbe3 ,frbe3 ,nss3 ,
367 a iss3 ,irbe2 ,lrbe2 ,nsb2 ,isb2 )
382!|| intbufdef_mod ../common_source/modules/interfaces/intbufdef_mod.f90
383!|| sensor_mod ../common_source/modules/sensor_mod.f90
386 1 IPARI ,INTBUF_TAB,X ,
387 2 V ,VR ,ISENDTO ,IRECVFROM,
388 4 NEWFRONT ,ITASK ,DTK ,ITAB ,
389 5 INTLIST ,NBINTC ,DT_MIN ,MS ,
390 6 NSENSOR ,SENSOR_TAB,MAXDGAP)
399#include "implicit_f.inc"
403#include "com01_c.inc"
404#include "com04_c.inc"
405#include "com08_c.inc"
406#include "param_c.inc"
411 INTEGER ,
INTENT(IN) :: NSENSOR
412 INTEGER IPARI(NPARI,*), ITAB(*),
413 . newfront(*),nbintc,intlist(*),
414 . isendto(ninter+1,*),irecvfrom(ninter+1,*),
417 . x(3,*), v(3,*),vr(3,*),dtk(*),dt_min,ms(*),
420 TYPE(intbuf_struct_) INTBUF_TAB(*)
421 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) :: SENSOR_TAB
425 INTEGER N, KK,LL, RETRI, NBLIST, IFQ,
426 . INACTI, NSNROLD, IAD17, IGN, IGE, NME, NMES,
427 . NELTST ,ITYPTST ,I,NTY, ISENS, INTERACT
430 . xslv_l(18,ninter),xmsr_l(12,ninter),
431 . vslv_l(6,ninter),vmsr_l(6,ninter),
432 . size_t(ninter),dti,fac, ts
494 IF(nty==7.OR.nty==10.OR.nty==18)
THEN
499 IF(nty == 7) isens = ipari(64,n)
501 ts = sensor_tab(isens)%TSTART
509 2 itask ,v ,xslv_l ,xmsr_l,vslv_l,
510 3 vmsr_l,intbuf_tab(n) )
517 ts = sensor_tab(isens)%TSTART
525 2 itask ,v ,xslv_l ,xmsr_l , vslv_l,
526 4 vmsr_l ,intbuf_tab(n) )
531 1 intbuf_tab ,ipari ,newfront ,isendto ,
532 2 irecvfrom,dtk(n) ,itab ,xslv_l ,xmsr_l ,
533 3 vslv_l ,vmsr_l ,size_t ,n ,sensor_tab,
534 4 intlist ,nbintc ,maxdgap ,nsensor )
537 dt_min =
min(dt_min,dtk(n))
556 1 INTBUF_TAB,IPARI ,NEWFRONT,ISENDTO,
557 2 IRCVFROM,DT2T ,ITAB ,XSLV_L ,XMSR_L ,
558 3 VSLV_L ,VMSR_L ,SIZE_T ,N ,SENSOR_TAB,
559 4 INTLIST ,NBINTC ,MAXDGAP,NSENSOR )
568#include "implicit_f.inc"
572#include "param_c.inc"
573#include "com01_c.inc"
574#include "com04_c.inc"
575#include "com08_c.inc"
579 INTEGER ,
INTENT(IN) :: NSENSOR
580 INTEGER IPARI(NPARI,*), NEWFRONT(*), ITAB(*),
581 . ISENDTO(NINTER+1,*) ,IRCVFROM(NINTER+1,*),N,
585 . DT2T,XSLV_L(6,*), XMSR_L(6,*), VSLV_L(6,*),
586 .vmsr_l(6,*), size_t(*),maxdgap(ninter)
588 TYPE(intbuf_struct_) INTBUF_TAB(*)
589 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) :: SENSOR_TAB
593 INTEGER I,J,IAD,K,IADD, NBNEW, LISTNEW(1),
596 . XX,XY,XZ,DIST0,VX,VY,VZ,GAPINF,VV,DTI,
598 . STARTT, STOPT, TZINF(1), TS,PMAX(NINTER)
615 IF(nty/=17.AND. intab(nbintc,intlist,n))
THEN
619 IF(nty == 7.OR.nty == 11.OR.nty == 24.OR.nty == 21.OR.
620 . nty == 5.OR.nty == 19 ) isens = ipari(64,i)
622 ts = sensor_tab(isens)%TSTART
623 IF (tt>=ts) interact = 1
625 startt = intbuf_tab(i)%VARIABLES(3)
626 stopt = intbuf_tab(i)%VARIABLES(11)
627 IF (startt<=tt.AND.tt<=stopt) interact = 1
633 tzinf(nbnew) = intbuf_tab(i)%VARIABLES(8)
639 1 isendto,ircvfrom,newfront,xslv_l,xmsr_l,
640 2 vslv_l ,vmsr_l ,listnew ,nbnew ,tzinf ,
641 3 size_t ,ipari ,pmax ,maxdgap)
648 intbuf_tab(i)%VARIABLES(8)=tzinf(1)
650 IF (newfront(i)<0)
THEN
651 IF(nty==7.OR.nty==10)
THEN
653 1 newfront(i) ,intbuf_tab(i)%I_STOK
654 2 intbuf_tab(i)%CAND_N,intbuf_tab(i)%CAND_E,
655 3 ipari(5,i),i,isendto,ircvfrom,intbuf_tab(i)%NSV,
659 1 newfront(i) ,intbuf_tab(i)%I_STOK(1) ,
660 2 intbuf_tab(i)%CAND_N , intbuf_tab(i)%GAP_S,
661 3 ipari(3,i),i,isendto,ircvfrom, intbuf_tab(i)%IRECTS,
667 intbuf_tab(i)%VARIABLES(5) = intbuf_tab(i)%VARIABLES(8)-
668 - intbuf_tab(i)%VARIABLES(2)
670 xx=
max(xslv_l(1,i)-xmsr_l(4,i),xmsr_l(1,i)-xslv_l(4,i),zero)
671 xy=
max(xslv_l(2,i)-xmsr_l(5,i),xmsr_l(2,i)-xslv_l(5,i),zero)
672 xz=
max(xslv_l(3,i)-xmsr_l(6,i),xmsr_l(3,i)-xslv_l(6,i),zero)
673 dist0 = intbuf_tab(i)%VARIABLES(5) - sqrt(xx**2+xy**2+xz**2)
677 vx=
max(vslv_l(1,i)-vmsr_l(4,i),vmsr_l(1,i)-vslv_l(4,i),zero)
678 vy=
max(vslv_l(2,i)-vmsr_l(5,i),vmsr_l(2,i)-vslv_l(5,i),zero)
679 vz=
max(vslv_l(3,i)-vmsr_l(6,i),vmsr_l(3,i)-vslv_l(6,i),zero)
680 vv=sqrt(vx**2+vy**2+vz**2)
682 gapinf = intbuf_tab(i)%VARIABLES(6)
683 IF (gapinf==zero) gapinf = intbuf_tab(i)%VARIABLES(2)
685 gapinf =gapinf+
max(zero,dist0)
686 dti = onep8*gapinf/vv
688 IF(dti<dt2t) dt2t = dti
691 intbuf_tab(i)%VARIABLES(5) = -one
719 1 IPARI ,INTBUF_TAB ,X ,D ,
720 2 MS ,ITAB ,IN ,D_IMP ,DR_IMP ,
721 3 IMSCH ,I2MSCH ,ISIZXV,ILENXV ,IGRBRIC ,
722 4 ISLEN7,IRLEN7 ,ISLEN11,IRLEN11,ISLEN17 ,
723 5 IRLEN17,IRLEN7T,ISLEN7T,IAD_ELEM,FR_ELEM ,
724 6 NBINTC,INTLIST,ITASK ,KINET ,NEWFRONT,
725 7 NUM_IMP,NS_IMP,NE_IMP,IND_IMP ,ISENDTO ,
726 8 IRECVFROM,WEIGHT ,IXS ,TEMP ,
727 9 DT2PREV,WA,NUM_IMP1,IRLEN20,ISLEN20,
728 A IRLEN20T,ISLEN20T,IRLEN20E,ISLEN20E,
729 B IKINE,DIAG_SMS,COUNT_REMSLV,COUNT_REMSLVE,
730 C NSENSOR,SENSOR_TAB,XDP,H3D_DATA,MULTI_FVM,FORNEQS,
731 D MAXDGAP,INTERFACES,GLOB_THERM)
747#include "implicit_f.inc"
751#include "com01_c.inc"
752#include "com04_c.inc"
753#include "com08_c.inc"
754#include "param_c.inc"
756#include "impl1_c.inc"
760 type(output_) :: output
761 TYPE(TIMER_) :: TIMERS
762 INTEGER ,
INTENT(IN) :: NSENSOR
763 INTEGER IPARI(NPARI,*), ITAB(*),
764 . NEWFRONT(*),NBINTC,INTLIST(*),
765 . ISENDTO(NINTER+1,*),IRECVFROM(NINTER+1,*),
766 . ITASK,IMSCH ,I2MSCH ,ISIZXV,ILENXV,,ISLEN20,
767 . IRLEN20T,ISLEN20T,IRLEN20E,ISLEN20E
768 INTEGER ISLEN7,IRLEN7 ,ISLEN11,IRLEN11,ISLEN17,
769 . IRLEN17,IRLEN7T,,IAD_ELEM(*),FR_ELEM(*) ,
770 . WEIGHT(*),IXS(*) ,NUM_IMP1(*),
771 . num_imp(*),ns_imp(*),ne_imp(*),ind_imp(*),
772 . kinet(*),ikine(*),count_remslv(*),
775 DOUBLE PRECISION XDP(3,*)
778 . x(3,*), d(3,*),ms(*),wa(*),
779 . dt2prev, temp(*),d_imp(3,*),dr_imp(3,*),in(*),diag_sms(*),
780 . forneqs(3,*),maxdgap(ninter)
782 TYPE(intbuf_struct_) INTBUF_TAB(*)
783 TYPE(H3D_DATABASE) :: H3D_DATA
784 TYPE(MULTI_FVM_STRUCT),
INTENT(INOUT) :: MULTI_FVM
786 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
787 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) :: SENSOR_TAB
788 TYPE (INTERFACES_) ,
INTENT(IN) :: INTERFACES
789 type (glob_therm_) ,
INTENT(IN) :: GLOB_THERM
793 INTEGER N, KK,LL, RETRI, NBLIST, IFQ,
794 . INACTI, NSNROLD, IAD17, IGN, IGE, NME, NMES,
795 . NB ,ILIST(1) ,I,NTY,KD(50), KFI,IAD,NSN,NMN,
796 . jfi,jd(50),idns,idnm,idstif,nthr_cp,isens ,
800 . dtk(ninter),v(3,numnod),vr(3,numnod),
801 . x_tmp(3,numnod),dti,fac,fac1,dt_min,dx,dy,dz,
811 IF (nthread>1) nthread = 1
814 v(1,i)=d_imp(1,i)*dti
815 v(2,i)=d_imp(2,i)*dti
816 v(3,i)=d_imp(3,i)*dti
820 vr(1,i)=dr_imp(1,i)*dti
821 vr(2,i)=dr_imp(2,i)*dti
822 vr(3,i)=dr_imp(3,i)*dti
826 1 ipari ,intbuf_tab ,x ,
827 2 v ,vr ,isendto ,irecvfrom,
828 4 newfront ,itask ,dtk ,itab ,
829 5 intlist ,nbintc ,dt_min ,ms ,
830 6 nsensor ,sensor_tab,maxdgap)
831 IF (dt_min >= dt2)
GOTO 1000
847 IF (nty/=7.AND.nty/=10.AND.nty/=11)
GOTO 999
848 IF (dtk(n)>=dt2)
GOTO 999
854 IF(nty == 7.OR.nty == 11) isens = ipari(64,n)
856 ts = sensor_tab(isens)%TSTART
857 IF (tt>=ts) interact = 1
859 startt = intbuf_tab(n)%VARIABLES(3)
860 stopt = intbuf_tab(n)%VARIABLES(11)
861 IF (startt<=tt.AND.tt<=stopt) interact = 1
863 IF(interact/=0)
GOTO 999
871 1 x ,intbuf_tab(n)%NSV,intbuf_tab(n)%MSR,nsn ,nmn ,
872 2 x_tmp ,d_imp ,dr_imp ,v ,vr ,
876 1 x ,intbuf_tab(n)%NSV ,intbuf_tab(n)%MSR,nsn ,nmn ,
877 2 intbuf_tab(n)%STFNS,x_tmp ,d_imp ,dr_imp ,v ,
881 1 ipari ,intbuf_tab,x_tmp ,d ,
882 2 v ,ms ,itab ,vr ,in ,
883 3 imsch ,i2msch ,isizxv,ilenxv ,igrbric ,
884 4 islen7,irlen7 ,islen11,irlen11,islen17,
885 5 irlen17,irlen7t,islen7t,iad_elem,fr_elem ,
886 6 nb ,ilist ,itask ,kinet,newfront,
887 7 num_imp,ns_imp,ne_imp,ind_imp,iad ,
888 8 isendto ,irecvfrom ,retri,weight,
889 9 ixs ,temp ,dt2prev,wa ,n ,nty,
890 a irlen20,islen20,irlen20t,islen20t,irlen20e,
891 b islen20e,ikine,diag_sms,count_remslv,count_remslve,
892 c sensor_tab,xdp ,h3d_data, multi_fvm ,forneqs,
893 d interfaces,nsensor,glob_therm)
899 CALL cp_inttd(nt_imp1,num_imp ,ns_imp,ne_imp,ind_imp,num_imp1)
901 IF (nthr_cp>1) nthread = nthr_cp
911 1 X ,NSV ,MSR ,NSN ,NMN ,
912 1 X_TMP ,D ,DR ,V ,VR ,
917#include "implicit_f.inc"
921#include "com01_c.inc"
925 INTEGER NSN,NMN,NSV(*),MSR(*)
927 . X(3,*),V(3,*),VR(3,*),D(3,*),DR(3,*),
928 . X_TMP(3,*),FACD,FACV
943 x_tmp(1,i)=x(1,i) + dx
944 x_tmp(2,i)=x(2,i) + dy
945 x_tmp(3,i)=x(3,i) + dz
957 x_tmp(1,i)=x(1,i) + dx
958 x_tmp(2,i)=x(2,i) + dy
959 x_tmp(3,i)=x(3,i) + dz
993 1 X ,NSV ,MSR ,NSN ,NMN ,
994 1 STFN ,X_TMP ,D ,DR ,V ,
999#include "implicit_f.inc"
1003#include "com01_c.inc"
1007 INTEGER NSN,NMN,NSV(*),MSR(*)
1009 . x(3,*),v(3,*),vr(3,*),d(3,*),dr(3,*),
1010 . x_tmp(3,*),facd,facv,stfn(*)
1020 IF (stfn(j)/=zero)
THEN
1025 x_tmp(1,i)=x(1,i) + dx
1026 x_tmp(2,i)=x(2,i) + dy
1027 x_tmp(3,i)=x(3,i) + dz
1039 x_tmp(1,i) = x(1,i) + dx
1040 x_tmp(2,i) = x(2,i) + dy
1041 x_tmp(3,i) = x(3,i) + dz
1042 v(1,i) = d(1,i)*facv
1043 v(2,i) = d(2,i)*facv
1044 v(3,i) = d(3,i)*facv
1050 IF (stfn(j)/=zero)
THEN
1052 vr(1,i)=dr(1,i)*facv
1053 vr(2,i)=dr(2,i)*facv
1054 vr(3,i)=dr(3,i)*facv
1060 vr(1,i)=dr(1,i)*facv
1061 vr(2,i)=dr(2,i)*facv
1062 vr(3,i)=dr(3,i)*facv
1069!||====================================================================
1101 1 IPARI ,INTBUF_TAB ,X ,D ,
1102 2 V ,MS ,ITAB ,VR ,IN ,
1103 3 IMSCH ,I2MSCH ,ISIZXV,ILENXV ,IGRBRIC ,
1104 4 ISLEN7,IRLEN7 ,ISLEN11,IRLEN11,ISLEN17,
1105 5 IRLEN17,IRLEN7T,ISLEN7T,IAD_ELEM,FR_ELEM ,
1106 6 NBINTC,INTLIST,ITASK ,KINET,NEWFRONT,
1107 7 NUM_IMP,NS_IMP,NE_IMP,IND_IMP,IAD ,
1108 8 ISENDTO ,IRECVFROM ,RETRI,WEIGHT,
1109 9 IXS ,TEMP ,DT2PREV,WAG ,N ,NTY ,
1110 A IRLEN20,ISLEN20,IRLEN20T,ISLEN20T,IRLEN20E,
1111 B ISLEN20E,IKINE,DIAG_SMS,COUNT_REMSLV,COUNT_REMSLVE,
1112 C SENSOR_TAB,XDP,H3D_DATA,MULTI_FVM,FORNEQS,
1113 D INTERFACES,NSENSOR ,GLOB_THERM)
1126 use element_mod ,
only : nixs
1130#include "implicit_f.inc"
1134#include "com01_c.inc"
1135#include "com04_c.inc"
1136#include "com08_c.inc"
1137#include "param_c.inc"
1141 TYPE(output_) :: output
1142 TYPE(TIMER_) :: TIMERS
1143 INTEGER ,
INTENT(IN) :: NSENSOR
1144 INTEGER IPARI(NPARI,*), ITAB(*),
1145 . NEWFRONT(*),NBINTC,INTLIST(*),IKINE(*),
1146 . ISENDTO(NINTER+1,*),IRECVFROM(NINTER+1,*),
1147 . ITASK,IMSCH ,I2MSCH ,ISIZXV,ILENXV,COUNT_REMSLV(*),
1149 INTEGER ISLEN7,IRLEN7 ,ISLEN11,IRLEN11,ISLEN17,
1150 . IRLEN20,ISLEN20,IRLEN20T,ISLEN20T,IRLEN20E,ISLEN20E,
1151 . IRLEN17,IRLEN7T,ISLEN7T,IAD_ELEM(*),FR_ELEM(*) ,
1152 . WEIGHT(*),IAD,N,IXS(*) ,
1153 . NUM_IMP(*),NS_IMP(*),NE_IMP(*),IND_IMP(*),
1156 DOUBLE PRECISION XDP(3,*)
1159 . X(3,*), D(3,*),V(*),MS(*),WAG(*),
1160 . VR(3,*),DT2PREV, TEMP(*),IN(*), DIAG_SMS(*),FORNEQS(3,*)
1162 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
1163 TYPE(H3D_DATABASE) :: H3D_DATA
1164 TYPE(MULTI_FVM_STRUCT),
INTENT(INOUT) ::
1166 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
1167 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) :: SENSOR_TAB
1168 TYPE (INTERFACES_) ,
INTENT(IN) :: INTERFACES
1169 type (glob_therm_),
INTENT(IN) :: GLOB_THERM
1173 INTEGER KK,LL, RETRI, NBLIST, IFQ,
1174 . inacti, nsnrold, iad17, ign, ige, nme, nmes,
1175 . i,l1,l2,l3,jtask,lindmax,ibid ,ibidlen,nrtm_t,
1176 . eshift,renum(numnod), nsnfiold(nspmd), isens
1178 INTEGER LSKYI_SMS_NEW
1193 2 in ,iad_elem,fr_elem,weight,imsch,
1194 3 d ,isizxv ,ilenxv ,xdp)
1200 2 imsch ,i2msch ,dt2prev ,intlist ,nbintc ,
1201 3 islen7 ,irlen7 ,islen11 ,irlen11 ,islen17 ,
1202 4 irlen17 ,ixs ,ixs(l3) ,nsensor ,
1203 5 igrbric ,temp ,1 ,irlen7t ,islen7t ,
1204 6 irlen20 ,islen20,irlen20t,islen20t,irlen20e,
1205 7 islen20e,ikine ,diag_sms,sensor_tab,intbuf_tab,int24e2euse,
1206 8 forneqs ,multi_fvm,interfaces,ibid)
1209 2 imsch ,i2msch ,dt2prev ,intlist ,nbintc ,
1210 3 islen7 ,irlen7 ,islen11 ,irlen11 ,islen17 ,
1211 4 irlen17 ,ixs ,ixs(l3) ,nsensor ,
1212 5 igrbric ,temp ,2 ,irlen7t ,islen7t ,
1213 6 irlen20 ,islen20,irlen20t,islen20t,irlen20e,
1214 7 islen20e,ikine ,diag_sms,sensor_tab,intbuf_tab,int24e2euse,
1215 8 forneqs ,multi_fvm,interfaces,ibid)
1219 IF(nty==7.OR.nty==18)
THEN
1223 ts = sensor_tab(isens)%TSTART
1231 2 ms ,n ,itask ,weight ,
1232 3 isendto ,irecvfrom ,retri ,iad_elem,fr_elem ,
1233 4 itab ,kinet ,temp ,nrtm_t ,renum ,
1234 5 nsnfiold,eshift ,ibid ,ibid ,ibid ,
1235 6 intbuf_tab,h3d_data,ixs,multi_fvm,glob_therm)
1240 1 npari ,ipari(1,n),x ,v ,
1241 2 ms ,n ,itask ,wag ,weight ,
1242 3 isendto ,irecvfrom ,retri ,iad_elem,fr_elem ,
1243 4 nrtm_t ,renum ,nsnfiold ,eshift ,ibid ,
1244 5 ibid ,ibid ,itab ,intbuf_tab ,
1245 6 h3d_data ,glob_therm )
1250 ts = sensor_tab(isens)%TSTART
1258 2 ms ,n ,itask ,weight ,isendto ,
1259 3 irecvfrom ,retri ,iad_elem ,fr_elem ,itab ,
1260 4 nrtm_t ,eshift ,ibid ,renum ,nsnfiold ,
1261 5 intbuf_tab ,ibid ,ibid)
1264 ELSEIF(nty == 20)
THEN
1268 2 ms ,n ,itask ,wag ,weight ,
1269 3 isendto ,irecvfrom ,retri ,iad_elem,fr_elem ,
1270 4 itab ,kinet ,temp ,nrtm_t ,renum ,
1271 5 nsnfiold,eshift ,ibid ,ibid ,diag_sms,
1272 5 ibid ,intbuf_tab ,h3d_data ,glob_therm)
1275 IF (nspmd>1.AND.retri==1)
THEN
1278 1 ipari ,newfront,isendto ,irecvfrom,
1279 2 nsensor,nbintc ,intlist ,ibidlen ,ibidlen ,
1280 3 ibidlen,ibidlen,ibidlen ,ibidlen ,ibidlen ,
1281 4 ibidlen,ibidlen,ibidlen ,ibidlen ,ibidlen ,
1282 5 ibidlen,ibidlen,sensor_tab,intbuf_tab, 1)
1284 1 ipari ,newfront,isendto ,irecvfrom,
1285 2 nsensor,nbintc ,intlist ,ibidlen ,ibidlen ,
1286 3 ibidlen,ibidlen,ibidlen ,ibidlen ,ibidlen ,
1287 4 ibidlen,ibidlen,ibidlen ,ibidlen ,ibidlen ,
1288 5 ibidlen,ibidlen,sensor_tab,intbuf_tab, 2)
1297 ts = sensor_tab(isens)%TSTART
1304 1 ipari ,intbuf_tab(n),x ,v ,
1305 2 n ,itask ,count_remslv, lskyi_sms_new )
1309 1 ipari(1,n),intbuf_tab(n),x ,v ,
1310 2 n ,itask ,count_remslv , lskyi_sms_new )
1315 ts = sensor_tab(isens)%TSTART
1322 1 ipari ,intbuf_tab(n),x ,v ,
1325 ELSEIF(nty == 20)
THEN
1327 1 ipari ,intbuf_tab(n),x ,v ,
1328 2 n ,itask ,count_remslv ,count_remslve )
1331 lindmax = ipari(18,n)*ipari(23,n)
1338 ts = sensor_tab(isens)%TSTART
1345 1 ipari ,intbuf_tab(n),x ,v ,
1346 2 ms ,n ,lindmax ,jtask ,
1347 3 num_imp(n),ns_imp(iad) ,ne_imp(iad) ,ind_imp(iad))
1353 1 ipari(1,n),intbuf_tab(n),x ,v ,
1354 2 ms ,n ,lindmax ,jtask ,
1355 3 num_imp(n),ns_imp(iad) ,ne_imp(iad) ,ind_imp(iad))
1361 ts = sensor_tab(isens)%TSTART
1368 1 ipari(1,n),intbuf_tab(n),x ,v ,
1369 2 ms ,n ,lindmax ,jtask ,
1370 3 num_imp(n),ns_imp(iad) ,ne_imp(iad) ,itab)
1377!||====================================================================
1386 SUBROUTINE cp_inttd(NT_IMP1,NUMIMP ,NS_IMP,NE_IMP,IND_IMP,NUMIMP1)
1394#include "implicit_f.inc"
1398#include "com04_c.inc"
1402 INTEGER NUMIMP(*),NS_IMP(*),NE_IMP(*),IND_IMP(*),
1403 . numimp1(*),nt_imp1
1407 INTEGER I,J,K,L,N,IAD,IAD1,IADT
1408 INTEGER IERROR1,IERROR2,,IERROR4
1412 IF(nt_imp1==0)
RETURN
1413 IF(
ALLOCATED(ns_imp1))
DEALLOCATE(ns_imp1)
1414 ALLOCATE(ns_imp1(nt_imp1),stat=ierror1)
1415 IF(
ALLOCATED(ne_imp1))
DEALLOCATE(ne_imp1)
1416 ALLOCATE(ne_imp1(nt_imp1),stat=ierror2)
1417 IF(
ALLOCATED(ind_imp1))
DEALLOCATE(ind_imp1)
1418 ALLOCATE(ind_imp1(nt_imp1),stat=ierror3)
1419 IF(
ALLOCATED(iad1_nin))
DEALLOCATE(iad1_nin)
1420 ALLOCATE(iad1_nin(ninter),stat=ierror4)
1422 CALL cp_int(ninter,numimp,numimp1)
1423 CALL cp_int(nt_imp1,ns_imp,ns_imp1)
1424 CALL cp_int(nt_imp1,ne_imp,ne_imp1)
1425 CALL cp_int(nt_imp1,ind_imp,ind_imp1)
1429 iad1 =iad1 + numimp1(n)
1450#include "implicit_f.inc"
1454#include "com01_c.inc"
1455#include "com04_c.inc"
1456#include "impl1_c.inc"
1460 INTEGER NT_IMP,NUMIMP(*),NS_IMP(*),NE_IMP(*),IND_IMP(*),
1465 INTEGER I,J,K,L,N,IAD,IAD1,IADT
1466 INTEGER IERROR1,IERROR2,IERROR3,IERROR4
1470 IF(nt_imp1==0)
RETURN
1473 nt_imp = nt_imp + nt_imp1
1478 ns_imp(iad1+i)=ns_imp1(iad1+i)
1480 iad1 =iad1 + numimp1(n)
1484 IF(
ALLOCATED(ns_imp1))
DEALLOCATE(ns_imp1)
1485 ALLOCATE(ns_imp1(nt_imp),stat=ierror1)
1486 IF(
ALLOCATED(ne_imp1))
DEALLOCATE(ne_imp1)
1487 ALLOCATE(ne_imp1(nt_imp),stat=ierror2)
1488 IF(
ALLOCATED(ind_imp1))
DEALLOCATE(ind_imp1)
1489 ALLOCATE(ind_imp1(nt_imp),stat=ierror3)
1494 ns_imp1(iad1+i) = ns_imp(iad1+i)
1495 ne_imp1(iad1+i) = ne_imp(iad1+i)
1496 ind_imp1(iad1+i) = ind_imp(iad1+i)
1498 iad1 =iad1 + numimp1(n)
1502 ns_imp1(iad1+i) = ns_imp(iad1+i)
1503 ne_imp1(iad1+i) = ne_imp(iad1+i)
1504 ind_imp1(iad1+i) = ind_imp(iad1+i)
1506 iad1 =iad1 + numimp(n)
1513 ns_imp(iad+i) = ns_imp1(iad1+i)
1514 ne_imp(iad+i) = ne_imp1(iad1+i)
1515 ind_imp(iad+i) = ind_imp1(iad1+i)
1517 iad =iad + numimp1(n) + numimp(n)
1518 iad1 = iad1 + numimp1(n)
1522 iadt =iad + numimp1(n)
1524 ns_imp(iadt+i) = ns_imp1(iad1+i)
1525 ne_imp(iadt+i) = ne_imp1(iad1+i)
1526 ind_imp(iadt+i) = ind_imp1(iad1+i)
1528 iad1 =iad1 + numimp(n)
1529 iad =iad + numimp1(n) + numimp(n)
1533 numimp(n) = numimp1(n) + numimp(n)
1546!||--- uses -----------------------------------------------------
1557#include "implicit_f.inc"
1561 INTEGER CAND_N(*) ,NIN,NSN,NUM_IMP,INDEX(*)
1574 ns_imp1(iad+i) = cand_n(index(i))
1580!||====================================================================
1591 1 IPARI ,INTBUF_TAB ,X ,V ,
1592 2 VR ,ITAB ,D_IMP ,DR_IMP ,NBINTC ,
1593 3 INTLIST,ITASK ,NEWFRONT,ISENDTO ,IRECVFROM,
1594 4 IDDL ,NDOF ,IKC ,SCAL ,MS ,
1595 5 NSENSOR,SENSOR_TAB, MAXDGAP)
1604#include "implicit_f.inc"
1608#include "com01_c.inc"
1609#include "com04_c.inc"
1610#include "com08_c.inc"
1611#include
"param_c.inc"
1612#include "impl1_c.inc"
1613#include "task_c.inc"
1617 INTEGER ,
INTENT(IN) :: NSENSOR
1618 INTEGER IPARI(NPARI,*), ITAB(*),
1619 . NEWFRONT(*),NBINTC,INTLIST(*),
1620 . ISENDTO(NINTER+1,*),IRECVFROM(NINTER+1,*),
1622 INTEGER IDDL(*) ,NDOF(*),IKC(*)
1624 . X(3,*), V(3,*),VR(3,*),
1625 . D_IMP(3,*),DR_IMP(3,*),SCAL,MS(*),
1628 TYPE(intbuf_struct_) INTBUF_TAB(*)
1629 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) :: SENSOR_TAB
1633 INTEGER N,I,J,ID,NTHR_CP
1636 . dtk(ninter),dti,dt_min
1639 IF (ittoff>0.OR.imconv==1.OR.imconv<=-2)
RETURN
1641 IF (nthread>1) nthread = 1
1644 v(1,i)=d_imp(1,i)*dti
1645 v(2,i)=d_imp(2,i)*dti
1646 v(3,i)=d_imp(3,i)*dti
1650 vr(1,i)=dr_imp(1,i)*dti
1651 vr(2,i)=dr_imp(2,i)*dti
1652 vr(3,i)=dr_imp(3,i)*dti
1656 1 ipari ,intbuf_tab ,x ,
1657 2 v ,vr ,isendto ,irecvfrom,
1658 4 newfront ,itask ,dtk ,itab ,
1659 5 intlist ,nbintc ,dt_min ,ms ,
1660 6 nsensor ,sensor_tab,maxdgap)
1665 d_imp(1,i)=d_imp(1,i)*scal
1666 d_imp(2,i)=d_imp(2,i)*scal
1667 d_imp(3,i)=d_imp(3,i)*scal
1671 dr_imp(1,i)=dr_imp(1,i)*scal
1672 dr_imp(2,i)=dr_imp(2,i)*scal
1673 dr_imp(3,i)=dr_imp(3,i)*scal
1678 IF (nthr_cp>1) nthread = nthr_cp
1682!||====================================================================
1697 1 IPARI ,INTBUF_TAB ,NUM_IMP ,NS_IMP ,NE_IMP ,
1698 2 NPBY ,LPBY ,ITAB ,NRBYAC ,IRBYAC ,
1699 3 NINT2 ,IINT2 ,IBFV ,LJ ,ISKEW ,
1700 4 ICODT ,NDOFI ,IDDL ,IKC ,NDOF ,
1701 5 INLOC ,IRBE3 ,LRBE3 ,FRBE3 ,X ,
1702 6 SKEW ,IRBE2 ,LRBE2 )
1712#include "implicit_f.inc"
1716#include "com04_c.inc"
1717#include "param_c.inc"
1721 INTEGER IPARI(NPARI,*),NUM_IMP(*),NS_IMP(*),
1722 . ne_imp(*),ndofi(*)
1723 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*),
1724 . NINT2,IINT2(*),IDDL(*),IKC(*),NDOF(*),INLOC(*),
1725 . IBFV(*),LJ(*),ISKEW(*),ICODT(*),IRBE3(NRBE3L,*),LRBE3(*),
1726 . IRBE2(NRBE2L,*),LRBE2(*)
1729 . x(*),skew(*),frbe3(*)
1730 TYPE() INTBUF_TAB(*)
1734 INTEGER I,J,N, IAD,NTY,NDOFII(NUMNOD),NKC,
1738 ndofii(n) = iabs(ndofi(n))
1752 IF (ndofii(i)>0)
THEN
1759 1 npby ,lpby ,nrbyac ,irbyac ,nint2 ,
1760 2 iint2 ,ipari ,intbuf_tab,ndofii ,ibfv ,
1798 1 npby ,lpby ,nrbyac ,irbyac ,nint2 ,
1799 2 iint2 ,ipari ,intbuf_tab,ndofii ,ibfv ,
1815 irot=
max(irot,irbe3(6,n))
1820 ALLOCATE(fcdi_kn(18*nmt),stat=ierr5)
1823 ALLOCATE(mcdi_kn(18*nmt),stat=ierr5)
1826 CALL rbe3_mint(irbe3 ,lrbe3 ,frbe3 ,x ,skew ,
1834 ndofii(i)=iddl(i)-nkc
1837 IF (ikc(nd)/=0) nkc = nkc + 1
1847 IF (ndofi(i)<0) ndofi(i) = 0
1861 1 NPBY ,LPBY ,NRBYAC ,IRBYAC ,NINT2 ,
1862 2 IINT2 ,IPARI ,INTBUF_TAB,INLOC ,IBFV ,
1863 3 LJ ,ISKEW ,ICODT ,LNS ,LNS2 ,
1864 4 LBCL ,LFXL ,LRW ,IRBE3 ,LNS3 ,
1865 5 LSPCL ,IRBE2 ,LRBE2 ,LNS4 )
1875#include "implicit_f.inc"
1879#include "com04_c.inc"
1880#include "param_c.inc"
1884 INTEGER NPBY(NNPBY,*),LPBY(*),NRBYAC,IRBYAC(*),
1885 . nint2,iint2(*),ipari(npari,*)
1886 INTEGER IBFV(NIFV,*),LJ(*),ISKEW(*) ,ICODT(*),LSPCL
1887 INTEGER INLOC(*),LNS ,LNS2,LBCL ,LFXL ,LRW,IRBE3(NRBE3L,*),LNS3,
1888 . irbe2(nrbe2l,*),lrbe2(*),lns4
1891 TYPE(intbuf_struct_) INTBUF_TAB(*)
1896 . i,j,k,n,l,
nl,nj,ni,j1,m,nsn,n1,n2,nk,
id,
1897 . ji,k10,k11,k12,k13,k14,kfi,ns
1905 k11=k10+4*ipari(3,n)
1907 k12=k11+4*ipari(4,n)
1915 ni=intbuf_tab(n)%NSV(i)
1916 IF (inloc(ni)>0)
THEN
1926 IF (inloc(ni)>0)
THEN
1940 IF (inloc(ni)>0)
THEN
1942 IF (inloc(m)==0) inloc(m) = 1
1949 IF (iskew(n)>1.AND.icodt(n)/=7)
THEN
1950 IF (inloc(n)>0)lbcl = lbcl + 1
1955 IF (inloc(n)>0.AND.
ic_spc(n)<=3)lspcl = lspcl + 1
1960 IF (lj(j)>0.AND.lj(j)<=3)
THEN
1962 IF (inloc(n)>0)lfxl = lfxl + 1
1969 IF (inloc(n)>0) lrw = lrw + 1
1980 IF (inloc(ni)>0)
THEN
1982 IF (inloc(m)==0) inloc(m) = 2
1999 1 NPBY ,LPBY ,NRBYAC ,IRBYAC ,NINT2 ,
2000 2 IINT2 ,IPARI ,INTBUF_TAB,INLOC ,IBFV ,
2001 3 LJ ,ISKEW ,ICODT ,NRB_MV ,IRB_MV ,
2002 3 NI2_MV ,II2_MV ,NBC_MV ,IBC_MV ,NFX_MV ,
2003 4 IFX_MV ,NRW_MV ,IRW_MV ,IRBE3 ,NRBE3_MV ,
2004 5 IRBE3_MV ,NSPC_MV ,ISPC_MV ,IRBE2 ,LRBE2 ,
2005 6 NRBE2_MV ,IRBE2_MV )
2015#include "implicit_f.inc"
2019#include "com04_c.inc"
2020#include "param_c.inc"
2024 INTEGER IBFV(NIFV,*),LJ(*),ISKEW(*) ,ICODT(*)
2025 INTEGER NPBY(NNPBY,*),LPBY(*),NRBYAC,IRBYAC(*),
2026 . nint2,iint2(*),ipari(npari,*),irbe3(nrbe3l,*),
2027 . irbe2(nrbe2l,*),lrbe2(*)
2029 . inloc(*),nrb_mv,ni2_mv,irb_mv(2,*),ii2_mv(2,*),
2030 . nbc_mv,ibc_mv(3,*) ,nfx_mv,ifx_mv(2,*),nrw_mv,irw_mv(*),
2031 . nrbe3_mv,irbe3_mv(*),nspc_mv,ispc_mv(*),nrbe2_mv,irbe2_mv(*)
2034 TYPE(intbuf_struct_) INTBUF_TAB(*)
2039 . i,j,k,n,l,
nl,nj,ni,j1,m,nsn,n1,n2,nk,
id,nr3,nr4,
2040 . ji,k10,k11,k12,k13,k14,kfi,ni2,nrb,nbc,nfx,nrw,nspc
2049 k11=k10+4*ipari(3,n)
2051 k12=k11+4*ipari(4,n)
2059 ni=intbuf_tab(n)%NSV(i)
2060 IF (inloc(ni)>0)
THEN
2067 IF (ni2/=ni2_mv)
WRITE(*,*)'pb cal ni2_m
'
2070 IF (NRBE3_MV>0) THEN
2075 IF (INLOC(NI)>0) THEN
2080 IF (NR3/=NRBE3_MV) WRITE(*,*)'pb cal nrbe3_m
'
2089 IF (INLOC(M)>0) THEN
2094 IF (INLOC(NI)>0) THEN
2102 IF (NRB/=NRB_MV) WRITE(*,*)'pb cal nrb_m
'
2108.AND.
IF (ISKEW(N)>1ICODT(N)/=7) THEN
2109 IF (INLOC(N)>0) THEN
2112 IBC_MV(2,NBC) = ISKEW(N)
2113 IBC_MV(3,NBC) = ICODT(N)
2117 IF (NBC/=NBC_MV) WRITE(*,*)'pb cal nbc_m
'
2123.AND.
IF (INLOC(N)>0IC_SPC(N)<=3)THEN
2128 IF (NSPC/=NSPC_MV) WRITE(*,*)'pb cal nspc_m
'
2134.AND.
IF (LJ(J)>0LJ(J)<=3) THEN
2136 IF (INLOC(N)>0) THEN
2139 IFX_MV(2,NFX) = LJ(J)
2143 IF (NFX/=NFX_MV) WRITE(*,*)'pb cal nfx_m
'
2150 IF (INLOC(N)>0) THEN
2155 IF (NRW/=NRW_MV) WRITE(*,*)'pb cal nrw_m
'
2159 IF (NRBE2_MV>0) THEN
2163 IF (INLOC(M)>0) THEN
2168 IF (INLOC(NI)>0) THEN
2176 IF (NR4/=NRBE2_MV) WRITE(*,*)'pb cal nrbe2
'
2182!||====================================================================
2183!|| iddl_mint ../engine/source/implicit/imp_int_k.F
2184!||--- called by ------------------------------------------------------
2185!|| kin_knl ../engine/source/implicit/imp_int_k.F
2186!||--- uses -----------------------------------------------------
2187!|| intbufdef_mod ../common_source/modules/interfaces/intbufdef_mod.F90
2188!||====================================================================
2189 SUBROUTINE IDDL_MINT(NML ,IML ,IDDL ,IKC ,NDOF ,
2190 . IDDLM ,IPARI ,INTBUF_TAB,IDDML ,NRB_FR ,
2191 . IFRSR ,IDDMR ,NI2_FR ,IFRS2 ,IDDMI2 ,
2192 . IRBE3 ,LRBE3 ,NRBE3_FR,IFRS3 ,IDDMI3 ,
2193 . M_MAX ,IRBE2 ,NRBE2_FR,IFRS4 ,IDDMI4 )
2201#include "implicit_f.inc"
2205#include "param_c.inc"
2209 INTEGER NML,IML(*),IDDL(*) ,IKC(*) ,NDOF(*) ,IDDLM(*),M_MAX
2210 INTEGER IPARI(NPARI,*),IDDML(3,*),NRB_FR ,
2211 . IDDMR(6,*) ,NI2_FR ,IDDMI2(6,4,*) ,IFRSR(2,*),
2212 . IFRS2(2,*),IRBE3(NRBE3L,*),LRBE3(*),NRBE3_FR,IFRS3(*),
2213 . IDDMI3(6,M_MAX,*),IRBE2(NRBE2L,*),NRBE2_FR,IFRS4(*),
2216 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
2220 INTEGER I,ID,N,J,NDD,I1
2221 INTEGER M,NSN,JI,K10,K11,K12,K13,K14,L,NNOD,NJ,NL,NI,IAD
2222 INTEGER IERROR1,IERROR2,IERROR3,IERROR4,IERROR5,IERROR6
2232 DO J = 1 , MIN(3,NDOF(N))
2236 IDDML(J,I) = IDDLM(N) + NDD
2238 IDDML(J,I) = -IKC(ID)
2252 IDDMR(J,I) = IDDLM(N) + NDD
2254 IDDMR(J,I) = -IKC(ID)
2267 K11=K10+4*IPARI(3,N)
2269 K12=K11+4*IPARI(4,N)
2274 L=INTBUF_TAB(N)%IRTLM(NI)
2276 IF (INTBUF_TAB(N)%IRECTM(NL+3)==INTBUF_TAB(N)%IRECTM(NL+4)) THEN
2283 NJ=INTBUF_TAB(N)%IRECTM(NL+M)
2289 IDDMI2(J,M,I) = IDDLM(NJ) + NDD
2291 IDDMI2(J,M,I) = -IKC(ID)
2298 IF (NRBE3_FR>0) THEN
2312 IDDMI3(J,M,I) = IDDLM(NJ) + NDD
2314 IDDMI3(J,M,I) = -IKC(ID)
2321 IF (NRBE2_FR>0) THEN
2330 IDDMI4(J,I) = IDDLM(M) + NDD
2332 IDDMI4(J,I) = -IKC(ID)
2340!||====================================================================
2341!|| rbe3_mint ../engine/source/implicit/imp_int_k.F
2342!||--- called by ------------------------------------------------------
2343!|| kin_knl ../engine/source/implicit/imp_int_k.F
2344!||--- calls -----------------------------------------------------
2345!|| rbe3cl ../engine/source/constraints/general/rbe3/rbe3f.F
2346!||====================================================================
2347 SUBROUTINE RBE3_MINT(IRBE3 ,LRBE3 ,FRBE3 ,X ,SKEW,
2348 . NRBE3_KN,IRBE3_KN ,FRCDI ,MRCDI )
2352#include "implicit_f.inc"
2356#include "param_c.inc"
2357#include "tabsiz_c.inc"
2361 INTEGER IRBE3(NRBE3L,*),LRBE3(*) ,NRBE3_KN,IRBE3_KN(*)
2363 . FRBE3(*),X(*),SKEW(*),FRCDI(*),MRCDI(*)
2367 INTEGER I,ID,N,J,NDD,I1,IAD,NMT,IROTG,IADS
2368 INTEGER M,NNOD,NJ,NL,NI
2372 IF (NRBE3_KN>0) THEN
2382 CALL RBE3CL(LRBE3(IAD+1),LRBE3(NMT+IAD+1),NI ,X ,
2383 . FRBE3(IAD+1),SKEW ,NNOD ,IROTG ,FRCDI(IADS),
2384 . MRCDI(IADS) ,IRBE3(2,N))
2392!||====================================================================
2393!|| int_matv ../engine/source/implicit/imp_int_k.F
2394!||--- called by ------------------------------------------------------
2395!|| mav_lt2 ../engine/source/implicit/produt_v.F
2396!||--- calls -----------------------------------------------------
2397!|| imp3_a2b ../engine/source/airbag/monv_imp0.F
2398!|| imp3_u2x ../engine/source/airbag/monv_imp0.F
2399!|| int_fku3 ../engine/source/implicit/imp_int_k.F
2400!|| zeror ../engine/source/system/zero.F
2401!||--- uses -----------------------------------------------------
2402!|| imp_knon ../engine/share/modules/impbufdef_mod.F
2403!|| intbufdef_mod ../common_source/modules/interfaces/intbufdef_mod.F90
2404!||====================================================================
2405 SUBROUTINE INT_MATV(IPARI ,INTBUF_TAB ,NDOF ,NUM_IMP,
2406 1 NS_IMP ,NE_IMP ,INDEX2 ,A ,AR ,
2407 2 V ,X ,MS ,X_IMP ,IBFV ,
2408 3 SKEW ,XFRAME ,U ,F ,IUPD ,
2409 4 IRBE3 ,LRBE3 ,IRBE2 ,LRBE2 )
2418#include "implicit_f.inc"
2422#include "com04_c.inc"
2423#include "param_c.inc"
2427 INTEGER IPARI(NPARI,*), INDEX2(*),NDOF(*)
2428 INTEGER NUM_IMP(*),NS_IMP(*),NE_IMP(*),IBFV(*),IUPD,
2429 . IRBE3(*) ,LRBE3(*),IRBE2(*) ,LRBE2(*)
2431 . X(3,*),A(3,*),AR(3,*), F(*), U(*),
2432 . X_IMP(3,*),V(3,*),SKEW(*) ,XFRAME(*),MS(*)
2434 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
2438 INTEGER I, J,N,K,K1,KK1,N1,N2,N3,N4,ID,IAD,IS,NN,NTY
2442 CALL IMP3_U2X(X ,IPARI ,INTBUF_TAB ,NDOF ,
2443 . U ,D ,AR ,X_IMP ,NUMN_KN,
2444 . IN_KN ,ID_KN ,NRB_KN ,IRB_KN,ID_KNM ,
2445 . NI2_KN,II2_KN ,ID_KNM2,NFX_KN,IFX_KN ,
2446 . NBC_KN,IBC_KN ,NRW_KN,IRW_KN ,IBFV ,
2447 . SKEW ,XFRAME ,IRBE3 ,LRBE3 ,NRBE3_KN,
2448 . IRBE3_KN,ID_KNM3,RKN_MAX,FCDI_KN,MCDI_KN,
2449 . NSPC_KN,ISPC_KN ,IRBE2 ,LRBE2 ,NRBE2_KN,
2451 CALL ZEROR(A,NUMNOD)
2452 IF ((NRB_KN+NI2_KN+NRBE3_KN)>0) CALL ZEROR(AR,NUMNOD)
2455 CALL INT_FKU3(A ,V ,MS ,D ,
2456 1 IPARI ,INTBUF_TAB ,X_IMP,NUM_IMP,
2457 2 NS_IMP ,NE_IMP ,INDEX2,IUPD )
2458 CALL IMP3_A2B(IPARI ,INTBUF_TAB ,NDOF ,X_IMP ,
2459 1 A ,AR ,NUMN_KN,IN_KN,ID_KN ,
2460 2 NRB_KN ,IRB_KN ,ID_KNM ,NI2_KN,II2_KN,
2461 3 ID_KNM2,NFX_KN ,IFX_KN ,NBC_KN,IBC_KN,
2462 4 NRW_KN ,IRW_KN ,IBFV ,SKEW ,XFRAME,
2463 5 F ,IRBE3 ,LRBE3 ,NRBE3_KN,IRBE3_KN,
2464 6 ID_KNM3,RKN_MAX,FCDI_KN,MCDI_KN,NSPC_KN,
2465 7 ISPC_KN,IRBE2 ,LRBE2 ,NRBE2_KN,IRBE2_KN,
2468 CALL INT_FKU3(A ,V ,MS ,D ,
2469 1 IPARI ,INTBUF_TAB ,X ,NUM_IMP,
2470 2 NS_IMP ,NE_IMP ,INDEX2 ,IUPD )
2471 CALL IMP3_A2B(IPARI ,INTBUF_TAB ,NDOF ,X ,
2472 1 A ,AR ,NUMN_KN,IN_KN,ID_KN ,
2473 2 NRB_KN ,IRB_KN ,ID_KNM ,NI2_KN,II2_KN,
2474 3 ID_KNM2,NFX_KN ,IFX_KN ,NBC_KN,IBC_KN,
2475 4 NRW_KN ,IRW_KN ,IBFV ,SKEW ,XFRAME,
2476 5 F ,IRBE3 ,LRBE3 ,NRBE3_KN,IRBE3_KN,
2477 6 ID_KNM3,RKN_MAX,FCDI_KN,MCDI_KN,NSPC_KN,
2478 7 ISPC_KN,IRBE2 ,LRBE2 ,NRBE2_KN,IRBE2_KN,
2483!||====================================================================
2484!|| int_matvp ../engine/source/implicit/imp_int_k.F
2485!||--- called by ------------------------------------------------------
2486!|| mav_lth ../engine/source/implicit/produt_v.F
2487!|| mav_lth0 ../engine/source/implicit/produt_v.F
2488!|| mav_ltp ../engine/source/implicit/produt_v.F
2489!||--- calls -----------------------------------------------------
2490!|| imp3_a2b ../engine/source/airbag/monv_imp0.F
2491!|| imp3_u2x ../engine/source/airbag/monv_imp0.F
2492!|| int_fku3 ../engine/source/implicit/imp_int_k.F
2493!|| spmd_ifcd ../engine/source/mpi/implicit/imp_spmd.F
2494!|| spmd_ifcf ../engine/source/mpi/implicit/imp_spmd.F
2495!|| zeror ../engine/source/system/zero.F
2496!||--- uses -----------------------------------------------------
2497!|| imp_intm ../engine/share/modules/imp_intm.F
2498!|| imp_knon ../engine/share/modules/impbufdef_mod.F
2499!|| intbufdef_mod ../common_source/modules/interfaces/intbufdef_mod.F90
2500!||====================================================================
2501 SUBROUTINE INT_MATVP(IPARI ,INTBUF_TAB ,NDOF ,NUM_IMP,
2502 1 NS_IMP ,NE_IMP ,INDEX2 ,A ,AR ,
2503 2 V ,X ,MS ,X_IMP ,IBFV ,
2504 3 SKEW ,XFRAME ,U ,F ,DR ,
2505 4 NSREM ,NSL ,IUPD ,IRBE3 ,LRBE3 ,
2516#include "implicit_f.inc"
2520#include "com04_c.inc"
2521#include "param_c.inc"
2525 INTEGER IPARI(NPARI,*), INDEX2(*),NSREM ,NSL
2526 INTEGER NUM_IMP(*),NS_IMP(*),NE_IMP(*),IBFV(*),IUPD,NDOF(*),
2527 . IRBE3(*) ,LRBE3(*),IRBE2(*) ,LRBE2(*)
2529 . X(3,*),A(3,*),AR(3,*), F(*), U(*),
2530 . X_IMP(3,*),SKEW(*) ,XFRAME(*),DR(3,*),V(3,*),MS(*)
2532 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
2536 INTEGER I, J,N,K,K1,KK1,N1,N2,N3,N4,ID,IAD,IS,NN,NTY
2540 CALL IMP3_U2X(X ,IPARI ,INTBUF_TAB ,NDOF ,
2541 . U ,D ,AR ,X_IMP ,NUMN_KN,
2542 . IN_KN ,ID_KN ,NRB_KN ,IRB_KN,ID_KNM ,
2543 . NI2_KN,II2_KN ,ID_KNM2,NFX_KN,IFX_KN ,
2544 . NBC_KN,IBC_KN ,NRW_KN,IRW_KN ,IBFV ,
2545 . SKEW ,XFRAME ,IRBE3 ,LRBE3 ,NRBE3_KN,
2546 . IRBE3_KN,ID_KNM3,RKN_MAX,FCDI_KN,MCDI_KN,
2547 . NSPC_KN,ISPC_KN ,IRBE2 ,LRBE2 ,NRBE2_KN,
2549 CALL ZEROR(A,NUMNOD)
2550 IF ((NRB_KN+NI2_KN+NRBE3_KN)>0) CALL ZEROR(AR,NUMNOD)
2552 IF ((NSREM+NSL)>0) THEN
2553 CALL SPMD_IFCD(D ,NSL, NSREM)
2554 IF (NSREM>0) CALL ZEROR(FFI,NSREM)
2558 CALL INT_FKU3(A ,V ,MS ,D ,
2559 1 IPARI ,INTBUF_TAB,X_IMP,NUM_IMP,
2560 2 NS_IMP ,NE_IMP ,INDEX2,IUPD )
2561 IF ((NSREM+NSL)>0) CALL SPMD_IFCF(A, NSREM ,NSL)
2562 CALL IMP3_A2B(IPARI ,INTBUF_TAB ,NDOF ,X_IMP ,
2563 1 A ,AR ,NUMN_KN,IN_KN,ID_KN ,
2564 2 NRB_KN ,IRB_KN ,ID_KNM ,NI2_KN,II2_KN,
2565 3 ID_KNM2,NFX_KN ,IFX_KN ,NBC_KN,IBC_KN,
2566 4 NRW_KN ,IRW_KN ,IBFV ,SKEW ,XFRAME,
2567 5 F ,IRBE3 ,LRBE3 ,NRBE3_KN,IRBE3_KN,
2568 6 ID_KNM3,RKN_MAX,FCDI_KN,MCDI_KN,NSPC_KN,
2569 7 ISPC_KN,IRBE2 ,LRBE2 ,NRBE2_KN,IRBE2_KN,
2572 CALL INT_FKU3(A ,V ,MS ,D ,
2573 1 IPARI ,INTBUF_TAB ,X ,NUM_IMP,
2574 2 NS_IMP ,NE_IMP ,INDEX2 ,IUPD )
2575 IF ((NSREM+NSL)>0) CALL SPMD_IFCF(A, NSREM ,NSL)
2576 CALL IMP3_A2B(IPARI ,INTBUF_TAB ,NDOF ,X ,
2577 1 A ,AR ,NUMN_KN,IN_KN,ID_KN ,
2578 2 NRB_KN ,IRB_KN ,ID_KNM ,NI2_KN,II2_KN,
2579 3 ID_KNM2,NFX_KN ,IFX_KN ,NBC_KN,IBC_KN,
2580 4 NRW_KN ,IRW_KN ,IBFV ,SKEW ,XFRAME,
2581 5 F ,IRBE3 ,LRBE3 ,NRBE3_KN,IRBE3_KN,
2582 6 ID_KNM3,RKN_MAX,FCDI_KN,MCDI_KN,NSPC_KN,
2583 7 ISPC_KN,IRBE2 ,LRBE2 ,NRBE2_KN,IRBE2_KN,
2588!||====================================================================
2589!|| int_fku3 ../engine/source/implicit/imp_int_k.F
2590!||--- called by ------------------------------------------------------
2591!|| int_matv ../engine/source/implicit/imp_int_k.F
2592!|| int_matvp ../engine/source/implicit/imp_int_k.F
2593!||--- calls -----------------------------------------------------
2594!|| i10fku3 ../engine/source/interfaces/int10/i10ke3.F
2595!|| i11fku3 ../engine/source/interfaces/int11/i11ke3.F
2596!|| i7fku3 ../engine/source/interfaces/int07/i7ke3.F
2597!||--- uses -----------------------------------------------------
2598!|| intbufdef_mod ../common_source/modules/interfaces/intbufdef_mod.F90
2599!||====================================================================
2600 SUBROUTINE INT_FKU3(A ,V ,MS ,D ,IPARI ,
2601 1 INTBUF_TAB ,X ,NUM_IMP,NS_IMP ,
2602 1 NE_IMP ,INDEX2 ,IUPD )
2610#include "implicit_f.inc"
2614#include "com04_c.inc"
2615#include "param_c.inc"
2619 INTEGER IPARI(NPARI,*), INDEX2(*)
2620 INTEGER NUM_IMP(*),NS_IMP(*),NE_IMP(*),IUPD
2622 . X(3,*),A(3,*),D(3,*), MS(*),V(3,*)
2624 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
2628 INTEGER I, J,N,K,K1,ID,IAD,IS,NN,NTY,I_INT7
2635 CALL I7FKU3( A ,V ,MS ,D ,
2636 1 IPARI ,INTBUF_TAB(N),X ,N ,
2637 2 NUM_IMP(N),NS_IMP(IAD),NE_IMP(IAD) ,INDEX2(IAD),IUPD )
2640 CALL I10FKU3( A ,V ,MS ,D ,
2641 1 IPARI(1,N),INTBUF_TAB(N) ,X ,N ,
2642 2 NUM_IMP(N),NS_IMP(IAD),NE_IMP(IAD) ,INDEX2(IAD),IUPD )
2645 CALL I11FKU3( A ,V ,MS ,D ,
2646 1 IPARI(1,N),INTBUF_TAB(N) ,X ,N ,
2647 2 NUM_IMP(N),NS_IMP(IAD),NE_IMP(IAD) ,IUPD )
2655!||====================================================================
2656!|| pr_kint ../engine/source/implicit/imp_int_k.F
2657!||====================================================================
2658 SUBROUTINE PR_KINT(NDDLI ,IMCONV,
2659 3 IADI ,JDII ,ITOK ,DIAG_I ,LT_I )
2663#include "implicit_f.inc"
2667#include "task_c.inc"
2673 . NDDLI,IADI(*),JDII(*),ITOK(*),IMCONV
2680 INTEGER i,j,N,ID,ND,NKC,IDF,nnod,nk,iad,iad2,id2
2682 CHARACTER*10 FILNAME
2685 WRITE(CHIF,'(i1)
')ispmd
2686 FILNAME='kint
'//CHIF//'.tmp
'
2687 OPEN(UNIT=IDF,FILE=FILNAME,STATUS='unknown
',FORM='formatted
')
2688 write(IDF,*)'nddli,=
', NDDLI
2689 if (IMCONV<0) return
2690 write(IDF,*)'[ki]=
',NDDLI
2692 write(IDF,*)'diag_i,itok=
',DIAG_I(I),ITOK(I)
2695 write(IDF,*)'nr,i=
',IADI(I+1)-IADI(I),I
2696 DO J=IADI(I),IADI(I+1)-1
2697 write(IDF,*)'lt_i,nj,j=
',LT_I(J),ITOK(JDII(J)),J
subroutine imp_i10mainf(ipari, intbuf_tab, x, v, ms, nin, lindmax, jtask, num_imp, ns_imp, ne_imp, ind_imp)
subroutine i10ke3(a, v, ms, ipari, intbuf_tab, x, nin, num_imp, cand_n, cand_e, index2, iddl, k_diag, k_lt, iadk, jdik, gap_imp, lrem)
subroutine i10main_tri(timers, npari, ipari, x, v, ms, nin, itask, mwag, weight, isendto, ircvfrom, retri, iad_elem, fr_elem, nrtm_t, renum, nsnfiold, eshift, num_imp, ind_imp, nodnx_sms, itab, intbuf_tab, h3d_data, glob_therm)
subroutine i10main_opt_tri(ipari, x, v, nin, itask, count_remslv, intbuf_tab, lskyi_sms_new)
subroutine imp_i11mainf(ipari, intbuf_tab, x, v, ms, nin, lindmax, jtask, num_imp, ns_imp, ne_imp, itab)
subroutine i11ke3(a, v, ms, ipari, intbuf_tab, x, nin, num_imp, cand_n, cand_e, iddl, k_diag, k_lt, iadk, jdik, gap_imp, lrem, itab)
subroutine i11main_crit_tri(ipari, x, nin, itask, v, xslv_l, xmsr_l, vslv_l, vmsr_l, intbuf_tab)
subroutine i11main_opt_tri(ipari, intbuf_tab, x, v, nin, itask, count_remslv, lskyi_sms_new)
subroutine i11main_tri(timers, ipari, x, v, ms, nin, itask, weight, isendto, ircvfrom, retri, iad_elem, fr_elem, itab, nrtm_t, eshift, nodnx_sms, renum, nsnfiold, intbuf_tab, temp, nodadt_therm)
subroutine i20main_opt_tri(ipari, x, v, nin, itask, count_remslv, count_remslve, intbuf_tab)
subroutine i20main_tri(timers, ipari, x, v, ms, nin, itask, mwag, weight, isendto, ircvfrom, retri, iad_elem, fr_elem, itab, kinet, temp, nrtm_t, renum, nsnfiold, eshift, num_imp, ind_imp, diag_sms, nodnx_sms, intbuf_tab, h3d_data, glob_therm)
subroutine i24ke3(a, v, ms, ipari, intbuf_tab, x, nin, iddl, k_diag, k_lt, iadk, jdik, gap_imp, lrem, intbuf_tab_imp)
subroutine i5ke3(a, v, ms, ipari, intbuf_tab, x, num_imp, cand_n, cand_e, iddl, k_diag, k_lt, iadk, jdik)
subroutine i7ke3(a, v, ms, ipari, intbuf_tab, x, nin, num_imp, cand_n, cand_e, index2, iddl, k_diag, k_lt, iadk, jdik, gap_imp, lrem)
subroutine imp_i7mainf(ipari, intbuf_tab, x, v, ms, nin, lindmax, jtask, num_imp, ns_imp, ne_imp, ind_imp)
subroutine i7main_crit_tri(ipari, x, nin, itask, v, xslv_l, xmsr_l, vslv_l, vmsr_l, intbuf_tab)
subroutine i7main_opt_tri(ipari, x, v, nin, itask, count_remslv, intbuf_tab, lskyi_sms_new)
subroutine i7main_tri(timers, ipari, x, v, ms, nin, itask, weight, isendto, ircvfrom, retri, iad_elem, fr_elem, itab, kinet, temp, nrtm_t, renum, nsnfiold, eshift, num_imp, ind_imp, nodnx_sms, intbuf_tab, h3d_data, ixs, multi_fvm, glob_therm)
subroutine iddl_mint(nml, iml, iddl, ikc, ndof, iddlm, ipari, intbuf_tab, iddml, nrb_fr, ifrsr, iddmr, ni2_fr, ifrs2, iddmi2, irbe3, lrbe3, nrbe3_fr, ifrs3, iddmi3, m_max, irbe2, nrbe2_fr, ifrs4, iddmi4)
subroutine imp_rnumcd(cand_n, nin, nsn, num_imp, index)
subroutine cp_inttd(nt_imp1, numimp, ns_imp, ne_imp, ind_imp, numimp1)
subroutine imp_icomcrit(intbuf_tab, ipari, newfront, isendto, ircvfrom, dt2t, itab, xslv_l, xmsr_l, vslv_l, vmsr_l, size_t, n, sensor_tab, intlist, nbintc, maxdgap, nsensor)
subroutine imp_intdt(ipari, intbuf_tab, x, v, vr, isendto, irecvfrom, newfront, itask, dtk, itab, intlist, nbintc, dt_min, ms, nsensor, sensor_tab, maxdgap)
subroutine imp_i7xv(x, nsv, msr, nsn, nmn, stfn, x_tmp, d, dr, v, vr, facd, facv)
subroutine imp_inttd0(output, timers, ipari, intbuf_tab, x, d, ms, itab, in, d_imp, dr_imp, imsch, i2msch, isizxv, ilenxv, igrbric, islen7, irlen7, islen11, irlen11, islen17, irlen17, irlen7t, islen7t, iad_elem, fr_elem, nbintc, intlist, itask, kinet, newfront, num_imp, ns_imp, ne_imp, ind_imp, isendto, irecvfrom, weight, ixs, temp, dt2prev, wa, num_imp1, irlen20, islen20, irlen20t, islen20t, irlen20e, islen20e, ikine, diag_sms, count_remslv, count_remslve, nsensor, sensor_tab, xdp, h3d_data, multi_fvm, forneqs, maxdgap, interfaces, glob_therm)
subroutine rbe3_mint(irbe3, lrbe3, frbe3, x, skew, nrbe3_kn, irbe3_kn, frcdi, mrcdi)
subroutine sav_inttd(nt_imp, numimp, ns_imp, ne_imp, ind_imp, numimp1)
subroutine imp_tripi(output, timers, ipari, intbuf_tab, x, d, v, ms, itab, vr, in, imsch, i2msch, isizxv, ilenxv, igrbric, islen7, irlen7, islen11, irlen11, islen17, irlen17, irlen7t, islen7t, iad_elem, fr_elem, nbintc, intlist, itask, kinet, newfront, num_imp, ns_imp, ne_imp, ind_imp, iad, isendto, irecvfrom, retri, weight, ixs, temp, dt2prev, wag, n, nty, irlen20, islen20, irlen20t, islen20t, irlen20e, islen20e, ikine, diag_sms, count_remslv, count_remslve, sensor_tab, xdp, h3d_data, multi_fvm, forneqs, interfaces, nsensor, glob_therm)
subroutine kin_knl(ipari, intbuf_tab, num_imp, ns_imp, ne_imp, npby, lpby, itab, nrbyac, irbyac, nint2, iint2, ibfv, lj, iskew, icodt, ndofi, iddl, ikc, ndof, inloc, irbe3, lrbe3, frbe3, x, skew, irbe2, lrbe2)
subroutine dim_kinkn(npby, lpby, nrbyac, irbyac, nint2, iint2, ipari, intbuf_tab, inloc, ibfv, lj, iskew, icodt, lns, lns2, lbcl, lfxl, lrw, irbe3, lns3, lspcl, irbe2, lrbe2, lns4)
subroutine imp_dtkin(ipari, intbuf_tab, x, v, vr, itab, d_imp, dr_imp, nbintc, intlist, itask, newfront, isendto, irecvfrom, iddl, ndof, ikc, scal, ms, nsensor, sensor_tab, maxdgap)
subroutine ini_kinkn(npby, lpby, nrbyac, irbyac, nint2, iint2, ipari, intbuf_tab, inloc, ibfv, lj, iskew, icodt, nrb_mv, irb_mv, ni2_mv, ii2_mv, nbc_mv, ibc_mv, nfx_mv, ifx_mv, nrw_mv, irw_mv, irbe3, nrbe3_mv, irbe3_mv, nspc_mv, ispc_mv, irbe2, lrbe2, nrbe2_mv, irbe2_mv)
subroutine imp_i11xv(x, nsv, msr, nsn, nmn, x_tmp, d, dr, v, vr, facd, facv)
subroutine imp_int_k(a, v, icodt, icodr, iskew, ibfv, npc, tf, vel, nsensor, sensor_tab, xframe, rby, x, skew, lpby, npby, itab, weight, ms, in, nrbyac, irbyac, nss, iss, ipari, intbuf_tab, nint2, iint2, iaint2, nss2, iss2, nddli, nnzi, iadi, jdii, diag_i, lt_i, iddli, nddl, iadk, jdik, ikc, diag_k, lt_k, iddl, num_imp, ns_imp, ne_imp, index2, ndofi, itok, ud, lb, gapmin, dirul, nt_rw, num_imp1, irbe3, lrbe3, frbe3, nss3, iss3, irbe2, lrbe2, nsb2, isb2)
integer, dimension(:), allocatable ic_spc
integer, dimension(:,:), allocatable id_knm4
integer, dimension(:,:), allocatable irb_kn
integer, dimension(:,:,:), allocatable id_knm2
integer, dimension(:), allocatable ispc_kn
integer, dimension(:), allocatable irw_kn
integer, dimension(:,:), allocatable id_kn
integer, dimension(:), allocatable in_kn
integer, dimension(:,:), allocatable ibc_kn
integer, dimension(:,:), allocatable irbe2_kn
integer, dimension(:,:), allocatable ii2_kn
integer, dimension(:,:), allocatable id_knm
integer, dimension(:,:,:), allocatable id_knm3
integer, dimension(:,:), allocatable ifx_kn
integer, dimension(:), allocatable irbe3_kn
integer, dimension(:), allocatable in_rwl
subroutine cp_int(n, x, xc)
subroutine spmd_get_stif11(newfront, i_stok, cand_s, stfs, nrts, nin, isendto, ircvfrom, irects, itab)
subroutine spmd_get_stif(newfront, i_stok, cand_n, stfn, nsn, nin, isendto, ircvfrom, nsv, itab)
subroutine spmd_i7xvcom2(ipari, x, v, ms, imsch, i2msch, dt2prev, intlist, nbintc, islen7, irlen7, islen11, irlen11, islen17, irlen17, ixs, ixs16, nsensor, igrbric, temp, iflag, irlen7t, islen7t, irlen20, islen20, irlen20t, islen20t, irlen20e, islen20e, ikine, diag_sms, sensor_tab, intbuf_tab, int24e2euse, forneqs, multi_fvm, interfaces, ish_offset)
subroutine spmd_ifront(ipari, newfront, isendto, ircvfrom, nsensor, nbintc, intlist, islen7, irlen7, islen11, irlen11, islen17, irlen17, irlen7t, islen7t, irlen20, islen20, irlen20t, islen20t, irlen20e, islen20e, sensor_tab, intbuf_tab, mode)
subroutine spmd_sd_xv(output, x, d, v, vr, ms, in, iad_elem, fr_elem, weight, imsch, w, isizxv, ilenxv, xdp)
subroutine spmd_sync_mmx(isendto, ircvfrom, newfront, xslv_l, xmsr_l, vslv_l, vmsr_l, intlist, nintc, tzinf, size_t, ipari, delta_pmax_gap, maxdgap)
character *2 function nl()
subroutine upd_int_k(icodt, icodr, iskew, ibfv, npc, tf, vel, xframe, rby, x, skew, lpby, npby, itab, weight, ms, in, nrbyac, irbyac, nss, iss, ipari, intbuf_tab, nint2, iint2, iaint2, nss2, iss2, nddli, nnzi, iadi, jdii, diag_i, lt_i, iddli, nddl, iadk, jdik, ikc, diag_k, lt_k, iddl, ndofi, itok, ud, lb, luj, nt_rw, irbe3, lrbe3, frbe3, nss3, iss3, irbe2, lrbe2, nsb2, isb2)