34 1 IGEO ,ELBUF ,IPARG ,IXS ,IXQ ,
35 2 IXC ,IXT ,IXP ,IXR ,IXTG ,
36 3 IXTG1 ,IXS10 ,IXS20 ,IXS16 ,
37 4 NDOF ,NROW ,ELBUF_TAB )
42 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
46#include "implicit_f.inc"
56 INTEGER IPARG(NPARG,*),IGEO(NPROPGI,*)
58 . IXS(NIXS,*),IXQ(NIXQ,*),IXC(NIXC,*), IXT(NIXT,*), IXP(NIXP,*),
59 . IXR(NIXR,*), IXTG(NIXTG,*),IXS10(6,*),IXS20(12,*),
60 . ixs16(8,*),ixtg1(4,*),ndof(*),nrow(*)
64 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
68 INTEGER NC(20),NG,ITY,NEL,NFT,IAD,ISNOD,ICNOD,
69 . I,,K,N,M,EP,L,IGTYP,NNOD,K1,IHBE,EP1,IAD0,NPT,IDRIL
75 IF (iparg(8,ng)/=1)
THEN
86 IF (iparg(1,ng) == 0 .OR. iparg(1,ng) == 13)
THEN
94 iof = elbuf_tab(ng)%GBUF%OFF(i)
104 ELSEIF (isnod==6)
THEN
112 ELSEIF (isnod==10)
THEN
120 IF (ixs10(j,ep1)>0)
THEN
122 nc(nnod) = ixs10(j,ep1)
125 ELSEIF (isnod==8)
THEN
130 ELSEIF (isnod==20)
THEN
135 ep1=ep-(numels8+numels10)
146 ndof(n)=
max(3,ndof(n))
158 iof = elbuf_tab(ng)%GBUF%OFF(i)
175 ndof(n)=
max(3,ndof(n))
177 IF (n/=nc(l)) nrow(n)=nrow(n)+1
188 iof = elbuf_tab(ng)%GBUF%OFF(i)
198 IF (npt==1.AND.idril==0)
THEN
199 ndof(n)=
max(3,ndof(n))
204 IF (n/=nc(l)) nrow(n)=nrow(n)+1
215 iof=elbuf_tab(ng)%GBUF%OFF(i)
223 ndof(n)=
max(3,ndof(n))
225 IF (n/=nc(l)) nrow(n)=nrow(n)+1
236 iof=elbuf_tab(ng)%GBUF%OFF(i)
246 IF (n/=nc(l)) nrow(n)=nrow(n)+1
257 iof=elbuf_tab(ng)%GBUF%OFF(i)
262 igtyp = igeo(11,ixr(1,ep))
271 IF (n/=nc(l)) nrow(n)=nrow(n)+1
274 IF (igtyp==8.OR.igtyp==13)
THEN
278 ELSEIF (igtyp==4.OR.igtyp==12.OR.igtyp==32)
THEN
280 ndof(nc(j))=
max(3,ndof(nc(j)))
288 ELSEIF(ity==7.AND.icnod/=6)
THEN
291 iof = elbuf_tab(ng)%GBUF%OFF(i)
300 IF (npt==1.AND.idril==0)
THEN
301 ndof(n)=
max(3,ndof(n))
306 IF (n/=nc(l)) nrow(n)=nrow(n)+1
319!||====================
328!|| elbufdef_mod ../common_source/modules/mat_elem/elbufdef_mod.f90
329!|| element_mod ../common_source/modules/elements/element_mod.f90
332 1 ELBUF ,IPARG ,IXS ,IXQ ,IXC ,
333 2 IXT ,IXP ,IXR ,IXTG ,IXTG1 ,
334 3 IXS10 ,IXS20 ,IXS16 ,NROW ,
335 4 INLOC ,NKMAX ,ICOK ,IGEO ,ELBUF_TAB )
340 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
344#include "implicit_f.inc"
348#include "com01_c.inc"
349#include "param_c.inc"
350#include "com04_c.inc"
354 INTEGER IPARG(NPARG,*),NKMAX,IGEO(NPROPGI,*)
356 . IXS(NIXS,*),IXQ(NIXQ,*),IXC(NIXC,*), IXT(NIXT,*), IXP(NIXP,*),
357 . IXR(NIXR,*), IXTG(NIXTG,*),IXS10(6,*),IXS20(12,*),
358 . IXS16(8,*),IXTG1(4,*),NROW(*),ICOK(NKMAX,*),INLOC(*)
362 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
366 INTEGER NC(20),NG,ITY,NEL,NFT,IAD,ISNOD,,
367 . I,J,K,N,M,EP,L,IGTYP,NNOD,K1,IHBE,NK,EP1,
373 IF (iparg(8,ng)/=1)
THEN
377 IF (iparg(1,ng) == 0 .OR. iparg(1,ng) == 13) cycle
389 iof = elbuf_tab(ng)%GBUF%OFF(i)
398 ELSEIF (isnod==6)
THEN
406 ELSEIF (isnod==10)
THEN
414 IF (ixs10(j,ep1)>0)
THEN
416 nc(nnod) = ixs10(j,ep1)
419 ELSEIF (isnod==8)
THEN
426 ELSEIF (isnod==20)
THEN
431 ep1=ep-(numels8+numels10)
445 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
458 iof = elbuf_tab(ng)%GBUF%OFF(i)
477 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
491 iof = elbuf_tab(ng)%GBUF%OFF(i)
503 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
516 iof=elbuf_tab(ng)%GBUF%OFF(i)
527 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
540 iof=elbuf_tab(ng)%GBUF%OFF(i)
551 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
564 iof=elbuf_tab(ng)%GBUF%OFF(i)
569 igtyp = igeo(11,ixr(1,ep))
580 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
590 ELSEIF(ity==7.AND.icnod/=6)
THEN
593 iof = elbuf_tab(ng)%GBUF%OFF(i)
605 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
618!||====================================================================
620!||--- called by ------------------------------------------------------
629 1 ELBUF ,IPARG ,IXS ,IXQ ,IXC ,
630 2 IXT ,IXP ,IXR ,IXTG ,IXTG1 ,
631 3 IXS10 ,IXS20 ,IXS16 ,NROW ,
632 4 INLOC ,NNMAX ,ICOK ,NKMAX ,ICOKM ,
633 5 INK ,IGEO ,ELBUF_TAB )
638 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
642#include
"implicit_f.inc"
646#include "com01_c.inc"
647#include "param_c.inc"
648#include "com04_c.inc"
652 INTEGER IPARG(NPARG,*),NNMAX,NKMAX,IGEO(,*)
654 . IXS(NIXS,*),IXQ(NIXQ,*),IXC(NIXC,*), IXT(NIXT,*), (NIXP,*),
655 . IXR(NIXR,*), IXTG(NIXTG,*),IXS10(6,*),IXS20(12,*),
656 . IXS16(8,*),IXTG1(4,*),
657 . NROW(*),ICOK(NNMAX,*),ICOKM(NKMAX,*),INLOC(*),INK
661 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
665 INTEGER NC(20),NG,ITY,NEL,NFT,IAD,,ICNOD,
666 . i,j,k,n,m,ep,l,igtyp,nnod,k1,ihbe,nk,ep1,iad0
671 IF (iparg(8,ng)/=1)
THEN
675 IF (iparg(1,ng) == 0 .OR. iparg(1,ng) == 13) cycle
687 iof = elbuf_tab(ng)%GBUF%OFF(i)
696 ELSEIF (isnod==6)
THEN
704 ELSEIF (isnod==10)
THEN
712 IF (ixs10(j,ep1)>0)
THEN
714 nc(nnod) = ixs10(j,ep1)
717 ELSEIF (isnod==8)
THEN
724 ELSEIF (isnod==20)
THEN
729 ep1=ep-(numels8+numels10)
741 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
747 CALL reorder_a(nrow(nk),icokm(1,nk),nc(l))
760 iof = elbuf_tab(ng)%GBUF%OFF(i)
779 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
785 CALL reorder_a(nrow(nk),icokm(1,nk),nc(l))
799 iof = elbuf_tab(ng)%GBUF%OFF(i)
811 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
817 CALL reorder_a(nrow(nk),icokm(1,nk),nc(l))
830 iof=elbuf_tab(ng)%GBUF%OFF(i)
841 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
847 CALL reorder_a(nrow(nk),icokm(1,nk),nc(l))
860 iof=elbuf_tab(ng)%GBUF%OFF(i)
871 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
877 CALL reorder_a(nrow(nk),icokm(1,nk),nc(l))
890 iof=elbuf_tab(ng)%GBUF%OFF(i)
895 igtyp = igeo(11,ixr(1,ep))
906 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
912 CALL reorder_a(nrow(nk),icokm(1,nk),nc(l))
922 ELSEIF(ity==7.AND.icnod/=6)
THEN
925 iof = elbuf_tab(ng)%GBUF%OFF(i)
937 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
943 CALL reorder_a(nrow(nk),icokm(1,nk),nc(l))
968 1 ELBUF ,IPARG ,IXS ,IXQ ,IXC ,
969 2 IXT ,IXP ,IXR ,IXTG ,IXTG1 ,
970 3 IXS10 ,IXS20 ,IXS16 ,NROW ,
971 4 INLOC ,NNMAX ,ICOK ,NKMAX ,ICOKM ,
972 5 INK ,IGEO ,ELBUF_TAB )
977 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
981#include "implicit_f.inc"
985#include "com01_c.inc"
986#include "param_c.inc"
987#include "com04_c.inc"
991 INTEGER IPARG(NPARG,*),NNMAX,NKMAX,IGEO(NPROPGI,*)
993 . IXS(NIXS,*),IXQ(NIXQ,*),IXC(NIXC,*), (NIXT,*), IXP(NIXP,*),
994 . ixr(nixr,*), ixtg(nixtg,*),ixs10(6,*),ixs20(12,*),
995 . ixs16(8,*),ixtg1(4,*),
996 . nrow(*),icok(nnmax,*),icokm(nkmax,*),inloc(*),ink
1000 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
1004 INTEGER NC(20),NG,ITY,NEL,NFT,,ISNOD,ICNOD,
1005 . I,J,K,N,M,EP,L,IGTYP,NNOD,K1,IHBE,NK,NK1,EP1,IAD0
1011 IF (iparg(8,ng)/=1)
THEN
1015 IF (iparg(1,ng) == 0 .OR. iparg(1,ng) == 13) cycle
1027 iof = elbuf_tab(ng)%GBUF%OFF(i)
1036 ELSEIF (isnod==6)
THEN
1044 ELSEIF (isnod==10)
THEN
1052 IF (ixs10(j,ep1)>0)
THEN
1054 nc(nnod) = ixs10(j,ep1)
1057 ELSEIF (isnod==8)
THEN
1064 ELSEIF (isnod==20)
THEN
1069 ep1=ep-(numels8+numels10)
1071 nc(j)=ixs20(j-8,ep1)
1084 CALL reorder_a(nrow(nk),icokm(1,nk1),nc(l))
1090 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
1103 iof = elbuf_tab(ng)%GBUF%OFF(i)
1123 CALL reorder_a(nrow(nk),icokm(1,nk1),nc(l))
1129 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
1143 iof = elbuf_tab(ng)%GBUF%OFF(i)
1156 CALL reorder_a(nrow(nk),icokm(1,nk1),nc(l))
1162 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
1175 iof=elbuf_tab(ng)%GBUF%OFF(i)
1187 CALL reorder_a(nrow(nk),icokm(1,nk1),nc(l))
1193 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
1206 iof=elbuf_tab(ng)%GBUF%OFF(i)
1218 CALL reorder_a(nrow(nk),icokm(1,nk1),nc(l))
1224 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
1237 iof=elbuf_tab(ng)%GBUF%OFF(i)
1242 igtyp = igeo(11,ixr(1,ep))
1254 CALL reorder_a(nrow(nk),icokm(1,nk1),nc(l))
1260 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
1270 ELSEIF(ity==7.AND.icnod/=6)
THEN
1273 iof = elbuf_tab(ng)%GBUF%OFF(i)
1286 CALL reorder_a(nrow(nk),icokm(1,nk1),nc(l))
1292 CALL reorder_a(nrow(nk),icok(1,nk),nc(l))
1312!||--- calls -----------------------------------------------------
1316!|| element_mod ../common_source/modules/elements/element_mod.f90
1319 1 ELBUF ,IPARG ,IXS ,IXQ ,IXC ,
1320 2 IXT ,IXP ,IXR ,IXTG ,IXTG1 ,
1321 3 IXS10 ,IXS20 ,IXS16 ,NROW ,
1322 4 INLOC ,NKMAX ,ICOK ,IGEO ,ELBUF_TAB )
1327 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
1331#include "implicit_f.inc"
1335#include "com01_c.inc"
1336#include "param_c.inc"
1337#include "com04_c.inc"
1341 INTEGER IPARG(NPARG,*),NKMAX,IGEO(NPROPGI,*)
1343 . IXS(NIXS,*),IXQ(NIXQ,*),IXC(NIXC,*), IXT(NIXT,*), IXP(NIXP,*),
1344 . IXR(NIXR,*), IXTG(NIXTG,*),IXS10(6,*),IXS20(12,*),
1345 . IXS16(8,*),IXTG1(4,*),NROW(*),ICOK(NKMAX,*),INLOC(*)
1349 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
1353 INTEGER (20),NG,ITY,NEL,NFT,IAD,ISNOD,ICNOD,
1354 . I,J,K,N,M,EP,L,IGTYP,NNOD,K1,IHBE,NK,NJ,EP1,IAD0
1360 IF (iparg(8,ng)/=1)
THEN
1364 IF (iparg(1,ng) == 0 .OR. iparg(1,ng) == 13) cycle
1376 iof = elbuf_tab(ng)%GBUF%OFF(i)
1385 ELSEIF (isnod==6)
THEN
1393 ELSEIF (isnod==10)
THEN
1401 IF (ixs10(j,ep1)>0)
THEN
1403 nc(nnod) = ixs10(j,ep1)
1406 ELSEIF (isnod==8)
THEN
1413 ELSEIF (isnod==20)
THEN
1418 ep1=ep-(numels8+numels10)
1420 nc(j)=ixs20(j-8,ep1)
1432 IF (n/=nj.AND.inloc(nj)>0)
THEN
1433 CALL reorder_a(nrow(nk),icok(1,nk),inloc(nj))
1446 iof = elbuf_tab(ng)%GBUF%OFF(i)
1465 IF (n/=nj.AND.inloc(nj)>0)
THEN
1466 CALL reorder_a(nrow(nk),icok(1,nk),inloc(nj))
1480 iof = elbuf_tab(ng)%GBUF%OFF(i)
1492 IF (n/=nj.AND.inloc(nj)>0)
THEN
1493 CALL reorder_a(nrow(nk),icok(1,nk),inloc(nj))
1506 iof=elbuf_tab(ng)%GBUF%OFF(i)
1517 IF (n/=nj.AND.inloc(nj)>0)
THEN
1518 CALL reorder_a(nrow(nk),icok(1,nk),inloc(nj))
1531 iof=elbuf_tab(ng)%GBUF%OFF(i)
1542 IF (n/=nj.AND.inloc(nj)>0)
THEN
1543 CALL reorder_a(nrow(nk),icok(1,nk),inloc(nj))
1556 iof=elbuf_tab(ng)%GBUF%OFF(i)
1561 igtyp = igeo(11,ixr(1,ep))
1572 IF (n/=nj.AND.inloc(nj)>0)
THEN
1573 CALL reorder_a(nrow(nk),icok(1,nk),inloc(nj))
1583 ELSEIF(ity==7.AND.icnod/=6)
THEN
1586 iof = elbuf_tab(ng)%GBUF%OFF(i)
1598 IF (n/=nj.AND.inloc(nj)>0)
THEN
1599 CALL reorder_a(nrow(nk),icok(1,nk),inloc(nj))
1623 1 IXS ,IXQ ,IXC ,IXT ,IXP ,
1624 2 IXR ,IXTG ,IXTG1 ,IXS10 ,IXS20 ,
1625 3 IXS16 ,IPARG ,ELBUF ,NDOF ,
1626 4 NROW ,INLOC ,NNMAX ,L_MAX ,C_MAX ,
1632 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
1636#include "implicit_f.inc"
1640#include "com01_c.inc"
1641#include "com04_c.inc"
1642#include "param_c.inc"
1646 INTEGER IPARG(NPARG,*),IGEO(NPROPGI,*)
1648 . IXS(NIXS,*),IXQ(NIXQ,*),IXC(NIXC,*), IXT(NIXT,*), IXP(NIXP,*),
1649 . ixr(nixr,*), ixtg(nixtg,*),ixs10(6,*),ixs20(12,*),
1650 . ixs16(8,*),ixtg1(4,*),ndof(*),nrow(*),inloc(*),
1655 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
1659 INTEGER ICOL(L_MAX,C_MAX),I,J,K,N,NFT,JLT,NK
1666 DO nft = 0 , numnod-1 ,c_max
1667 jlt =
min( c_max, numnod - nft )
1673 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
1674 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
1675 3 ixs10 ,ixs20 ,ixs16 ,nrow(nft+1) ,
1676 4 inloc ,l_max ,icol ,igeo ,elbuf_tab )
1680 nnmax=
max(nnmax,nrow(n))
1694 1 IGEO ,NPBY ,LPBY ,ITAB ,NRBYAC ,
1695 2 IRBYAC ,NINT2 ,IINT2 ,IPARI ,
1696 3 NDOF ,NSI2 ,NSRB ,NKINE ,
1697 7 INLOC ,IRBE3 ,IRBE2 ,LRBE2 ,NKINM ,
1707#include "implicit_f.inc"
1711#include "com04_c.inc"
1712#include "param_c.inc"
1716 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*)
1717 INTEGER NINT2,IINT2(*),IPARI(NPARI,*),NSI2,NSRB,
1718 . NDOF(*),NKINE,INLOC(*),IGEO(*),IRBE3(NRBE3L,*),
1719 . IRBE2(NRBE2L,*),LRBE2(*),NKINM
1721 TYPE (INTBUF_STRUCT_) (*)
1725 INTEGER NSN,I,J,K,N,M,NS
1732 IF (inloc(m)==0)
THEN
1741 IF (inloc(m)==0)
THEN
1755 ns=intbuf_tab(n)%NSV(j)
1756 IF (inloc(ns)==0.AND.ndof(ns)>0)
THEN
1766 IF (inloc(ns)==0.AND.ndof(ns)>0)
THEN
1778 IF (inloc(ns)==0.AND.ndof(ns)>0)
THEN
1791 IF (inloc(ns)==0.AND.ndof(ns)>0)
THEN
1812 1 NPBY ,LPBY ,ITAB ,NRBYAC ,
1813 2 IRBYAC ,NDOF ,NSRB ,IPARI ,
1814 3 NINT2 ,IINT2 ,NSI2 ,NPRW ,IRBE3 ,
1815 4 IRBE2 ,NSRB2 ,FR_ELEM ,IAD_ELEM ,INTBUF_TAB)
1823#include "implicit_f.inc"
1827#include "param_c.inc"
1828#include "com01_c.inc"
1829#include "com09_c.inc"
1830#include "com04_c.inc"
1831#include "task_c.inc"
1835 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*)
1836 INTEGER NINT2,IINT2(*),IPARI(NPARI,*),NSI2
1837 INTEGER NSRB,NDOF(*),NPRW(*),IRBE3(NRBE3L,*),IRBE2(NRBE2L,*),
1838 . NSRB2,FR_ELEM(*),IAD_ELEM(2,*)
1840 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
1849 INTEGER NMN,JI,K10,K11,K12,K13
1850INTEGER I,N,M,IC,ICT,ICR,INS(NRBE3),NP,NIN,NTY,
1856 CALL i2_prem(ipari,k,nint2,iint2,nsi2)
1859 CALL rbyac_imp(npby,itab,nrbyac,irbyac,nsrb)
1867 IF (iroddl>0) ndofi=6
1871 IF (m>0) ndof(m)=ndofi
1874 IF (nspmd > 1 .AND.ninter > 0)
THEN
1881 IF (ispmd/=0.AND.(nty<7.OR.nty==8
1882 . .OR.nty==14.OR.nty==15)) cycle
1883 IF(nty==5.OR.nty==7.OR.nty==10.OR.nty==11
1886 IF (intab(nsn,intbuf_tab(nin)%NSV(1),n)) ins(i)=1
1892 IF (n==0.OR.ins(i)==0) cycle
1909 IF(ndof(m)==0.AND.nsn >1) ndof(m)=ndofi
1921!||====================================================================
1923 1 NINT2 ,IINT2 ,IPARI ,NDOF ,
1924 2 NRBE3 ,IRBE3 ,LRBE3 ,NRBE2 ,IRBE2 ,
1925 3 LRBE2 ,INTBUF_TAB)
1933#include "implicit_f.inc"
1937#include "param_c.inc"
1941 INTEGER NINT2,(*),IPARI(,*),NDOF(*),
1942 . NRBE3 ,IRBE3(NRBE3L,*),LRBE3(*),NRBE2,IRBE2(NRBE2L,*),
1946 TYPE (INTBUF_STRUCT_) INTBUF_TAB(*)
1951 INTEGER I,N,M,L,NS,ID,NM,NSN,IAD,ILEV,NDOFM,IROT,IC
1961 IF (ilev == 0) ndofm=6
1963 ns=intbuf_tab(n)%NSV(j)
1964 IF (ndof(ns)>0)
THEN
1965 l=intbuf_tab(n)%IRTLM(j)
1968 nm=intbuf_tab(n)%IRECTM(id+m)
1969 IF (ndof(nm)<=0) ndof(nm)=
min(ndof(nm),-ndofm)
1981 ns=intbuf_tab(n)%NSV(j)
1982 IF (ndof(ns)>0)
THEN
1983 l=intbuf_tab(n)%IRTLM(j)
1986 nm=intbuf_tab(n)%IRECTM(id+m)
1987 IF (ndof(nm)<0) ndof(nm)=-ndof(nm)
1997 IF (ns==0.OR.ndof(ns)==0) cycle
1999 IF (irot > 0) ndofm=6
2003 IF (ndof(nm)<=0) ndof(nm)=
min(ndof(nm),-ndofm)
2010 IF (ns==0.OR.ndof(ns)==0) cycle
2014 IF (ndof(nm)<=0) ndof(nm)=-ndof(nm)
2026 IF (ndof(ns)<=3) irbe2(4,i)=ic*512
2027 ndof(m)=
max(ndof(m),ndof(ns))
2041 1 NPBY ,LPBY ,NRBYAC ,IRBYAC ,NDOF ,
2046#include "implicit_f.inc"
2050#include "param_c.inc"
2051#include "com01_c.inc"
2052#include "com04_c.inc"
2056 INTEGER NPBY(NNPBY,*),LPBY(*),NRBYAC,IRBYAC(*)
2057 INTEGER NDOF(*),IAD_RBY(*),FR_RBY(*)
2062 INTEGER I,J,K,N,M,NSN,NS,IE,NN
2064 IF (nrbyac==0)
RETURN
2073 IF (ndof(ns)>0) ie = 1
2080 nn=iad_rby(nspmd+1)-iad_rby(1)
2081 IF (nn>0)
CALL spmd_i2d(ndof,fr_rby,iad_rby,nn)
2090 irbyac(ie) = irbyac(i)
2091 irbyac(ie+nrbykin) = irbyac(i+nrbykin)
2108 1 NPBY ,LPBY ,ITAB ,NRBYAC ,IRBYAC ,
2109 2 NINT2 ,IINT2 ,IPARI ,INTBUF_TAB,NDOF ,
2110 3 NNMAX ,NROW ,NROWI ,NKINE ,INLOC ,
2111 4 ICOK ,IRBE3 ,LRBE3 ,IRBE2 ,LRBE2 )
2119#include "implicit_f.inc"
2123#include "com04_c.inc"
2124#include "param_c.inc"
2129 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*)
2130 INTEGER NINT2,IINT2(*),IPARI(NPARI,*),
2131 . ndof(*),nkine,inloc(*),irbe3(nrbe3l,*),lrbe3(*),
2132 . irbe2(nrbe2l,*),lrbe2(*)
2133 INTEGER NROW(*),NROWI(*),ICOK(NNMAX,*)
2135 TYPE(intbuf_struct_) INTBUF_TAB(*)
2146 INTEGER NSN,NMN,I,J,K,N,M,EP,L,NI,NJ,K12,ID,NS,NK,NM,NNOD,N1,L1,NL1,NL,J1,NM1,
2147 . JI1,L10,L11,L12,L13,L14,NNOD1,I1,NSN1,M1,NKE,IAD,IC
2158 ns=intbuf_tab(n)%NSV(j)
2159 IF (ndof(ns)>0)
THEN
2160 l=intbuf_tab(n)%IRTLM(j)
2162 IF (intbuf_tab(n)%IRECTM(id+3)==intbuf_tab(n)%IRECTM(id+4))
THEN
2168 nm=intbuf_tab(n)%IRECTM(id+m)
2169 IF (ndof(nm)>0)nrow(nm)=nrow(nm)+nnod-1
2174 IF (.NOT.intab(nsn,intbuf_tab(n)%NSV(1) ,nj))
THEN
2175 IF (inloc(nj)==0.AND.ndof(nj)>0)
THEN
2180 nm=intbuf_tab(n)%IRECTM(id+m)
2188 nj=intbuf_tab(n)%NSV(n1)
2189 l1=intbuf_tab(n)%IRTLM(n1)
2190 IF (ndof(nj)>0.AND.l/=l1)
THEN
2191 IF (intab(nrowi(nks),icok(1,nks),nj))
THEN
2194 nm=intbuf_tab(n)%IRECTM(id+m)
2196 nm1=intbuf_tab(n)%IRECTM(nl1+j1)
2199 nrow(nm1)=nrow(nm1)+1
2209 nm=intbuf_tab(n)%MSR(j)
2210 IF (inloc(nm)==0.AND.ndof(nm)>0)
THEN
2226 l11=l10+4*ipari(3,n1)
2227 l12=l11+4*ipari(4,n1)
2231 ni=intbuf_tab(n)%NSV(i)
2232 IF (ndof(ni)>0)
THEN
2236 nj=intbuf_tab(n1)%NSV(i1)
2238 . intab(nrowi(nke),icok(1,nke),nj))
THEN
2239 l=intbuf_tab(n)%IRTLM(i)
2241 IF (intbuf_tab(n)%IRECTM(nl+3)==intbuf_tab(n)%IRECTM(nl+4))
THEN
2246 l1=intbuf_tab(n1)%IRTLM(i1)
2248 IF (intbuf_tab(n1)%IRECTM(nl1+3)==intbuf_tab(n1)%IRECTM(nl1+4))
THEN
2254 nm=intbuf_tab(n)%IRECTM(nl+m)
2256 nm1=intbuf_tab(n1)%IRECTM(nl1+m1)
2257 IF (ndof(nm)>0.AND.ndof(nm1)>0)
THEN
2259 nrow(nm1)=nrow(nm1)+1
2280 ic = 7*512+7*64-irbe2(4,i)
2283 IF (ndof(ns)>0)
THEN
2287 IF (ndof(nj)>0)
THEN
2289 nrow(nj)=nrow(nj)+1+nhrbe2
2290 IF (inloc(nj)==0)
THEN
2297 IF (nrow(ns)>nrowi(nks)) nrow(m)=nrow(m)+ nrow(ns)-nrowi(nks)
2311 IF (ns==0.OR.ndof(ns)==0) cycle
2317 IF (ndof(nm)>0)nrow(nm)=nrow(nm)+nnod-1
2321 IF (inloc(nj)==0.AND.ndof(nj)>0)
THEN
2332 IF (nrow(ns)>nrowi(nks))
THEN
2333 k12 = nrow(ns)-nrowi(nks)
2336 nrow(nm)=nrow(nm)+ k12 + k12
2342 IF (nj==0.OR.ndof(nj)==0) cycle
2343 IF (intab(nrowi(nks),icok(1,nks),nj))
THEN
2352 nrow(nm1)=nrow(nm1)+1
2361 IF (inloc(nm)==0.AND.ndof(nm)>0)
THEN
2372 IF (inloc(m)<0) inloc(m)=-inloc(m)
2377 IF (ndof(ns)>0)
THEN
2381 IF (ndof(nj)>0)
THEN
2382 IF (.NOT.intab(nsn,lpby(k+1),nj))
THEN
2385 IF (inloc(nj)==0)
THEN
2392 IF (nrow(ns)>nrowi(nks)) nrow(m)=nrow(m)+ nrow(ns)-nrowi(nks)
2414 1 NPBY ,LPBY ,ITAB ,NRBYAC ,IRBYAC ,
2415 2 NINT2 ,IINT2 ,IPARI ,INTBUF_TAB,NDOF ,
2416 3 NNMAX ,NROWI ,NKINE ,INLOC ,ICOK ,
2417 4 NSS ,NSIJ ,NMIJ ,NSS2 ,NSIJ2 ,
2418 5 NMIJ2 ,NKMAX ,ICOKM ,INK ,IRBE3 ,
2419 6 LRBE3 ,NSS3 ,IRBE2 ,LRBE2 ,NSB2 )
2427#include "implicit_f.inc"
2431#include "com04_c.inc"
2432#include "param_c.inc"
2437 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*)
2438 INTEGER NINT2,IINT2(*),IPARI(NPARI,*),
2439 . ndof(*),nkine,inloc(*),nmij2,nss3
2440 INTEGER NROWI(*),ICOK(NNMAX,*),NSS ,NSIJ ,NMIJ,NSS2 ,NSIJ2
2441 INTEGER NKMAX,ICOKM(NKMAX,*),INK,IRBE3(NRBE3L,*),LRBE3(*),
2442 . irbe2(nrbe2l,*),lrbe2(*),nsb2
2444 TYPE() INTBUF_TAB(*)
2454 INTEGER NKS,NKM,NKE1,NKE2,NKM1,NKE
2455 INTEGER NSN,NMN,I,J,K,N,M,EP,L,NI,NJ,JI,K10,K11,K12,K13,
2456 . K14,KFI,ID,NS,NK,NM,NNOD,N1,L1,NL1,NL,J1,NM1,N2,
2457 . JI1,L10,L11,L12,L13,L14,NNOD1,I1,NSN1,M1,IAD,IC
2470 k11=k10+4*ipari(3,n)
2472 k12=k11+4*ipari(4,n)
2480 ns=intbuf_tab(n)%NSV(j)
2481 IF (ndof(ns)>0)
THEN
2482 l=intbuf_tab(n)%IRTLM(j)
2484 IF (intbuf_tab(n)%IRECTM(id+3)==intbuf_tab(n)%IRECTM(id+4))
THEN
2490 nm=intbuf_tab(n)%IRECTM(id+m)
2491 IF (ndof(nm)>0)
THEN
2494 nm1=intbuf_tab(n)%IRECTM(id+j1)
2495 IF (nm/=nm1)
CALL reorder_a(nrowi(nke1),icok(1,nke1),nm1)
2503 . (.NOT.intab(nsn,intbuf_tab(n)%NSV(1),nj)))
THEN
2507 nm=intbuf_tab(n)%IRECTM(id+m)
2508 IF (ndof(nm)>0)
THEN
2510 CALL reorder_a(nrowi(nke1),icok(1,nke1),nj)
2511 CALL reorder_a(nrowi(nke2),icok(1,nke2),nm)
2518 nj=intbuf_tab(n)%NSV(n1)
2519 l1=intbuf_tab(n)%IRTLM(n1)
2521 . intab(nrowi(nks),icok(1,nks),nj))
THEN
2526 nm=intbuf_tab(n)%IRECTM(id+m)
2527 IF (ndof(nm)>0)
THEN
2530 nm1=intbuf_tab(n)%IRECTM(nl1+j1)
2531 IF (nm/=nm1.AND.ndof(nm1)>0)
THEN
2533 CALL reorder_a(nrowi(nke1),icok(1,nke1),nm1)
2534 CALL reorder_a(nrowi(nke2),icok(1,nke2),nm)
2552 ic = 7*512+7*64-irbe2(4,n)
2555 IF (ndof(ns)>0)
THEN
2564 IF (ndof(nj)>0.AND.nj/=ns)
THEN
2566 CALL reorder_a(nrowi(nke1),icokm(1,nke1),nj)
2568 CALL reorder_a(nrowi(nke2),icok(1,nke2),m)
2569 ELSEIF (nke2>0)
THEN
2570 CALL reorder_a(nrowi(nke2),icokm(1,nke2),m)
2575 CALL reorder_a(nrowi(nke1),icokm(1,nke1),ns)
2577 CALL reorder_a(nrowi(nks),icok(1,nks),m)
2578 ELSEIF (nks > 0)
THEN
2579 CALL reorder_a(nrowi(nks),icokm(1,nks),m)
2592 IF (ndof(ns)>0)
THEN
2596 IF (ndof(nm)>0)
THEN
2600 IF (nke1>ink.AND.nm/=nm1)
THEN
2601 CALL reorder_a(nrowi(nke1),icok(1,nke1),nm1)
2602 ELSEIF (nke1>0.AND.nm/=nm1)
THEN
2603 CALL reorder_a(nrowi(nke1),icokm(1,nke1),nm1)
2607 CALL reorder_a(nrowi(nke2),icok(1,nke2),nm)
2608 ELSEIF (nke2>0)
THEN
2609 CALL reorder_a(nrowi(nke2),icokm(1,nke2),nm)
2622 IF (ndof(nj)>0 )
THEN
2627 IF (ndof(nm)>0)
THEN
2631 CALL reorder_a(nrowi(nke1),icok(1,nke1),nj)
2632 ELSEIF (nke1>0)
THEN
2633 CALL reorder_a(nrowi(nke1),icokm(1,nke1),nj)
2637 CALL reorder_a(nrowi(nke2),icok(1,nke2),nm)
2638 ELSEIF (nke2>0)
THEN
2639 CALL reorder_a(nrowi(nke2),icokm(1,nke2),nm)
2662 IF (ndof(ns)>0)
THEN
2672 . (.NOT.intab(nsn,lpby(k+1),nj)))
THEN
2674 CALL reorder_a(nrowi(nke1),icokm(1,nke1),nj)
2676 CALL reorder_a(nrowi(nke2),icok(1,nke2),m)
2677 ELSEIF (nke2>0)
THEN
2678 CALL reorder_a(nrowi(nke2),icokm(1,nke2),m)
2687 . (intab(nrowi(nks),icok(1,nks),nj)))
THEN
2692 . (intab(nrowi(nks),icokm(1,nks),nj)))
THEN
2713 l1=irbyac(j1+nrbykin)
2716 IF (intab(nrowi(nke1),icokm(1,nke1),nm))
THEN
2720 IF (ndof(ni)>0)
THEN
2723 IF (intab(nrowi(nks),icok(1,nks),m))
THEN
2728 . intab(nrowi(nks),icok(1,nks),n2))
THEN
2734 IF (intab(nrowi(nks),icokm(1,nks),m))
THEN
2739 . intab(nrowi(nks),icokm(1,nks),n2))
THEN
2768 1 ITAB ,NRBYAC ,IRBYAC ,NSC ,ISIJ ,
2769 2 NMC ,IMIJ ,NSS ,ISS ,NINT2 ,
2770 3 IINT2 ,IPARI ,INTBUF_TAB,NSC2 ,ISIJ2 ,
2771 4 NSS2 ,ISS2 ,NDOF ,NNMAX ,NKINE ,
2772 5 INLOC ,NKMAX ,NROWK ,ICOK ,ICOKM ,
2773 6 NMC2 ,IMIJ2 ,INK ,IRBE3 ,LRBE3 ,
2774 7 ISS3 ,IRBE2 ,LRBE2 ,ISB2 ,NSRB2 )
2783#include "implicit_f.inc"
2787#include "com04_c.inc"
2788#include "param_c.inc"
2789#include "remesh_c.inc"
2794 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*),
2795 . nsc(*),isij(*),nss(*),iss(*),nint2,iint2(*),
2796 . nsc2(*),isij2(*),nss2(*),iss2(*),ipari(npari,*),
2797 . nmc,imij(*),icok(nnmax,*),icokm(nkmax,*),nrowk(*),
2798 . nmc2,imij2(*),irbe2(nrbe2l,*),lrbe2(*),isb2(*),nsrb2(*)
2800 . ndof(*),nkine,inloc(*),ink,irbe3(nrbe3l,*),lrbe3(*),iss3(*)
2802 TYPE(intbuf_struct_) INTBUF_TAB(*)
2813 INTEGER NKE,NKE1,NKE2,IK,NKM1,IAD
2815 . I,J,K,N,L,NL,NJ,NI,J1,M,NSN,N1,N2,NK,ID,
2816 . JI,K10,K11,K12,K13,K14,KFI,NS,NNOD,NM,L1,NL1,NM1,
2817 . JI1,L10,L11,L12,L13,L14,NNOD1,I1,NSN1,M1,K1,IC
2827 k11=k10+4*ipari(3,n)
2829 k12=k11+4*ipari(4,n)
2840 ni=intbuf_tab(n)%NSV(i)
2841 IF (ndof(ni)>0)
THEN
2842 l=intbuf_tab(n)%IRTLM(i)
2844 IF (intbuf_tab(n)%IRECTM(nl+3)==intbuf_tab(n)%IRECTM(nl+4))
THEN
2850 nm=intbuf_tab(n)%IRECTM(nl+m)
2851 IF (ndof(nm)>0)
THEN
2854 nm1=intbuf_tab(n)%IRECTM(nl+j1)
2855 IF (nm/=nm1)
CALL reorder_a(nrowk(nke1),icok(1,nke1),nm1)
2863 . (.NOT.intab(nsn,intbuf_tab(n)%NSV(1),nj)))
THEN
2869 nm=intbuf_tab(n)%IRECTM(nl+m)
2870 IF (ndof(nm)>0)
THEN
2872 CALL reorder_a(nrowk(nke1),icok(1,nke1),nj)
2873 CALL reorder_a(nrowk(nke2),icok(1,nke2),nm)
2881 nj=intbuf_tab(n)%NSV(n1)
2882 l1=intbuf_tab(n)%IRTLM(n1)
2884 . intab(nrowk(nke),icok(1,nke),nj))
THEN
2886 id =nk+2*(nsc2(j)-1)
2892 nm=intbuf_tab(n)%IRECTM(nl+m)
2893 IF (ndof(nm)>0)
THEN
2896 nm1=intbuf_tab(n)%IRECTM(nl1+j1)
2897 IF (nm/=nm1.AND.ndof(nm1)>0)
THEN
2899 CALL reorder_a(nrowk(nke1),icok(1,nke1),nm1)
2900 CALL reorder_a(nrowk(nke2),icok(1,nke2),nm)
2923 ic = 7*512+7*64-irbe2(4,n)
2927 IF (ndof(ni)>0)
THEN
2930 IF (nke <= ink)
THEN
2933 nj=icokm(n1,nke-ink)
2936 IF (ndof(nj)>0.AND.nj/=ni)
THEN
2937 CALL reorder_a(nrowk(nke1),icokm(1,nke1-ink),nj)
2939 CALL reorder_a(nrowk(nke2),icok(1,nke2),m)
2940 ELSEIF (nke2>0)
THEN
2941 CALL reorder_a(nrowk(nke2),icokm(1,nke2-ink),m)
2944 nsrb2(i+k1)=nsrb2(i+k1)+1
2950 CALL reorder_a(nrowk(nke1),icokm(1,nke1-ink),ni)
2951 IF (nke <= ink)
THEN
2952 CALL reorder_a(nrowk(nke),icok(1,nke),m)
2954 CALL reorder_a(nrowk(nke),icokm(1,nke-ink),m)
2969 IF (ndof(ni)>0)
THEN
2972 IF (ndof(nm)>0)
THEN
2976 IF (nke1<=ink.AND.nm/=nm1)
THEN
2977 CALL reorder_a(nrowk(nke1),icok(1,nke1),nm1)
2978 ELSEIF (nm/=nm1)
THEN
2979 CALL reorder_a(nrowk(nke1),icokm(1,nke1-ink),nm1)
2986 IF (nke <= ink)
THEN
2989 nj=icokm(n1,nke-ink)
2991 IF (ndof(nj)>0.AND.ni/=nj)
THEN
2998 IF (ndof(nm)>0)
THEN
3002 CALL reorder_a(nrowk(nke1),icok(1,nke1),nj)
3004 CALL reorder_a(nrowk(nke1),icokm(1,nke1-ink),nj)
3008 CALL reorder_a(nrowk(nke2),icok(1,nke2),nm)
3010 CALL reorder_a(nrowk(nke2),icokm(1,nke2-ink),nm)
3026 k1=irbyac(j+nrbykin)
3037 IF (ndof(ni)>0)
THEN
3040 IF (nke <= ink)
THEN
3043 nj=icokm(n1,nke-ink)
3047 . (.NOT.intab(nsn,lpby(k1+1),nj)))
THEN
3048 CALL reorder_a(nrowk(nke1),icokm(1,nkm1),nj)
3050 CALL reorder_a(nrowk(nke2),icok(1,nke2),m)
3055 CALL reorder_a(nrowk(nke2),icokm(1,nke2-ink),m)
3063 IF (nke <= ink)
THEN
3065 . (intab(nrowk(nke),icok(1,nke),nj)))
THEN
3073 . (intab(nrowk(nke),icokm(1,nke-ink),nj)))
THEN
3101 l1=irbyac(j1+nrbykin)
3104 IF (ndof(nm)>0.AND. nkmax>0)
THEN
3105 IF (intab(nrowk(nke1),icokm(1,nkm1),nm))
THEN
3109 IF (ndof(ni)>0)
THEN
3111 IF (nke <= ink)
THEN
3112 IF (intab(nrowk(nke),icok(1,nke),m))
THEN
3118 . intab(nrowk(nke),icok(1,nke),n2))
THEN
3130 IF (intab(nrowk(nke),icokm(1,nke-ink),m))
THEN
3136 . intab(nrowk(nke),icokm(1,nke-ink),n2))
THEN
3158 IF (nadmesh > 0)
CALL rmind_imp(nnmax,inloc,nrowk,icok )
3183 1 IGEO ,NPBY ,LPBY ,ITAB ,NRBYAC ,
3184 2 IRBYAC ,NINT2 ,IINT2 ,IPARI ,
3185 3 INTBUF_TAB,IXS ,IXQ ,IXC ,IXT ,
3186 4 IXP ,IXR ,IXTG ,IXTG1 ,IXS10 ,
3187 5 IXS20 ,IXS16 ,IPARG ,NDOF ,
3188 6 NSI2 ,NSRB ,ELBUF ,NKINE ,INLOC ,
3189 7 NROW ,NNMAX ,NKMAX ,NSS ,NSIJ ,
3190 8 NMIJ ,NSS2 ,NSIJ2 ,NMIJ2 ,FR_ELEM ,
3191 9 IAD_ELEM ,SH4TREE ,SH3TREE ,IRBE3 ,LRBE3 ,
3192 A NSS3 ,IRBE2 ,LRBE2 ,NSB2 ,ELBUF_TAB )
3198 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
3202#include "implicit_f.inc"
3206#include "com01_c.inc"
3207#include "com04_c.inc"
3208#include "param_c.inc"
3209#include "impl1_c.inc"
3210#include "remesh_c.inc"
3214 INTEGER IPARG(NPARG,*),IGEO(*),IRBE3(*),LRBE3(*)
3215 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*)
3216 INTEGER NINT2,IINT2(*),(NPARI,*),NSI2,NSRB
3217 INTEGER FR_ELEM(*),IAD_ELEM(2,*),SH4TREE(*),SH3TREE(*)
3219 . ixs(nixs,*),ixq(nixq,*),ixc(nixc,*), ixt(nixt,*), ixp(nixp,*),
3220 . ixr(nixr,*), ixtg(nixtg,*),ixs10(6,*),ixs20(12,*),
3221 . ixs16(8,*),ixtg1(4,*),ndof(*),nrow(*),nnmax,nkine,
3222 . inloc(*),nkmax,nss,nsij,nmij,nss2,nsij2,nmij2,nss3,
3223 . irbe2(*),lrbe2(*),nsb2
3226 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
3227 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
3231 INTEGER I,J,K,N,M,L,NKINE0,NNMAX0,NK,L1,L2,IERR,LNK
3232 INTEGER,
DIMENSION(:),
ALLOCATABLE :: ICOK,NROWI
3239 1 igeo ,npby ,lpby ,itab ,nrbyac ,
3240 2 irbyac ,nint2 ,iint2 ,ipari ,
3241 3 ndof ,nsi2 ,nsrb ,nkine ,
3242 7 inloc ,irbe3 ,irbe2 ,lrbe2 ,lnk ,
3248 ALLOCATE(icok(nkine*nnmax))
3249 ALLOCATE(nrowi(nkine))
3255 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
3256 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3257 3 ixs10 ,ixs20 ,ixs16 ,nrowi ,
3258 4 inloc ,nnmax ,icok ,igeo ,elbuf_tab )
3261 1 nnmax ,nnmax ,nrowi ,icok ,icok ,
3262 2 inloc ,numnod ,fr_elem ,iad_elem )
3266 IF (nk > 0) nrow(n) =
max(nrow(n),nrowi(nk))
3270 1 npby ,lpby ,itab ,nrbyac ,irbyac ,
3271 2 nint2 ,iint2 ,ipari ,intbuf_tab,ndof ,
3272 3 nnmax ,nrow ,nrowi ,nkine ,inloc ,
3273 4 icok ,irbe3 ,lrbe3 ,irbe2 ,lrbe2 )
3284 nnmax=
max(nnmax,nrow(n))
3286 nkmax=
max(nkmax,nrow(n))
3291 nkmax=
max(nkmax,nnmax)
3296 nk = lnk*nkmax+nkine*nnmax
3298 ALLOCATE(nrowi(nkine))
3306 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
3307 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3308 3 ixs10 ,ixs20 ,ixs16 ,nrowi ,
3309 4 inloc ,nnmax ,icok(l2) ,nkmax ,icok(l1) ,
3310 5 lnk ,igeo ,elbuf_tab )
3314 1 nnmax ,nkmax ,nrowi ,icok(l2) ,icok(l1) ,
3315 2 inloc ,lnk ,fr_elem ,iad_elem )
3319 1 npby ,lpby ,itab ,nrbyac ,irbyac ,
3320 2 nint2 ,iint2 ,ipari ,intbuf_tab,ndof ,
3321 3 nnmax ,nrowi ,nkine ,inloc ,icok(l2) ,
3322 4 nss ,nsij ,nmij ,nss2 ,nsij2 ,
3323 5 nmij2 ,nkmax ,icok(l1) ,lnk ,irbe3 ,
3324 6 lrbe3 ,nss3 ,irbe2 ,lrbe2 ,nsb2 )
3330 nnmax=
max(nnmax,nrowi(nk))
3332 nkmax=
max(nkmax,nrowi(nk))
3337 IF (nk>0)nrow(n)=nrowi(nk)
3343 IF (nadmesh > 0)
CALL rmdim_imp(ixc ,ixtg ,ndof ,nnmax,nkine,
3344 1 inloc,nrow ,itab ,sh4tree,sh3tree)
3373 1 GEO ,NPBY ,LPBY ,ITAB ,NRBYAC ,
3374 2 IRBYAC ,NINT2 ,IINT2 ,IPARI ,
3375 3 IXS ,IXQ ,IXC ,IXT ,
3376 4 IXP ,IXR ,IXTG ,IXTG1 ,IXS10 ,
3377 5 IXS20 ,IXS16 ,IPARG ,NDOF ,
3378 6 IDDL ,NDDL ,NNZK ,ELBUF ,INLOC ,
3379 7 LSIZE ,FR_ELEM ,IAD_ELEM ,FR_I2M ,IAD_I2M ,
3380 8 NPRW ,NMONV ,IMONV ,MONVOL ,IGRSURF ,
3381 9 FR_MV ,IPM ,IGEO ,IAD_RBY ,
3382 A FR_RBY ,SH4TREE ,SH3TREE ,IRBE3 ,LRBE3 ,
3383 B FR_RBE3M ,IAD_RBE3M ,IRBE2 ,LRBE2 ,IBFV ,
3384 C VEL ,ELBUF_TAB ,IFRAME ,INTBUF_TAB )
3391 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
3395#include "implicit_f.inc"
3399#include "com01_c.inc"
3400#include "com04_c.inc"
3401#include "param_c.inc"
3402#include "impl1_c.inc"
3403#include "task_c.inc"
3407 INTEGER IPARG(NPARG,*),FR_ELEM(*) ,IAD_ELEM(2,*)
3408 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*)
3409 INTEGER NINT2,IINT2(*),IPARI(NPARI,*),
3410 . fr_i2m(*),iad_i2m(*),fr_rby(*),iad_rby(*)
3411 INTEGER NMONV,IMONV(*),MONVOL(*),
3412 . fr_mv(nspmd+2,nvolu),nprw(*),fr_rbe3m(*),iad_rbe3m(*)
3413 INTEGER IPM(NPROPMI,*),IGEO(NPROPGI,*),IFRAME(LISKN,*)
3415 . ixs(nixs,*),ixq(nixq,*),ixc(nixc,*), ixt(nixt,*), ixp(nixp,*),
3416 . ixr(nixr,*), ixtg(nixtg,*),ixs10(6,*),ixs20(12,*),
3417 . ixs16(8,*),ixtg1(4,*),iddl(*),ndof(*),irbe3(*),lrbe3(*),
3418 . nddl ,nnzk,inloc(*),lsize(*),sh4tree(*), sh3tree(*),
3419 . irbe2(*),lrbe2(*),ibfv(*)
3422 . geo(npropg,*),elbuf(*),vel(*)
3423 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
3424 TYPE (INTBUF_STRUCT_) INTBUF_TAB(*)
3425 TYPE (SURF_) ,
DIMENSION(NSURF) :: IGRSURF
3429 INTEGER NKINE,NKMAX,,NSI2,NSRB,NSS,NSIJ,NMIJ,NSS2,,NSS3
3430 INTEGER I,J,K,N,M,L,NDOFI,,NKINE0,NMIJ2,IP,NPN,NPP,IER1
3431 INTEGER IAD_M(NSPMD+1),,NSRB2
3432 INTEGER,
DIMENSION(:),
ALLOCATABLE :: FR_M
3450 1 npby ,lpby ,itab ,nrbyac ,
3451 2 irbyac ,ndof ,nsrb ,ipari ,
3452 3 nint2 ,iint2 ,nsi2 ,nprw ,irbe3 ,
3453 4 irbe2 ,nsrb2 ,fr_elem ,iad_elem ,intbuf_tab )
3455 1 igeo ,elbuf ,iparg ,ixs ,ixq ,
3456 2 ixc ,ixt ,ixp ,ixr ,ixtg ,
3457 3 ixtg1 ,ixs10 ,ixs20 ,ixs16 ,
3458 4 ndof ,iddl ,elbuf_tab )
3460 1 nint2 ,iint2 ,ipari ,ndof ,
3461 2 nrbe3 ,irbe3 ,lrbe3 ,nrbe2 ,irbe2 ,
3462 3 lrbe2 ,intbuf_tab )
3464 CALL ndof_fv(ibfv ,vel ,ndof ,iframe )
3466 1 npby ,lpby ,nrbyac ,irbyac ,ndof ,
3469 nnmax=iad_elem(1,nspmd+1)-iad_elem(1,1)
3470 IF (nnmax>0)
CALL spmd_ndof(ndof,fr_elem,iad_elem,nnmax)
3473 1 nmonv ,imonv ,monvol ,igrsurf ,
3474 2 fr_mv ,inloc ,npby ,lpby ,nrbyac ,
3475 3 irbyac ,nint2 ,iint2 ,ipari ,intbuf_tab,
3476 4 ndof ,iprec ,irbe3 ,irbe2 ,lrbe2 )
3479 IF (ndof(n)>0) nnmax=
max(nnmax,iddl(n))
3484 npp=iad_elem(1,nspmd+1)-iad_elem(1,1)
3485 m = iad_i2m(nspmd+1)-iad_i2m(1)+
3486 . iad_rbe3m(nspmd+1)-iad_rbe3m(1)
3495 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
3496 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3497 3 ixs10 ,ixs20 ,ixs16 ,ndof ,
3498 4 nkine0 ,inloc ,fr_elem ,iad_elem ,npp ,
3499 5 igeo ,fr_m ,iad_m ,elbuf_tab )
3503 1 ixs ,ixq ,ixc ,ixt ,ixp ,
3504 2 ixr ,ixtg ,ixtg1 ,ixs10 ,ixs20 ,
3505 3 ixs16 ,iparg ,elbuf ,ndof ,
3506 4 iddl ,inloc ,nnmax ,nkine0 ,nnsiz ,
3509 CALL dim_nrmax(iddl ,fr_elem ,iad_elem ,nnmax )
3513 1 igeo ,npby ,lpby ,itab ,nrbyac ,
3514 2 irbyac ,nint2 ,iint2 ,ipari ,
3515 3 intbuf_tab,ixs ,ixq ,ixc ,ixt ,
3516 4 ixp ,ixr ,ixtg ,ixtg1 ,ixs10 ,
3517 5 ixs20 ,ixs16 ,iparg ,ndof ,
3518 6 nsi2 ,nsrb ,elbuf ,nkine ,inloc ,
3519 7 iddl ,nnmax ,nkmax ,nss ,nsij ,
3520 8 nmij ,nss2 ,nsij2 ,nmij2 ,fr_elem ,
3521 9 iad_elem ,sh4tree ,sh3tree ,irbe3 ,lrbe3 ,
3522 a nss3 ,irbe2 ,lrbe2 ,nsb2 ,elbuf_tab )
3535 IF (j/=k) nnzk = nnzk+1
3559 DO m=iad_elem(1,ip),iad_elem(1,ip+1)-1
3561 IF (iddl(n)==0)
THEN
3569 DO ip =ispmd+2,nspmd
3570 DO m=iad_elem(1,ip),iad_elem(1,ip+1)-1
3572 IF (iddl(n)==0)
THEN
3581 IF (iddl(n)==0)
THEN
3584 ELSEIF (iddl(n)<0)
THEN
3597 IF (iddl(n)==0)
THEN
3608 IF (iddl(n)==0)
THEN
3624 IF (ndofi>0) nddl = nddl + ndofi
3654 1 IDDL ,NDOF ,IADK ,JDIK ,NDDL ,
3655 2 NNZK ,NROW ,ICOL ,N ,IKPAT )
3659#include
"implicit_f.inc"
3664 . iddl(*),ndof(*),iadk(*),jdik(*),
3665 . nddl ,nnzk,nrow ,icol(*),n,ikpat
3669 INTEGER I,J,K,L,NL,NJ,NDOFI
3677 jdik(nnzk) = iddl(n)+j
3684 jdik(nnzk) = iddl(nj)+l
3693 jdik(nnzk) = iddl(nj)+l
3698 jdik(nnzk) = iddl(n)+j
3708!||====================================================================
3735 1 ITAB ,NRBYAC ,IRBYAC ,NSC ,ISIJ ,
3736 2 NMC ,IMIJ ,NSS ,ISS ,NINT2 ,
3737 3 IINT2 ,IPARI ,INTBUF_TAB,NSC2 ,ISIJ2 ,
3738 4 NSS2 ,ISS2 ,IPARG ,ELBUF ,ELBUF_TAB ,
3739 5 IXS ,IXQ ,IXC ,IXT ,IXP ,
3740 6 IXR ,IXTG ,IXTG1 ,IXS10 ,IXS20 ,
3741 7 IXS16 ,IDDL ,NDOF ,IADK ,
3742 8 JDIK ,NDDL ,NNZK ,NNMAX ,NKINE ,
3743 9 INLOC ,NKMAX ,NROWK ,ICOK ,ICOKM ,
3744 A NMC2 ,IMIJ2 ,IRK ,NPN ,NPP ,
3745 B FR_ELEM ,IAD_ELEM ,IPM ,IGEO ,IRBE3 ,
3746 C LRBE3 ,ISS3 ,FR_I2M ,IAD_I2M ,FR_RBE3M ,
3747 D IAD_RBE3M ,IRBE2 ,LRBE2 ,ISB2 ,NSRB2 )
3753 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
3757#include "implicit_f.inc"
3761#include "com01_c.inc"
3762#include "com04_c.inc"
3763#include "param_c.inc"
3764#include "impl1_c.inc"
3768 INTEGER IPARG(NPARG,*),NNMAX,IRK,NKMAX
3769 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*),
3770 . nsc(*),isij(*),nss(*),iss(*),nint2,iint2(*),
3771 . nsc2(*),isij2(*),nss2(*),iss2(*),ipari(npari,*),
3772 . nmc,imij(*),icok(nnmax,*),icokm(nkmax,*),nrowk(*)
3773 INTEGER IPM(NPROPMI,*),IGEO(NPROPGI,*)
3775 . ixs(nixs,*),ixq(nixq,*),ixc(nixc,*), ixt(nixt,*), ixp(nixp,*),
3776 . ixr(nixr,*), ixtg(nixtg,*),ixs10(6,*),ixs20(12,*),
3777 . ixs16(8,*),ixtg1(4,*),iddl(*),ndof(*),iadk(*),jdik(*),
3778 . nddl ,nnzk,nkine,inloc(*),nmc2,imij2(*),npn ,npp,
3779 . fr_elem(*),iad_elem(2,*),irbe3(*),lrbe3(*),iss3(*),
3780 . fr_i2m(*),iad_i2m(*),fr_rbe3m(*),iad_rbe3m(*),
3781 . irbe2(*),lrbe2(*),isb2(*),nsrb2(*)
3784 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP) :: ELBUF_TAB
3785 TYPE(intbuf_struct_) INTBUF_TAB(*)
3799 INTEGER ICOL(,NNSIZ)
3800INTEGER I,J,K,N,L,NL,NJ,LENK,M,NK,ID,NFT,JLT,,IP
3802 INTEGER IAD_M(NSPMD+1)
3803 INTEGER,
DIMENSION(:),
ALLOCATABLE :: FR_M
3804 INTEGER,
DIMENSION(:,:),
ALLOCATABLE
3816 m = iad_i2m(nspmd+1)-iad_i2m(1)+
3817 . iad_rbe3m(nspmd+1)-iad_rbe3m(1)
3834 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
3835 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3836 3 ixs10 ,ixs20 ,ixs16 ,nrowk ,
3837 4 iloc ,nnmax ,icok ,nkmax ,icokm ,
3838 5 ink ,igeo ,elbuf_tab )
3840 1 nnmax ,nkmax ,nrowk ,icok ,icokm ,
3841 2 iloc ,ink ,fr_elem ,iad_elem )
3843 1 itab ,nrbyac ,irbyac ,nsc ,isij ,
3844 2 nmc ,imij ,nss ,iss ,nint2 ,
3845 3 iint2 ,ipari ,intbuf_tab,nsc2 ,isij2 ,
3846 4 nss2 ,iss2 ,ndof ,nnmax ,nkine ,
3847 5 iloc ,nkmax ,nrowk ,icok ,icokm ,
3848 6 nmc2 ,imij2 ,ink ,irbe3 ,lrbe3 ,
3849 7 iss3 ,irbe2 ,lrbe2 ,isb2 ,nsrb2 )
3852 1 nrowk ,icok ,icokm ,nnmax ,nkmax ,
3853 2 nkine ,ink ,ikpat ,iddl )
3859 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
3860 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3861 3 ixs10 ,ixs20 ,ixs16 ,ndof ,
3862 4 nnmax ,iloc ,fr_elem ,iad_elem ,n_fr ,
3863 5 igeo ,fr_m ,iad_m ,elbuf_tab ,nrmax )
3869 ALLOCATE(icokfr(nrmax,n_fr))
3871 DO nft = 0 , jlt1-1 , nnsiz
3872 jlt =
min( nnsiz, jlt1 - nft )
3880 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
3881 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3882 3 ixs10 ,ixs20 ,ixs16 ,nrow ,
3883 4 iloc ,nnmax ,icol ,igeo ,elbuf_tab )
3885 1 nft ,jlt ,npn ,npp ,nnmax ,
3886 2 nrow ,icol ,fr_elem ,iad_elem ,n_fr ,
3903 1 iddl ,ndof ,iadk ,jdik ,nl ,
3904 2 lenk ,nrowk(k) ,icokm(1,nj),j ,ikpat )
3907 1 iddl ,ndof ,iadk ,jdik ,nl ,
3908 2 lenk ,nrowk(k) ,icok(1,k) ,j ,ikpat )
3911 CALL reorder_j(nrow(nk),icol(1,nk),j,iddl)
3913 CALL reorder_l(nrow(nk),icol(1,nk),j,iddl)
3916 1 iddl ,ndof ,iadk ,jdik ,nl ,
3917 2 lenk ,nrow(nk) ,icol(1,nk),j ,ikpat )
3927 CALL reorder_j(nrow(nk),icol(1,nk),j,iddl)
3930 1 iddl ,ndof ,iadk ,jdik ,nl ,
3931 2 lenk ,nrow(nk) ,icol(1,nk),j ,ikpat )
3938 CALL reorder_l(nrow(nk),icol(1,nk),j,iddl)
3941 1 iddl ,ndof ,iadk ,jdik ,nl ,
3942 2 lenk ,nrow(nk) ,icol(1,nk),j ,ikpat )
3950 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
3951 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3952 3 ixs10 ,ixs20 ,ixs16 ,ndof ,
3953 4 nnmax ,iloc ,fr_elem ,iad_elem ,n_fr ,
3957 1 iadk ,jdik ,ndof ,iddl ,fr_elem ,
3974 DO nft = 0 , jlt1-1 , nnsiz
3975 jlt =
min( nnsiz, jlt1 - nft )
3984 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
3985 3 ixs10 ,ixs20 ,ixs16 ,nrow ,
3986 4 iloc ,nnmax ,icol ,igeo ,elbuf_tab )
3992 CALL reorder_j(nrow(nk),icol(1,nk),j,iddl)
3994 1 iddl ,ndof ,iadk ,jdik ,nl ,
3995 2 lenk ,nrow(nk) ,icol(1,nk),j ,ikpat )
4003 CALL reorder_l(nrow(nk),icol(1,nk),j,iddl)
4005 1 iddl ,ndof ,iadk ,jdik ,nl ,
4006 2 lenk ,nrow(nk) ,icol(1,nk),j ,ikpat )
4018 IF (nkine==0)
GOTO 100
4033 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
4034 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
4035 3 ixs10 ,ixs20 ,ixs16 ,nrowk ,
4036 4 iloc ,nnmax ,icok ,nkmax ,icokm ,
4037 5 ink ,igeo ,elbuf_tab )
4040 1 itab ,nrbyac ,irbyac ,nsc ,isij ,
4041 2 nmc ,imij ,nss ,iss ,nint2 ,
4042 3 iint2 ,ipari ,intbuf_tab,nsc2 ,isij2 ,
4043 4 nss2 ,iss2 ,ndof ,nnmax ,nkine ,
4044 5 iloc ,nkmax ,nrowk ,icok ,icokm ,
4045 6 nmc2 ,imij2 ,ink ,irbe3 ,lrbe3 ,
4046 7 iss3 ,irbe2 ,lrbe2 ,isb2 ,nsrb2 )
4052 IF (nk>ink.AND.nkmax>0)
THEN
4054 CALL reorder_j(nrowk(nk),icokm(1,nj),j,iddl)
4056 CALL reorder_j(nrowk(nk),icok(1,nk),j,iddl)
4063 IF (nk>ink.AND.nkmax>0)
THEN
4065 CALL reorder_l(nrowk(nk),icokm(1,nj),j,iddl)
4067 CALL reorder_l(nrowk(nk),icok(1,nk),j,iddl)
4078 1 iddl ,ndof ,iadk ,jdik ,nl ,
4079 2 lenk ,nrowk(nk) ,icok(1,nk),j ,ikpat )
4088 1 iddl ,ndof ,iadk ,jdik ,nl ,
4089 2 lenk ,nrowk(nk),icokm(1,nj),j ,ikpat )
4114 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
4115 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
4116 3 ixs10 ,ixs20 ,ixs16 ,nrowk ,
4117 4 iloc ,nnmax ,icok ,nkmax ,icokm ,
4118 5 ink ,igeo ,elbuf_tab )
4121 1 itab ,nrbyac ,irbyac ,nsc ,isij ,
4122 2 nmc ,imij ,nss ,iss ,nint2 ,
4123 3 iint2 ,ipari ,intbuf_tab,nsc2 ,isij2 ,
4124 4 nss2 ,iss2 ,ndof ,nnmax ,nkine ,
4125 5 iloc ,nkmax ,nrowk ,icok ,icokm ,
4126 6 nmc2 ,imij2 ,ink ,irbe3 ,lrbe3 ,
4127 7 iss3 ,irbe2 ,lrbe2 ,isb2 ,nsrb2 )
4134 CALL reorder_l(nrowk(nj),icok(1,nj),j,iddl)
4135 ELSEIF( nkmax>0)
THEN
4136 CALL reorder_l(nrowk(nk+ink),icokm(1,nk),j,iddl)
4147 1 iddl ,ndof ,iadk ,jdik ,nl ,
4148 2 lenk ,nrowk(nk+ink) ,icokm(1,nk),j ,ikpat )
4158 1 iddl ,ndof ,iadk ,jdik ,nl ,
4159 2 lenk ,nrowk(nj) ,icok(1,nj),j ,ikpat )
4163 DO nft = nkine , numnod-1 , nnsiz
4164 jlt =
min( nnsiz, numnod - nft )
4172 1 elbuf ,iparg ,ixs ,ixq ,ixc ,
4173 2 ixt ,ixp ,ixr ,ixtg ,ixtg1 ,
4174 3 ixs10 ,ixs20 ,ixs16 ,nrow ,
4175 4 iloc ,nnmax ,icol ,igeo ,elbuf_tab )
4179 CALL reorder_l(nrow(nk),icol(1,nk),j,iddl)
4182 1 iddl ,ndof ,iadk ,jdik ,nl ,
4183 2 lenk ,nrow(nk) ,icol(1,nk),j ,ikpat )
4193 100 iadk(nddl+1) = lenk+1
4194 IF (lenk>nnzk.OR.nl/=(nddl+1))
4195 .
WRITE(*,*)
'--MEMERY PROBLEM 2--:',lenk,nl,nnzk,nddl+1
4210#include "implicit_f.inc"
4218 INTEGER I,J,IMIN,IT,II
4225 IF (ic(j)<imin)
THEN
4237 IF (ic(i)/=ic(i-1))
THEN
4289#include "implicit_f.inc"
4301 IF (ic(i)==id)
RETURN
4315#include "implicit_f.inc"
4330 ELSEIF (ic(i)>id)
THEN
4341 ELSEIF (id/=ic(it-1))
THEN
4358#include "implicit_f.inc"
4390#include "implicit_f.inc"
4394 INTEGER N ,IC(*),NI,(*)
4398 INTEGER I,,II,IT,IIC,IMIN,IDIC(N)
4417 IF (idic(j)<imin)
THEN
4443!||====================================================================
4455#include "implicit_f.inc"
4459 INTEGER N ,IC(*),NI,IDDL(*)
4463 INTEGER I,J,II,IT,IIC,IMIN,IDIC(N)
4482 IF (idic(j)<imin)
THEN
4513!||====================================================================
4518#include
"implicit_f.inc"
4522 INTEGER n ,nic,ic(*)
4543!||
ancmsg ../engine/source/output/message/message.f
4553 1 NINTER ,IPARI ,INTBUF_TAB ,NNMAX)
4563#include "implicit_f.inc"
4567#include "com08_c.inc"
4568#include "param_c.inc"
4569#include "task_c.inc"
4570#include "impl1_c.inc"
4574 INTEGER IPARI(NPARI,*),NINTER,NNMAX
4576 TYPE(intbuf_struct_) INTBUF_TAB(*)
4580 INTEGER NIN,NTY,NUM_IMP,NSN,NMN,NRTS,ILEV,NOINT
4581 INTEGER I,J,K,L,NDOFI,N,IAD,IERR,STAT,NIMP(NINTER)
4596 noint =ipari(15,nin)
4597 IF (ilev>=10.AND.ilev<=25)
THEN
4598 CALL ancmsg(msgid=241,anmode=aninfo,i1=ilev,i2=noint )
4601 ELSEIF (nty/=5 .AND. nty/=7 .AND. nty/=10
4602 . .AND. nty/=11 .AND. nty/=24)
THEN
4603 startt=intbuf_tab(nin)%VARIABLES(3)
4604 stopt =intbuf_tab(nin)%VARIABLES(11)
4606 .
CALL ancmsg(msgid=232,anmode=aninfo,i1=nty )
4609 IF (ispmd/=0.AND.(nty<7.OR.nty==8
4610 . .OR.nty==14.OR.nty==15)) cycle
4611 startt=intbuf_tab(nin)%VARIABLES(3)
4612 stopt =intbuf_tab(nin)%VARIABLES(11)
4613 IF(startt<=tstop)
THEN
4620 ELSEIF(nty==7.OR.nty==10.OR.nty==24)
THEN
4621 num_imp = ipari(18,nin)*ipari(23,nin)
4624 IF(nty==24.AND.iikgoff==0.AND.ikg==0)
THEN
4628 IF(nty==24) nimp(nin) = num_imp
4631 num_imp = ipari(18,nin)*ipari(23,nin)
4638 ALLOCATE (intbuf_tab_cp(ninter), stat=stat)
4641 ALLOCATE (intbuf_tab_imp(ninter), stat=stat)
4660!|| intbufdef_mod ../common_source/modules/interfaces/intbufdef_mod.f90
4663 1 IPARI ,INTBUF_TAB,NUM_IMP ,NS_IMP ,NE_IMP ,
4664 2 NPBY ,LPBY ,ITAB ,NRBYAC ,IRBYAC ,
4665 3 LNSS ,NINT2 ,IINT2 ,IAINT2 ,LNSS2 ,
4666 4 NDDL ,NNZK ,IDDL ,ILOCI ,N_IMPN ,
4667 5 N_IMPM ,NNMAX ,NKMAX ,NDOF ,NSREM ,
4668 6 IRBE3 ,LRBE3 ,LNSS3 ,IRBE2 ,LRBE2 ,
4669 7 LNSB2 ,LNSRB2 ,IND_SUBT )
4678#include "implicit_f.inc"
4682#include "com04_c.inc"
4683#include "param_c.inc"
4687 INTEGER IPARI(NPARI,*),NUM_IMP(*),
4688 . NS_IMP(*),NE_IMP(*),ILOCI(*),NDOF(*)
4689 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*),
4690 . lnss,nint2,iint2(*),iaint2(*),lnss2,nsrem
4692 . nddl,iddl(*) ,nnzk,n_impn,n_impm,nnmax ,nkmax
4693 INTEGER IRBE3(NRBE3L,*),LRBE3(*),LNSS3,IRBE2(NRBE2L,*),LRBE2(*),
4694 . lnsb2,lnsrb2,ind_subt(*)
4697 TYPE (INTBUF_STRUCT_) INTBUF_TAB(*)
4701 INTEGER NIN,NTY,NDOF1(NUMNOD),NSN
4702 INTEGER I,J,K,L,NDOFI,N,IAD,N_IMP,
4722 CALL row_int5(num_imp(nin),ns_imp(iad),ne_imp(iad),intbuf_tab(nin)%IRECTM,
4723 . intbuf_tab(nin)%NSV, intbuf_tab(nin)%MSR,iddl ,iloci ,ndofi,n_imp ,
4725 iad=iad+num_imp(nin)
4738 ELSEIF(nty==7.OR.nty==10)
THEN
4740 CALL row_int(num_imp(nin),ns_imp(iad),ne_imp(iad),intbuf_tab(nin)%IRECTM,
4741 . intbuf_tab(nin)%NSV, iddl ,iloci ,ndofi,n_imp ,
4743 iad=iad+num_imp(nin)
4749 CALL row_int24(intbuf_tab_imp(nin)%I_STOK(1),intbuf_tab_imp(nin)%CAND_N,
4750 . intbuf_tab_imp(nin)%CAND_E,intbuf_tab(nin)%IRECTM,
4751 . intbuf_tab(nin)%NSV, iddl ,iloci ,ndofi,n_imp ,
4752 . nsn ,nsrem ,intbuf_tab_imp(nin)%INDSUBT,
4753 . intbuf_tab(nin)%NVOISIN)
4754 iad=iad+num_imp(nin)
4758 CALL row_int11(num_imp(nin),ns_imp(iad),ne_imp(iad),
4759 . intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%IRECTM, iddl ,iloci,
4760 . ndofi,n_imp ,nrts ,nsrem )
4761 iad=iad+num_imp(nin)
4766 IF (iloci(n)>0)
THEN
4767 nnmax=
max(nnmax,iddl(n))
4774 1 num_imp ,ns_imp ,ne_imp ,npby ,lpby ,
4775 2 itab ,nrbyac ,irbyac ,nint2 ,iint2 ,
4776 3 ipari ,intbuf_tab,lnss ,lnss2 ,iddl ,
4777 4 n_imp ,iloci ,nnmax ,n_impm ,ndof ,
4778 5 ndof1 ,iaint2 ,irbe3 ,lrbe3 ,lnss3 ,
4779 6 irbe2 ,lrbe2 ,lnsb2 ,lnsrb2 ,ind_subt )
4785 IF (iloci(n)>0)
THEN
4786 IF (iloci(n)>n_impn)
THEN
4787 nkmax=
max(nkmax,iddl(n))
4789 nnmax=
max(nnmax,iddl(n))
4790 ndof1(n)=
max(3,ndof1(n))
4797 IF (iloci(n)>0)
THEN
4801 IF (j/=k) nnzk = nnzk+1
4815 CALL nddl_loc(nddl,iddl,iloci,n_imp,ndof1)
4839 1 IPARI ,INTBUF_TAB,NUM_IMP ,NS_IMP ,NE_IMP ,
4840 2 NPBY ,LPBY ,ITAB ,NRBYAC ,IRBYAC ,
4841 3 NSS ,ISS ,NINT2 ,IINT2 ,NSS2 ,
4842 4 ISS2 ,NDDLI ,NNZI ,IADI ,JDII ,
4843 5 IDDLI ,ILOCI ,N_IMPN ,ITOK ,IDDL ,
4844 6 NNMAX ,NKMAX ,N_IMPM ,NDOF ,IAINT2 ,
4845 7 IRBE3 ,LRBE3 ,NSS3 ,ISS3 ,IRBE2 ,
4846 8 LRBE2 ,NSB2 ,ISB2 ,IND_SUBT )
4855#include "implicit_f.inc"
4859#include "com04_c.inc"
4860#include "param_c.inc"
4861#include "impl1_c.inc"
4865 INTEGER NUM_IMP(*),IPARI(NPARI,*),IND_SUBT(*),
4866 . ns_imp(*),ne_imp(*) ,ndof(*),iaint2(*),lrb,li2
4867 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*),
4868 . nss(*),iss(*),nint2,iint2(*),nss2(*),iss2(*)
4870 . IDDL(*),IADI(*),JDII(*),IDDLI(*),ITOK(*),
4871 . ILOCI(*),NDDLI ,NNZI,NNMAX,N_IMPN,N_IMPM,NKMAX
4872 INTEGER IRBE3(NRBE3L,*),LRBE3(*),NSS3(*),ISS3(*),
4873 . irbe2(nrbe2l,*),lrbe2(*),nsb2(*),isb2(*)
4876 TYPE(intbuf_struct_) INTBUF_TAB(*)
4889 INTEGER NROW(N_IMPN+N_IMPM),ICOL(NNMAX,N_IMPN),
4890 . NDOF1(N_IMPN+N_IMPM),ICOK(NKMAX,N_IMPM),IKP
4891 INTEGER I,J,K,L,N,KD(50), JFI, KFI,NDOFI,ND,N_IMPT,
4892 . nty,
nl,nj,nin,lenk,iad,iloc(n_impn+n_impm),
4900 n_impt=n_impn+n_impm
4902 IF (iloci(n)>0)
THEN
4919 CALL row_int52(num_imp(nin),ns_imp(iad),ne_imp(iad),
4920 . intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,
4921 . intbuf_tab(nin)%MSR,nrow ,
4922 . n_impn,iloci ,icol ,nnmax ,icok ,
4924 iad=iad+num_imp(nin)
4936 ELSEIF(nty==7.OR.nty==10)
THEN
4938 CALL row_int2(num_imp(nin),ns_imp(iad),ne_imp(iad),
4939 . intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,nrow ,n_impn,
4940 . iloci ,icol ,nnmax ,icok ,nkmax ,
4942 iad=iad+num_imp(nin)
4949 CALL row_int242(intbuf_tab_imp(nin)%I_STOK(1),intbuf_tab_imp(nin)%CAND_N,
4950 . intbuf_tab_imp(nin)%CAND_E,intbuf_tab(nin)%IRECTM,
4951 . intbuf_tab(nin)%NSV,nrow ,n_impn,
4952 . iloci ,icol ,nnmax ,icok ,nkmax ,
4953 . nsn ,intbuf_tab_imp(nin)%INDSUBT,
4954 . intbuf_tab(nin)%NVOISIN)
4955 iad=iad+num_imp(nin)
4959 CALL row_int112(num_imp(nin),ns_imp(iad),ne_imp(iad),
4960 . intbuf_tab(nin)%IRECTS ,intbuf_tab(nin)%IRECTM, nrow ,n_impn,
4961 . iloci ,icol ,nnmax ,icok ,nkmax ,
4963 iad=iad+num_imp(nin)
4967 1 npby ,lpby ,itab ,nrbyac ,irbyac ,
4968 2 nss ,iss ,nint2 ,iint2 ,ipari ,
4969 3 intbuf_tab,nss2 ,iss2 ,nnmax ,iloci ,
4970 4 nkmax ,nrow ,icol ,icok ,n_impn ,
4971 5 ndof ,ndof1 ,iaint2 ,irbe3 ,lrbe3 ,
4972 6 nss3 ,iss3 ,irbe2 ,lrbe2 ,nsb2 ,
4977 CALL reorder_j(nrow(i),icol(1,i),n,iddli)
4979 DO i =n_impn+1,n_impt
4982 CALL reorder_j(nrow(i),icok(1,nj),n,iddli)
4987 CALL reorder_l(nrow(i),icol(1,i),n,iddli)
4989 DO i =n_impn+1,n_impt
4992 CALL reorder_l(nrow(i),icok(1,nj),n,iddli)
4997 ndof1(i)=
max(3,ndof1(i))
5014 1 iddli ,iloci ,iadi ,jdii ,
nl ,
5015 2 lenk ,nrow(i) ,icol(1,i) ,n ,ikp )
5017 DO i =n_impn+1,n_impt
5025 1 iddli ,iloci ,iadi ,jdii ,
nl ,
5026 2 lenk ,nrow(i) ,icok(1,nj) ,n ,ikp )
5028 IF (lenk>nnzi.OR.
nl/=(nddli+1))
5029 .
WRITE(*,*)
'--MEMERY PROBLEM 5-- :',lenk,nnzi,
nl,nddli+1
5041 1 NDDL ,IDDL ,ILOC ,NLOC ,NDOF )
5045#include "implicit_f.inc"
5049#include "com04_c.inc"
5053 INTEGER NDDL ,IDDL(*) ,ILOC(*) ,NLOC,NDOF(*)
5058 INTEGER I,N,LOCI(NLOC)
5071 nddl = nddl + ndof(n)
5083 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5084 2 NROW ,ILOC ,NDOFI ,N_IMPN ,NSN ,
5089#include
"implicit_f.inc"
5093 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5094 . iloc(*),ndofi,n_impn,nsn,nsrem
5099 INTEGER I,J,N,N1,N2,NE,IG
5106 IF (iloc(n1)==0)
THEN
5117 IF (iloc(n)==0)
THEN
5123 IF (irect(3,ne)/=irect(4,ne))
THEN
5125 IF (iloc(n)==0)
THEN
5130 IF (ig<=nsn) nrow(n1)=nrow(n1)+1
5145 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5146 2 NROW ,N_IMPN ,ILOC ,ICOL ,NNMAX ,
5151#include "implicit_f.inc"
5156 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5157 . ILOC(*),ICOL(NNMAX,*),N_IMPN,NSN
5162 INTEGER I,J,N,N1,N2,NE,IG,NI
5178 IF (irect(3,ne)/=irect(4,ne))
THEN
5190!||====================================================================
5192!||--- called by ------------------------------------------------------
5198 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5199 2 NROW ,N_IMPN ,ILOC ,ICOL ,NNMAX ,
5200 3 ICOK ,NKMAX ,NSN )
5204#include "implicit_f.inc"
5209 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5210 . ILOC(*),ICOL(NNMAX,*),ICOK(NKMAX,*),N_IMPN,NSN
5215 INTEGER I,J,N,N1,N2,NE,IG,NI,NM,NIM
5225 IF (ni<=n_impn)
THEN
5230 IF (n2<=n_impn)
THEN
5237 IF (irect(3,ne)/=irect(4,ne))
THEN
5241 IF (n2<=n_impn)
THEN
5254 IF (n2<=n_impn)
THEN
5261 IF (irect(3,ne)/=irect(4,ne))
THEN
5265 IF (n2<=n_impn)
THEN
5285 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5286 2 MSR ,NROW ,ILOC ,NDOFI ,N_IMPN ,
5291#include "implicit_f.inc"
5295 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5296 . msr(*),iloc(*),ndofi,n_impn,nsn,nsrem
5301 INTEGER I,J,N,N1,N2,NE,IG
5307 IF (iloc(n1)==0)
THEN
5315 IF (iloc(n)==0)
THEN
5321 IF (irect(3,ne)/=irect(4,ne))
THEN
5323 IF (iloc(n)==0)
THEN
5328 IF (ig<=nsn) nrow(n1)=nrow(n1)+1
5343 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5344 2 MSR ,NROW ,N_IMPN ,ILOC ,ICOL ,
5349#include "implicit_f.inc"
5354 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5355 . iloc(*),icol(nnmax,*),n_impn,nsn,msr(*)
5360 INTEGER I,J,N,N1,N2,NE,IG,NI
5375 IF (irect(3,ne)/=irect(4,ne))
THEN
5394 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5395 2 MSR ,NROW ,N_IMPN ,ILOC ,ICOL ,
5396 3 NNMAX ,ICOK ,NKMAX ,NSN )
5400#include "implicit_f.inc"
5405 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5406 . iloc(*),icol(nnmax,*),icok(nkmax,*),n_impn,nsn,msr(*)
5411 INTEGER I,J,N,N1,N2,,IG,NI,NM,NIM
5420 IF (ni<=n_impn)
THEN
5425 IF (n2<=n_impn)
THEN
5432 IF (irect(3,ne)/=irect(4,ne))
THEN
5436 IF (n2<=n_impn)
THEN
5449 IF (n2<=n_impn)
THEN
5456 IF (irect(3,ne)/=irect(4,ne))
THEN
5460 IF (n2<=n_impn)
THEN
5474!||--- called by ------------------------------------------------------
5480 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5481 2 NROW ,ILOC ,NDOFI ,N_IMPN ,NSN ,
5482 3 NSREM ,SUBTRIA ,NVOISIN )
5486#include "implicit_f.inc"
5490 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5491 . ILOC(*),NDOFI,N_IMPN,NSN,NSREM,SUBTRIA(*),NVOISIN(8,*)
5496 INTEGER I,J,N,N1,N2,NE,IG,IRTLM(4),NEI
5503 IF (iloc(n1)==0)
THEN
5515 CALL i24msegv(ne,irtlm ,subtria(i),irect(1,nei),nvoisin(1,nei))
5517 irtlm(1:4) = irect(1:4,ne)
5521 IF (iloc(n)==0)
THEN
5527 IF (irtlm(3)/=irtlm(4))
THEN
5529 IF (iloc(n)==0)
THEN
5535 IF (ig<=nsn) nrow(n1)=nrow(n1)+1
5549!||====================================================================
5551 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5552 2 NROW ,N_IMPN ,ILOC ,ICOL ,NNMAX ,
5553 3 NSN ,SUBTRIA ,NVOISIN )
5557#include
"implicit_f.inc"
5562 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5563 . iloc(*),icol(nnmax,*),n_impn,nsn,subtria(*),nvoisin(8,*)
5568 INTEGER I,J,,N1,N2,NE,IG,NI,IRTLM(4),NEI
5579 CALL i24msegv(ne,irtlm ,subtria(i),irect(1,nei),nvoisin(1,nei))
5581 irtlm(1:4) = irect(1:4,ne)
5590 IF (irtlm(3)/=irtlm(4))
THEN
5611 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
5612 2 NROW ,N_IMPN ,ILOC ,ICOL ,NNMAX ,
5613 3 ICOK ,NKMAX ,NSN ,SUBTRIA ,NVOISIN )
5617#include "implicit_f.inc"
5622 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),NROW(*),
5623 . ILOC(*),ICOL(NNMAX,*),ICOK(NKMAX,*),,NSN,
5624 . SUBTRIA(*),NVOISIN(8,*)
5629 INTEGER I,J,N,N1,N2,NE,IG,NI,NM,NIM,IRTLM(4),NEI
5641 CALL i24msegv(ne,irtlm ,subtria(i),irect(1,nei),nvoisin(1,nei))
5643 irtlm(1:4) = irect(1:4,ne)
5645 IF (ni<=n_impn)
THEN
5650 IF (n2<=n_impn)
THEN
5657 IF (irtlm(3)/=irtlm(4))
THEN
5661 IF (n2<=n_impn)
THEN
5674 IF (n2<=n_impn)
THEN
5681 IF (irtlm(3)/=irtlm(4))
THEN
5685 IF (n2<=n_impn)
THEN
5712!||====================================================================
5714 1 NUM_IMP ,NS_IMP ,NE_IMP ,NPBY ,LPBY ,
5715 2 ITAB ,NRBYAC ,IRBYAC ,NINT2 ,IINT2 ,
5716 3 IPARI ,INTBUF_TAB,LNSS ,LNSS2 ,NROW ,
5717 4 NKINE ,INLOC ,NNMAX ,N_IMPM ,NDOF ,
5718 5 NDOFI ,IAINT2 ,IRBE3 ,LRBE3 ,LNSS3 ,
5719 6 IRBE2 ,LRBE2 ,LNSB2 ,LNSRB2 ,IND_SUBT )
5728#include "implicit_f.inc"
5732#include "com04_c.inc"
5733#include "param_c.inc"
5737 INTEGER NNMAX,NKINE,N_IMPM
5738 INTEGER NUM_IMP(*),NS_IMP(*),NE_IMP(*),
5739 . npby(nnpby,*),lpby(*),itab(*),nrbyac,irbyac(*)
5740 INTEGER NINT2,IINT2(*),IPARI(NPARI,*),IAINT2(*),
5741 . inloc(*),lnss ,lnss2,nrow(*),ndof(*),ndofi(*)
5742 INTEGER IRBE3(NRBE3L,*),LRBE3(*),LNSS3,IRBE2(NRBE2L,*),
5743 . LRBE2(*),LNSB2,LNSRB2,IND_SUBT(*)
5745 TYPE(intbuf_struct_) INTBUF_TAB(*)
5755 INTEGER IAD,NTY,NIN,KD(50),NKE,NKE2
5756 INTEGER IA(NRBYAC),NROW1(NUMNOD)
5758 . I,J,K,N,L,NL,NJ,NI,J1,M,NSN,N1,N2,NK,ID,
5759 . JI,K10,K11,K12,K13,K14,KFI,NS,NNOD,NM,L1,NL1,NM1,
5760 . NRTS,NKINE0,NMAX,NKE1,M1,IC
5761 INTEGER,
DIMENSION(:,:),
ALLOCATABLE :: ICOK,ICOK1
5764 IF (nkine0>0)
ALLOCATE(icok(nnmax,nkine0))
5777 CALL row_int51(num_imp(nin),ns_imp(iad),ne_imp(iad
5778 . intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,
5779 . intbuf_tab(nin)%MSR,nrow ,
5780 . nkine ,inloc ,icok ,nnmax ,nsn )
5781 iad=iad+num_imp(nin)
5792 ELSEIF(nty==7.OR.nty==10)
THEN
5794 CALL row_int1(num_imp(nin),ns_imp(iad),ne_imp(iad)
5795 . intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,nrow ,nkine ,
5796 . inloc ,icok ,nnmax ,nsn )
5797 iad=iad+num_imp(nin)
5804 CALL row_int241(intbuf_tab_imp(nin)%I_STOK(1),intbuf_tab_imp(nin)%CAND_N,
5805 . intbuf_tab_imp(nin)%CAND_E,intbuf_tab(nin)%IRECTM,
5806 . intbuf_tab(nin)%NSV,nrow ,nkine ,
5807 . inloc ,icok ,nnmax ,nsn ,
5808 . intbuf_tab_imp(nin)%INDSUBT,intbuf_tab(nin)%NVOISIN)
5809 iad=iad+num_imp(nin)
5813 CALL row_int111(num_imp(nin),ns_imp(iad),ne_imp(iad),
5814 . intbuf_tab(nin)%IRECTS ,intbuf_tab(nin)%IRECTM,nrow ,nkine ,
5815 . inloc ,icok ,nnmax ,nrts )
5816 iad=iad+num_imp(nin)
5827 k11=k10+4*ipari(3,n)
5829 k12=k11+4*ipari(4,n)
5838 ni=intbuf_tab(n)%NSV(i)
5839 IF (inloc(ni)>0.AND.inloc(ni)<=nkine0)
THEN
5841 l=intbuf_tab(n)%IRTLM(i)
5843 IF (intbuf_tab(n)%IRECTM(nl+3)==intbuf_tab(n)%IRECTM(nl+4))
THEN
5849 nm=intbuf_tab(n)%IRECTM(nl+m)
5851 IF (inloc(nm)==0)
THEN
5854 nrow1(nm)=nrow1(nm)+ nnod + nnod
5860 IF (inloc(nj)>0 )
THEN
5864 nm=intbuf_tab(n)%IRECTM(nl+m)
5865 IF (inloc(nm)>0)
THEN
5866 nrow1(nm)=nrow1(nm)+1
5867 IF (nke2>0) nrow1(nj)=nrow1(nj)+1
5888 ic = 7*512+7*64-irbe2(4,j)
5891 IF (inloc(ni)>0)
THEN
5895 IF (inloc(nj)>0.AND.nj/=ni) nrow1(nj)=nrow1(nj)+1+nhrbe2
5898 IF (inloc(m)==0)
THEN
5902 nrow1(m)=nrow1(m)+nrow(ni)+nrow1(ni)
5905 nrow1(ni)=nrow1(ni)+1
5911 IF (inloc(m)>0) ndofi(m)=ndof(m)
5917 IF (ni==0.OR.ndofi(ni)==0) cycle
5919 IF (inloc(ni)>0)
THEN
5923 IF (inloc(nm)==0)
THEN
5926 nrow1(nm)=nrow1(nm)+ nnod
5932 IF (inloc(nj)>0.AND.
5933 . (.NOT.intab(nnod,lrbe3(iad+1),nj)))
THEN
5937 nrow1(nm)=nrow1(nm)+1
5938 IF (nke2>0) nrow1(nj)=nrow1(nj)+1
5945 IF (nkine>nkine0)
THEN
5947 ALLOCATE(icok1(nnmax,nkine0))
5949 IF (inloc(i)>0)
THEN
5950 nmax=
max(nmax,(nrow1(i)
5953 icok1(j,nke) = icok(j,nke)
5959 ALLOCATE(icok(nmax,nkine))
5961 IF (inloc(i)>0.AND.nrow(i)>0)
THEN
5964 icok(j,nke) = icok1(j,nke)
5971 IF(iaint2(j)==1)
THEN
5976 k11=k10+4*ipari(3,n)
5978 k12=k11+4*ipari(4,n)
5986 ni=intbuf_tab(n)%NSV(i)
5987 IF (inloc(ni)>0)
THEN
5988 l=intbuf_tab(n)%IRTLM(i)
5990 IF(intbuf_tab(n)%IRECTM(nl+3)==intbuf_tab(n)%IRECTM(nl+4))
THEN
5996 nm=intbuf_tab(n)%IRECTM(nl+m)
5999 nm1=intbuf_tab(n)%IRECTM(nl+m1)
6001 CALL reorder_a(nrow(nm),icok(1,nke1),nm1)
6002 CALL reorder_a(nrow(nm1),icok(1,nke2),nm)
6008 IF (inloc(nj)>0)
THEN
6012 nm=intbuf_tab(n)%IRECTM(nl+m)
6013 IF (inloc(nm)>0)
THEN
6015 CALL reorder_a(nrow(nm),icok(1,nke1),nj)
6016 CALL reorder_a(nrow(nj),icok(1,nke2),nm)
6030 IF (inloc(m)==0) cycle
6032 ic = 7*512+7*64-irbe2(4,j)
6036 IF (inloc(ni)>0)
THEN
6042 IF (nke2>0.AND.nj/=ni)
THEN
6059 IF (ni==0.OR.ndofi(ni)==0) cycle
6061 IF (inloc(ni)>0)
THEN
6068 CALL reorder_a(nrow(nm),icok(1,nke1),nm1)
6069 CALL reorder_a(nrow(nm1),icok(1,nke2),nm)
6075 IF (inloc(nj)>0.AND.
6076 . (.NOT.intab(nnod,lrbe3(iad+1),nj)))
THEN
6082 CALL reorder_a(nrow(nm),icok(1,nke1),nj)
6083 CALL reorder_a(nrow(nj),icok(1,nke2),nm)
6098 IF (inloc(m)>0) ia(j)=1
6102 IF (inloc(ni)>0)
THEN
6107 IF (inloc(nj)>0) nrow1(nj)=nrow1(nj)+1
6118 IF (inloc(m)>0)
THEN
6121 IF (inloc(i)>inloc(m)) inloc(i)=inloc(i)-1
6128 nrow(i) = nrow(i)+nrow1(i)
6144 IF (inloc(ni)>0)
THEN
6145 nrow(m)=nrow(m)+nrow(ni)
6151 IF (nkine0>0)
DEALLOCATE(icok)
6166 1 NPBY ,LPBY ,ITAB ,NRBYAC ,IRBYAC ,
6167 2 NSS ,ISS ,NINT2 ,IINT2 ,IPARI ,
6168 3 INTBUF_TAB,NSS2 ,ISS2 ,NNMAX ,INLOC ,
6169 4 NKMAX ,NROWK ,ICOK ,ICOKM ,INK ,
6170 5 NDOF ,NDOF1 ,IAINT2 ,IRBE3 ,LRBE3 ,
6171 6 NSS3 ,ISS3 ,IRBE2 ,LRBE2 ,NSB2 ,
6180#include "implicit_f.inc"
6184#include "com04_c.inc"
6185#include "param_c.inc"
6189 INTEGER NNMAX,NKMAX,LRB ,LI2
6190 INTEGER NPBY(NNPBY,*),LPBY(*),ITAB(*),NRBYAC,IRBYAC(*),
6191 . nss(*),iss(*),nint2,iint2(*),
6192 . nss2(*),iss2(*),ipari(npari,*),ndof(*),ndof1(*),
6193 . icok(nnmax,*),icokm(nkmax,*),nrowk(*)
6195 . inloc(*),ink,iaint2(*)
6196 INTEGER IRBE3(NRBE3L,*),LRBE3(*),NSS3(*),ISS3(*),
6197 . irbe2(nrbe2l,*),lrbe2(*),nsb2(*),isb2(*)
6199 TYPE(intbuf_struct_) INTBUF_TAB(*)
6210 INTEGER NKE,NKE1,NKE2,IK,NKM1,IAD
6212 . i,j,k,n,l,
nl,nj,ni,j1,m,nsn,n1,n2,nk,
id,k1,m1,
6213 . ji,k10,k11,k12,k13,k14,kfi,ns,nnod,nm,l1,nl1,nm1,ic
6218 IF(iaint2(j)==1)
THEN
6223 k11=k10+4*ipari(3,n)
6225 k12=k11+4*ipari(4,n)
6235 ni=intbuf_tab(n)%NSV(i)
6236 IF (inloc(ni)>0)
THEN
6237 l=intbuf_tab(n)%IRTLM(i)
6239 IF (intbuf_tab(n)%IRECTM(
nl+3)==intbuf_tab(n)%IRECTM(
nl+4))
THEN
6245 nm=intbuf_tab(n)%IRECTM(
nl+m)
6247 ndof1(nke1)=ndof(nm)
6249 nm1=intbuf_tab(n)%IRECTM(
nl+m1)
6251 CALL reorder_a(nrowk(nke1),icok(1,nke1),nm1)
6252 CALL reorder_a(nrowk(nkm1),icok(1,nkm1),nm)
6258 IF (inloc(nj)>0.AND.
6259 . (.NOT.intab(nsn,intbuf_tab(n)%NSV(1),nj)).
6260 . and.(.NOT.intab(nnod,intbuf_tab(n)%IRECTM(
nl+1),nj)))
THEN
6266 nm=intbuf_tab(n)%IRECTM(
nl+m)
6267 IF (inloc(nm)>0)
THEN
6269 CALL reorder_a(nrowk(nke1),icok(1,nke1),nj)
6270 CALL reorder_a(nrowk(nke2),icok(1,nke2),nm)
6287 ic = 7*512+7*64-irbe2(4,n)
6288 IF (inloc(m)>0)
THEN
6296 IF (inloc(ni)>0)
THEN
6301 IF (inloc(nj)>0.AND.nj/=ni)
THEN
6302 CALL reorder_a(nrowk(nke1),icok(1,nke1),nj)
6304 CALL reorder_a(nrowk(nke2),icok(1,nke2),m)
6306 CALL reorder_a(nrowk(nke2),icokm(1,nke2-ink),m)
6314 CALL reorder_a(nrowk(nke1),icok(1,nke1),ni)
6315 CALL reorder_a(nrowk(nke),icok(1,nke),m)
6329 IF (inloc(ni)>0)
THEN
6333 ndof1(nke1)=ndof(nm)
6338 CALL reorder_a(nrowk(nke1),icok(1,nke1),nm1)
6340 CALL reorder_a(nrowk(nke1),icokm(1,nke1-ink),nm1)
6344 CALL reorder_a(nrowk(nkm1),icok(1,nkm1),nm)
6346 CALL reorder_a(nrowk(nkm1),icokm(1,nkm1-ink),nm)
6355 nj=icokm(n1,nke-ink)
6357 IF (inloc(nj)>0.AND.
6358 . (.NOT.intab(nnod,lrbe3(iad+1),nj)))
THEN
6365 IF (inloc(nm)>0)
THEN
6368 CALL reorder_a(nrowk(nke1),icok(1,nke1),nj)
6370 CALL reorder_a(nrowk(nke1),icokm(1,nke1-ink),nj)
6374 CALL reorder_a(nrowk(nke2),icok(1,nke2),nm)
6376 CALL reorder_a(nrowk(nke2),icokm(1,nke2-ink),nm)
6389 k1=irbyac(j+nrbykin)
6392 IF (inloc(m)>0)
THEN
6400 IF (inloc(ni)>0)
THEN
6405 IF (inloc(nj)>0.AND.
6406 . (.NOT.intab(nsn,lpby(k1+1),nj)))
THEN
6407 CALL reorder_a(nrowk(nke1),icokm(1,nkm1),nj)
6409 CALL reorder_a(nrowk(nke2),icok(1,nke2),m)
6414 CALL reorder_a(nrowk(nke2),icokm(1,nke2-ink),m)
6433 1 JLT ,NS_IMP ,NE_IMP ,IRECTS ,IRECTM ,
6434 2 NROW ,ILOC ,NDOFI ,N_IMPN ,NSN ,
6439#include "implicit_f.inc"
6443 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECTS(2,*),IRECTM(2,*),NROW(*),
6444 . iloc(*),ndofi,n_impn,nsn,nsrem
6448 INTEGER I,J,N,,N2,NE,IG,M1,M2
6456 IF (iloc(n1)==0)
THEN
6461 IF (iloc(n2)==0)
THEN
6472 IF (iloc(m1)==0)
THEN
6477 IF (iloc(m2)==0)
THEN
6488!||--- called by ------------------------------------------------------
6494 1 JLT ,NS_IMP ,NE_IMP ,IRECTS ,IRECTM ,
6495 2 NROW ,N_IMPN ,ILOC ,ICOL ,NNMAX ,
6500#include
"implicit_f.inc"
6505 INTEGER JLT,(*),NE_IMP(*),IRECTS(2,*),IRECTM(2,*),
6506 . nrow(*),iloc(*),icol(nnmax,*),n_impn,nsn
6511 INTEGER I,J,N,N1,N2,NE,IG,NI,M1,M2,NJ,MI,MJ
6548 1 JLT ,NS_IMP ,NE_IMP ,IRECTS ,IRECTM ,
6549 2 NROW ,N_IMPN ,ILOC ,ICOL ,NNMAX ,
6550 3 ICOK ,NKMAX ,NSN )
6554#include "implicit_f.inc"
6559 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECTS(2,*),IRECTM(2,*),NROW(*),
6560 . iloc(*),icol(nnmax,*),icok(nkmax,*),n_impn,nsn
6565 INTEGER I,J,N,N1,N2,NE,,NI,NM,NIM,M1,M2
6577 CALL row_adds(n1 ,m1 ,iloc ,n_impn ,icol ,
6578 1 icok ,nrow ,nnmax ,nkmax )
6579 CALL row_adds(n1 ,m2 ,iloc ,n_impn ,icol ,
6580 1 icok ,nrow ,nnmax ,nkmax )
6581 CALL row_adds(n2 ,m1 ,iloc ,n_impn ,icol ,
6582 1 icok ,nrow ,nnmax ,nkmax )
6583 CALL row_adds(n2 ,m2 ,iloc ,n_impn ,icol ,
6584 1 icok ,nrow ,nnmax ,nkmax )
6598 1 ICOK ,NROW ,NNMAX ,NKMAX )
6602#include "implicit_f.inc"
6606 INTEGER NNMAX,NKMAX,NS,NM
6643 1 IPARI ,INTBUF_TAB,NUM_IMP ,NS_IMP ,NE_IMP ,
6644 2 IND_IMP ,NDOF ,NT_IMP )
6652#include "implicit_f.inc"
6656#include "com01_c.inc"
6657#include "com04_c.inc"
6658#include "param_c.inc"
6662 INTEGER IPARI(NPARI,*),NUM_IMP(*),IND_IMP(*),
6663 . NS_IMP(*),NE_IMP(*),NDOF(*),NT_IMP
6666 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
6671 INTEGER I,J,K,L,NDOFI,N,IAD,N_IMP,NRTS,IDEL(NT_IMP),NEW_IAD
6686 CALL ndof_int5(num_imp(nin),ns_imp(iad),ne_imp(iad),intbuf_tab(nin)%IRECTM,
6687 . intbuf_tab(nin)%NSV,nsn ,ndof ,idel(iad) ,
6688 . intbuf_tab(nin)%MSR)
6689 iad=iad+num_imp(nin)
6701 ELSEIF(nty==7.OR.nty==10.OR.nty==24)
THEN
6703 CALL ndof_int(num_imp(nin),ns_imp(iad),ne_imp(iad),intbuf_tab(nin)%IRECTM,
6704 . intbuf_tab(nin)%NSV,nsn ,ndof ,idel(iad) )
6705 iad=iad+num_imp(nin)
6709 CALL ndof_int11(num_imp(nin),ns_imp(iad),ne_imp(iad),
6710 . intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%IRECTM,nrts ,
6712 iad=iad+num_imp(nin)
6723 DO i= 1,num_imp(nin)
6724 IF (idel(iad+i)>0)
THEN
6725 new_iad = new_iad + 1
6726 ns_imp(new_iad)=ns_imp(iad+i)
6727 ne_imp(new_iad)=ne_imp(iad+i)
6728 ind_imp(new_iad)=ind_imp(iad+i)
6732 iad=iad+num_imp(nin)
6733 num_imp(nin) = n_imp
6739 DO i= 1,num_imp(nin)
6740 IF (idel(iad+i)>0)
THEN
6741 new_iad = new_iad + 1
6742 ns_imp(new_iad)=ns_imp(iad+i)
6743 ne_imp(new_iad)=ne_imp(iad+i)
6744 ind_imp(new_iad)=ind_imp(iad+i)
6748 iad=iad+num_imp(nin)
6749 num_imp(nin) = n_imp
6761 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
6762 2 NSN ,NDOF ,IDEL_INT )
6766#include "implicit_f.inc"
6770 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),
6771 . IDEL_INT(*),NDOF(*),NSN
6776 INTEGER I,J,N,N1,N2,NE,IG
6783 idel_int(i) = ndof(n1)
6789 idel_int(i) =
min(idel_int(i),ndof(n))
6791 IF (irect(3,ne)/=irect(4,ne))
THEN
6793 idel_int(i) =
min(idel_int(i),ndof(n))
6805 1 JLT ,NS_IMP ,NE_IMP ,IRECTS ,IRECTM ,
6806 2 NSN ,NDOF ,IDEL_INT )
6810#include "implicit_f.inc"
6814 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECTS(2,*),IRECTM(2,*),
6815 . IDEL_INT(*),NDOF(*),NSN
6820 INTEGER I,J,N,N1,N2,NE,IG,M1,M2
6827 idel_int(i) = ndof(n1)
6829 idel_int(i) =
min(idel_int(i),ndof(n2))
6835 idel_int(i) =
min(idel_int(i),ndof(m1))
6836 idel_int(i) =
min(idel_int(i),ndof(m2))
6847 1 JLT ,NS_IMP ,NE_IMP ,IRECT ,NSV ,
6848 2 NSN ,NDOF ,IDEL_INT ,MSR )
6852#include "implicit_f.inc"
6856 INTEGER JLT,NS_IMP(*),NE_IMP(*),IRECT(4,*),NSV(*),
6857 . IDEL_INT(*),NDOF(*),NSN,MSR(*)
6862 INTEGER I,J,N,N1,N2,NE,IG
6868 idel_int(i) = ndof(n1)
6872 idel_int(i) =
min(idel_int(i),ndof(n))
6874 IF (irect(3,ne)/=irect(4,ne))
THEN
6876 idel_int(i) =
min(idel_int(i),ndof(n))
6892#include "implicit_f.inc"
6896 INTEGER NDDL,IADK(*),JDIK(*),L_NZ
6900 INTEGER I,J,K,JD,ICOL(NDDL),NRI
6904 nri = iadk(i+1)-iadk(i)
6905 CALL cp_int(nri,jdik(iadk(i)),icol)
6906 DO j=iadk(i),iadk(i+1)-1
6908 DO k = iadk(jd),iadk(jd+1)-1
6929#include "implicit_f.inc"
6933 INTEGER NDDL,IADK(*),JDIK(*),IADM(*),JDIM(*),L_MAX
6937 INTEGER I,J,K,ICOL(NDDL),L_NZ,NRI,JD
6940 iadm(l_nz+1) = l_nz+1
6942 nri = iadk(i+1)-iadk(i)
6943 CALL cp_int(nri,jdik(iadk(i)),icol)
6944 DO j=iadk(i),iadk(i+1)-1
6946 DO k = iadk(jd),iadk(jd+1)-1
6953 jdim(l_nz) = icol(j)
6957 CALL k_band(nddl,iadm,jdim,l_max)
6972#include "implicit_f.inc"
6980 INTEGER I,J,II,IT,IMIN
6988 IF (ic(j)<imin)
THEN
7022#include "implicit_f.inc"
7026 INTEGER NDDL,IADK(*),JDIK(*),L_NZ,NN,NDMAX
7030 INTEGER I,J,K,JD,ICOL(NDDL),ICRI(NDDL),NRI,NR0
7031 INTEGER,
DIMENSION(:),
ALLOCATABLE :: IADK0,JDIK0
7032 INTEGER,
DIMENSION(:),
ALLOCATABLE :: IADL,JDIL
7034 l_nz = 2*(iadk(nddl+1)-iadk(1))
7035 ALLOCATE(iadk0(nddl+1),jdik0(l_nz))
7037 icol(i) = iadk(i+1) - iadk(i)
7038 DO j = iadk(i),iadk(i+1)-1
7040 icol(jd) = icol(jd) + 1
7045 iadk0(i+1) = iadk0(i)+icol(i)
7049 nri = iadk(i+1)-iadk(i)
7050 CALL cp_int(nri,jdik(iadk(i
7052 DO j=iadk(i),iadk(i+1)-1
7054 k = iadk0(jd) + icol(jd)
7056 icol(jd) = icol(jd) + 1
7062 nri = iadk(i+1)-iadk(i)
7063 IF (icri(i)==1)
THEN
7064 CALL cp_int(nri,jdik(iadk(i)),icol)
7065 DO j=iadk(i),iadk(i+1)-1
7067 DO k = iadk0(jd),iadk0(jd+1)-1
7068 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7080 ALLOCATE(iadl(nddl+1),jdil(l_nz))
7084 nri = iadk(i+1)-iadk(i)
7085 CALL cp_int(nri,jdik(iadk(i)),icol)
7086 IF (icri(i)==1)
THEN
7088 DO j=iadk(i),iadk(i+1)-1
7090 DO k = iadk0(jd),iadk0(jd+1)-1
7091 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7098 jdil(l_nz) = icol(j)
7106 nri = iadl(i+1)-iadl(i)
7107 IF (icri(i)==1)
THEN
7108 CALL cp_int(nri,jdil(iadl(i)),icol)
7109 DO j=iadl(i),iadl(i+1)-1
7111 DO k = iadk0(jd),iadk0(jd+1)-1
7112 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7118 DEALLOCATE(iadl,jdil)
7122 ALLOCATE(iadl(nddl+1),jdil(l_nz))
7126 nri = iadk(i+1)-iadk(i)
7127 CALL cp_int(nri,jdik(iadk(i)),icol)
7128 IF (icri(i)==1)
THEN
7130 DO j=iadk(i),iadk(i+1)-1
7132 DO k = iadk0(jd),iadk0(jd+1)-1
7133 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7140 jdil(l_nz) = icol(j)
7146 ALLOCATE(jdik0(2*l_nz))
7148 icol(i) = iadl(i+1) - iadl(i)
7149 DO j = iadl(i),iadl(i+1)-1
7151 icol(jd) = icol(jd) + 1
7156 iadk0(i+1) = iadk0(i)+icol(i)
7159 nri = iadl(i+1)-iadl(i)
7160 CALL cp_int(nri,jdil(iadl(i)),jdik0(iadk0(i)))
7162 DO j=iadl(i),iadl(i+1)-1
7164 k = iadk0(jd) + icol(jd)
7166 icol(jd) = icol(jd) + 1
7172 nri = iadl(i+1)-iadl(i)
7173 CALL cp_int(nri,jdil(iadl(i)),icol)
7174 IF (icri(i)==1)
THEN
7175 DO j=iadl(i),iadl(i+1)-1
7177 DO k = iadk0(jd),iadk0(jd+1)-1
7178 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7184 DEALLOCATE(iadl,jdil)
7186 DEALLOCATE(iadk0,jdik0)
7200!||--- uses -----------------------------------------------------
7203 SUBROUTINE ind_span(NN,NDF,NDDL,IADK,JDIK,IADM,JDIM,L_MAX,NDMAX)
7211#include "implicit_f.inc"
7215 INTEGER NDDL,IADK(*),JDIK(*),IADM(*),JDIM(*),L_MAX,NN,NDF,NDMAX
7220 INTEGER I,J,K,ICOL(NDDL),ICRI(NDDL),L_NZ,NRI,JD,NR0
7221 INTEGER,
DIMENSION(:),
ALLOCATABLE :: IADK0,JDIK0
7222 INTEGER,
DIMENSION(:),
ALLOCATABLE :: IADL,JDIL
7224 l_nz = 2*(iadk(nddl+1)-iadk(1))
7226 ALLOCATE(iadk0(nddl+1),jdik0(l_nz))
7228 icol(i) = iadk(i+1) - iadk(i)
7229 DO j = iadk(i),iadk(i+1)-1
7231 icol(jd) = icol(jd) + 1
7236 iadk0(i+1) = iadk0(i)+icol(i)
7240 nri = iadk(i+1)-iadk(i)
7241 CALL cp_int(nri,jdik(iadk(i)),jdik0(iadk0(i)))
7243 DO j=iadk(i),iadk(i+1)-1
7245 k = iadk0(jd) + icol(jd)
7247 icol(jd) = icol(jd) + 1
7256 iadm(i+1) = iadk(i+1)
7258 DO j=iadk(1),iadk(ndf+1)-1
7261 l_nz = iadk(ndf+1)-iadk(1)
7264 nri = iadk(i+1)-iadk(i)
7265 CALL cp_int(nri,jdik(iadk(i)),icol)
7266 IF (icri(i)==1)
THEN
7268 DO j=iadk(i),iadk(i+1)-1
7270 DO k = iadk0(jd),iadk0(jd+1)-1
7271 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7278 jdim(l_nz) = icol(j)
7287 iadm(i+1) = iadk(i+1)
7289 DO j=iadk(1),iadk(ndf+1)-1
7292 l_nz = iadk(ndf+1)-iadk(1)
7295 nri = iadk(i+1)-iadk(i)
7296 CALL cp_int(nri,jdik(iadk(i)),icol)
7297 IF (icri(i)==1)
THEN
7299 DO j=iadk(i),iadk(i+1)-1
7301 DO k = iadk0(jd),iadk0(jd+1)-1
7302 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7309 jdim(l_nz) = icol(j)
7314 ALLOCATE(iadl(nddl+1),jdil(l_nz))
7315 CALL cp_int(nddl+1,iadm,iadl)
7316 CALL cp_int(l_nz,jdim,jdil)
7317 l_nz = iadk(ndf+1)-iadk(1)
7319 nri = iadl(i+1)-iadl(i)
7320 CALL cp_int(nri,jdil(iadl(i)),icol)
7321 IF (icri(i)==1)
THEN
7323 DO j=iadl(i),iadl(i+1)-1
7325 DO k = iadk0(jd),iadk0(jd+1)-1
7326 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7333 jdim(l_nz) = icol(j)
7337 DEALLOCATE(iadl,jdil)
7343 nri = iadk(i+1)-iadk(i)
7344 CALL cp_int(nri,jdik(iadk(i)),icol)
7345 IF (icri(i)==1)
THEN
7347 DO j=iadk(i),iadk(i+1)-1
7349 DO k = iadk0(jd),iadk0(jd+1)-1
7350 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7357 jdim(l_nz) = icol(j)
7361 ALLOCATE(iadl(nddl+1),jdil(l_nz))
7362 CALL cp_int(nddl+1,iadm,iadl)
7363 CALL cp_int(l_nz,jdim,jdil)
7366 ALLOCATE(jdik0(2*l_nz))
7368 icol(i) = iadl(i+1) - iadl(i)
7369 DO j = iadl(i),iadl(i+1)-1
7371 icol(jd) = icol(jd) + 1
7376 iadk0(i+1) = iadk0(i)+icol(i)
7379 nri = iadl(i+1)-iadl(i)
7380 CALL cp_int(nri,jdil(iadl(i)),jdik0(iadk0(i)))
7382 DO j=iadl(i),iadl(i+1)-1
7384 k = iadk0(jd) + icol(jd)
7386 icol(jd) = icol(jd) + 1
7392 iadm(i+1) = iadk(i+1)
7394 DO j=iadk(1),iadk(ndf+1)-1
7397 l_nz = iadk(ndf+1)-iadk(1)
7399 nri = iadl(i+1)-iadl(i)
7400 CALL cp_int(nri,jdil(iadl(i)),icol)
7401 IF (icri(i)==1)
THEN
7403 DO j=iadl(i),iadl(i+1)-1
7405 DO k = iadk0(jd),iadk0(jd+1)-1
7406 IF (jdik0(k)<i)
CALL reorder_a(nri,icol,jdik0(k))
7413 jdim(l_nz) = icol(j)
7417 DEALLOCATE(iadl,jdil)
7419 DEALLOCATE(iadk0,jdik0)
7420 CALL k_band(nddl,iadm,jdim,l_max)
7439#include "implicit_f.inc"
7443#include "param_c.inc"
7447 INTEGER NDDL,NPBY(NNPBY,*),IDDL(*),NRBYAC,IRBYAC(*),NDOF(*)
7470!||--- called by ------------------------------------------------------
7475 SUBROUTINE fil_span1(NRBYAC,IRBYAC,NPBY,IDDL,NDDL,IKC,NDOF,INLOC)
7483#include "implicit_f.inc"
7487#include "com04_c.inc"
7488#include "param_c.inc"
7492 INTEGER NDDL,NPBY(NNPBY,*),IDDL(*),NRBYAC,IRBYAC(*),
7493 + ikc(*),ndof(*),inloc(*)
7498 INTEGER I,J,M,N,ID,IDDLM(NDDL),IFIX,IDM
7508 iddlm(i)=iddl(i)-ifix
7511 IF (ikc(id)/=0) ifix=ifix+1
7521 IF (ikc(id+j)==0)
THEN
7538 1 ITOK ,NDDLI ,L_NZ ,LT_I )
7542#include "implicit_f.inc"
7546 INTEGER NDDL,,IADK(*),JDIK(*),IADI(*),JDII(*),
7553 INTEGER I,J,K,JD,JK,K2I(NDDL),ICOL(NDDL),NRI
7555 CALL l2g_kloc(nddli ,iadi ,jdii ,itok ,lt_i )
7566 nri = iadk(i+1)-iadk(i)
7568 CALL cp_int(nri,jdik(iadk(i)),icol)
7570 DO j=iadi(k),iadi(k+1)-1
7590 1 ITOK ,NDDLI ,IADT ,JDIT ,LT_K ,
7599#include "implicit_f.inc"
7603 INTEGER NDDL,NDDLI,IADK(*),JDIK(*),IADI(*),JDII(*),
7604 . itok(*),iadt(*) ,jdit(*),nzl
7606 . lt_k(*), lt_i(*), lt_t(*)
7610 INTEGER I,J,K,N,L,JD,JK,K2I(NDDL),IFT,NZ
7619 IF (iadi(i)==iadi(i+1)) k2i(j) = 0
7626 DO j=iadk(i),iadk(i+1)-1
7638 DO k=iadi(n),iadi(n+1)-1
7641 DO j=ift,iadk(i+1)-1
7642 IF (jk==jdik(j))
THEN
7645 lt_t(nz) = lt_k(j)+lt_i(k)
7648 ELSEIF (jk<jdik(j))
THEN
7662 IF (jk>jdik(j))
THEN
7668 IF (k==(iadi(n+1)-1))
THEN
7669 DO j=ift,iadk(i+1)-1
7680 CALL ancmsg(msgid=80,anmode=aninfo,
7682 IF (nz>nzl)
CALL arret(2)
7708#include "implicit_f.inc"
7712#include "impl1_c.inc"
7716 INTEGER NDDLI,IADI(*),JDII(*),ITOK(*),NZI
7722 INTEGER I,J,K,ICOL(NDDLI),L_NZ,NRI,NZ,JD,GI,GJ,IFT
7723 INTEGER,
DIMENSION(:),
ALLOCATABLE :: IADK0,JDIK0
7725 .
DIMENSION(:),
ALLOCATABLE :: LT_K0
7727 l_nz = 2*(iadi(nddli+1)-iadi(1))
7729 ALLOCATE(iadk0(nddli+1),jdik0(l_nz),lt_k0(l_nz))
7734 icol(i) = icol(i) + iadi(i+1) - iadi(i)
7735 DO j = iadi(i),iadi(i+1)-1
7737 icol(jd) = icol(jd) + 1
7742 iadk0(i+1) = iadk0(i)+icol(i)
7744 nz=iadk0(nddli+1) - iadk0(1)
7746 nri = iadi(i+1)-iadi(i)
7747 CALL cp_int(nri,jdii(iadi(i)),jdik0(iadk0(i)))
7748 CALL cp_real(nri,lt_i(iadi(i)),lt_k0(iadk0(i)))
7752 DO j=iadi(i),iadi(i+1)-1
7754 k = iadk0(jd) + icol(jd)
7757 icol(jd) = icol(jd) + 1
7767 DO j = iadk0(i),iadk0(i+1)-1
7782 DO j = iadk0(i),iadk0(i+1)-1
7794 DEALLOCATE(iadk0,jdik0,lt_k0)
7796 CALL ancmsg(msgid=80,anmode=aninfo,
7802 nz = iadi(i+1)-iadi(i)
7818#include "implicit_f.inc"
7822 INTEGER N ,IC(*),IDDL(*)
7828 INTEGER I,J,II,IT,IIC,IMIN,IDIC(N)
7841 IF (idic(j)<imin)
THEN
7876#include "implicit_f.inc"
7877#include "mvsiz_p.inc"
7881#include "com04_c.inc"
7882#include "com08_c.inc"
7883#include "param_c.inc"
7887 INTEGER IBFV(NIFV,*),NDOF(*),IFRAME(LISKN,*)
7894 INTEGER N, I, ISK, J, L, K1, K2, K3, ISENS,K,
7895 . ii, ic, nn, ideb, nr, nsk, nfk, ifm,index(mvsiz)
7898 . fac, startt, stopt, ts
7903 DO nn=1,nfxvel,nvsiz
7904 IF (ibfv(8,nn)==1)
GOTO 100
7907 DO 20 ii = 1,
min(nfxvel-ideb,nvsiz)
7911 IF(tstop<=startt)
GOTO 20
7912 IF(tt>=stopt)
GOTO 20
7917 ideb = ideb +
min(nfxvel-ideb,nvsiz)
7925 IF (ifm<=1) j=j-10*isk
7927 IF (ndof(i)==0) ndof(i)=3
7929 IF (ndof(i)==0) ndof(i)=6
7931 IF (ndof(i) <=3)
THEN
7932 CALL ancmsg(msgid=253,anmode=aninfo)
7957 SUBROUTINE i24msegv(IE ,IRTLMV ,SUBTRIA,IRTLM ,NVOISIN)
7961#include "implicit_f.inc"
7965 INTEGER IE,IRTLMV(4),IRTLM(4),SUBTRIA,NVOISIN(8)
7969 INTEGER IX1, IX2, IX3, IX4
7997 SELECT CASE (subtria)
8002 ix3 = iabs(nvoisin(1))
8003 ix4 = iabs(nvoisin(2))
8008 ix3 = iabs(nvoisin(3))
8009 ix4 = iabs(nvoisin(4))
8014 ix3 = iabs(nvoisin(5))
8015 ix4 = iabs(nvoisin(6))
8020 ix3 = iabs(nvoisin(7))
8021 ix4 = iabs(nvoisin(8))
8027 IF (irtlmv(2)==0) irtlmv(2)=irtlmv(1)
8028 IF (irtlmv(4)==0) irtlmv(4)=irtlmv(3)
subroutine intbuf_tab_c_ini(intbuf_tab, intbuf_tab_c)
subroutine i2_prem(ipari, khie, ni2, ii2, nsmax)
subroutine kin_nrmax(nnmax, nkmax, nrowk, icok, icokm, iloc, ink, fr_elem, iad_elem)
subroutine zero_ikin2g(nkine, iloc)
subroutine dim_fr_k(elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, ndof, nnmax, inloc, fr_elem, iad_elem, n_fr, igeo, fr_i2m, iad_i2m, elbuf_tab)
subroutine ind_kine_kp(nrowk, icok, icokm, nnmax, nkmax, nkine, ink, ikpat, iddl)
subroutine intabfr(nic, ic, n, intab)
subroutine set_ikin2g(nkine, inloc)
subroutine get_ikin2g(nkine, ink, iloc)
subroutine ind_fr_k(elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, ndof, nnmax, inloc, fr_elem, iad_elem, n_fr, igeo, elbuf_tab)
subroutine ind_nrfr(nft, nel, npn, npp, nnmax, nrow, icol, fr_elem, iad_elem, n_fr, icok)
subroutine dim_nrmax(nrow, fr_elem, iad_elem, nnmax)
subroutine imp_fri(num_imp, ns_imp, ne_imp, ipari, intbuf_tab, npby, lpby, itab, nrbyac, irbyac, nint2, iint2, iddl, ikc, ndof, inloc, nsrem, nsl, nbintc, intlist, x, ibfv, lj, skew, xframe, iskew, icodt, a, ud, lb, ifdis, nddl, urd, iddli, irbe3, lrbe3, frbe3, irbe2, lrbe2)
subroutine spc_fr_k(iadk, jdik, ndof, iddl, fr_elem, iad_elem)
subroutine rowfr_ind(jlt, ns_imp, ne_imp, irect, nrow, icol, nnmax, nsn, nin)
subroutine kin_nrmax0(nnmax, nkmax, nrowk, icok, icokm, iloc, ink, fr_elem, iad_elem)
subroutine ini_fr_k(elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, ndof, nnmax, inloc, fr_elem, iad_elem, n_fr, igeo, fr_i2m, iad_i2m, elbuf_tab, nnrmax)
subroutine imp_solv(output, timers, python, icode, iskew, iskwn, ipart, ixtg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg1, itab, itabm1, npc, ibcl, ibfv, sensor_tab, nnlink, lnlink, iparg, igrv, ipari, intbuf_tab, nprw, iconx, npby, lpby, lrivet, nstrf, ljoint, icodt, icodr, isky, adsky, iads_f, ilink, llink, weight, itask, ibvel, lbvel, fbvel, x, d, v, vr, dr, thke, damp, ms, in, pm, skews, geo, eani, bufmat, bufgeo, bufsf, tf, forc, vel, fsav, agrv, fr_wave, parts0, elbuf, rby, rivet, fr_elem, iad_elem, wa, a, ar, stifn, stifr, partsav, fsky, fskyi, iframe, xframe, w16, iactiv, fskym, igeo, ipm, wfext, nodft, nodlt, nint7, num_imp, ns_imp, ne_imp, ind_imp, it, rwbuf, lprw, fr_wall, nbintc, intlist, fopt, rwsav, fsavd, graphe, fac_k, ipiv_k, nkcond, nsensor, monvol, igrsurf, fr_mv, volmon, dirul, nodglob, mumps_par, cddlp, isendto, irecvfrom, newfront, imsch, i2msch, isizxv, ilenxv, islen7, irlen7, islen11, irlen11, islen17, irlen17, irlen7t, islen7t, kinet, num_imp1, temp, dt2prev, waint, lgrav, sh4tree, sh3tree, irlen20, islen20, irlen20t, islen20t, irlen20e, islen20e, irbe3, lrbe3, frbe3, fr_i2m, iad_i2m, fr_rbe3m, iad_rbe3m, frwl6, irbe2, lrbe2, intbuf_tab_c, ikine, diag_sms, icfield, lcfield, cfield, count_remslv, count_remslve, elbuf_tab, elbuf_imp, xdp, weight_md, stack, dimfb, fbsav6, stabsen, tabsensor, drape_sh4n, drape_sh3n, h3d_data, multi_fvm, igrbric, igrsh4n, igrsh3n, igrbeam, forneqs, maxdgap, nddl0, nnzk0, it_t, impbuf_tab, cptreac, fthreac, nodreac, drapeg, interfaces, th_surf, dpl0cld, vel0cld, snpc, stf, glob_therm, wfext_md)
subroutine imp_intbuf_ini(imp_intbuf_tab, nimp)
subroutine k_band(nddl, iadk, jdik, ndmax)
subroutine spmd_ndof(ndof, fr_elem, iad_elem, tsize)
subroutine spmd_i2d(ndof, fr_elem, iad_elem, tsize)
subroutine fil_span1(nrbyac, irbyac, npby, iddl, nddl, ikc, ndof, inloc)
subroutine dim_elemax(ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, iparg, elbuf, ndof, nrow, inloc, nnmax, l_max, c_max, igeo, elbuf_tab)
subroutine reorder_j(n, ic, ni, iddl)
subroutine row_int(jlt, ns_imp, ne_imp, irect, nsv, nrow, iloc, ndofi, n_impn, nsn, nsrem)
subroutine row_int2(jlt, ns_imp, ne_imp, irect, nsv, nrow, n_impn, iloc, icol, nnmax, icok, nkmax, nsn)
subroutine ndof_int(jlt, ns_imp, ne_imp, irect, nsv, nsn, ndof, idel_int)
subroutine fil_span0(nrbyac, irbyac, npby, iddl, ndof, nddl)
subroutine ind_spa2(nddl, iadk, jdik, iadm, jdim, l_max)
subroutine row_int112(jlt, ns_imp, ne_imp, irects, irectm, nrow, n_impn, iloc, icol, nnmax, icok, nkmax, nsn)
subroutine dim_elems2(elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, nrow, inloc, nnmax, icok, nkmax, icokm, ink, igeo, elbuf_tab)
subroutine dim_elemsp(elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, nrow, inloc, nkmax, icok, igeo, elbuf_tab)
subroutine dim_ndof_d(npby, lpby, nrbyac, irbyac, ndof, iad_rby, fr_rby)
subroutine row_adds(ns, nm, iloc, ishf, icol, icok, nrow, nnmax, nkmax)
subroutine row_int5(jlt, ns_imp, ne_imp, irect, nsv, msr, nrow, iloc, ndofi, n_impn, nsn, nsrem)
subroutine row_int52(jlt, ns_imp, ne_imp, irect, nsv, msr, nrow, n_impn, iloc, icol, nnmax, icok, nkmax, nsn)
subroutine dim_kine_p(igeo, npby, lpby, itab, nrbyac, irbyac, nint2, iint2, ipari, ndof, nsi2, nsrb, nkine, inloc, irbe3, irbe2, lrbe2, nkinm, intbuf_tab)
subroutine row_int51(jlt, ns_imp, ne_imp, irect, nsv, msr, nrow, n_impn, iloc, icol, nnmax, nsn)
subroutine dim_kinmax(igeo, npby, lpby, itab, nrbyac, irbyac, nint2, iint2, ipari, intbuf_tab, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, iparg, ndof, nsi2, nsrb, elbuf, nkine, inloc, nrow, nnmax, nkmax, nss, nsij, nmij, nss2, nsij2, nmij2, fr_elem, iad_elem, sh4tree, sh3tree, irbe3, lrbe3, nss3, irbe2, lrbe2, nsb2, elbuf_tab)
subroutine ndof_int11(jlt, ns_imp, ne_imp, irects, irectm, nsn, ndof, idel_int)
subroutine ndof_fv(ibfv, vel, ndof, iframe)
subroutine ind_int_k(ipari, intbuf_tab, num_imp, ns_imp, ne_imp, npby, lpby, itab, nrbyac, irbyac, nss, iss, nint2, iint2, nss2, iss2, nddli, nnzi, iadi, jdii, iddli, iloci, n_impn, itok, iddl, nnmax, nkmax, n_impm, ndof, iaint2, irbe3, lrbe3, nss3, iss3, irbe2, lrbe2, nsb2, isb2, ind_subt)
subroutine ind_ktot(nddl, iadk, jdik, iadi, jdii, itok, nddli, iadt, jdit, lt_k, lt_i, lt_t, nzl)
subroutine i24msegv(ie, irtlmv, subtria, irtlm, nvoisin)
subroutine dim_ndof_ii(nint2, iint2, ipari, ndof, nrbe3, irbe3, lrbe3, nrbe2, irbe2, lrbe2, intbuf_tab)
subroutine reorder_l(n, ic, ni, iddl)
subroutine dim_elems3(elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, nrow, inloc, nkmax, icok, igeo, elbuf_tab)
subroutine ind_kine_k(npby, lpby, itab, nrbyac, irbyac, nsc, isij, nmc, imij, nss, iss, nint2, iint2, ipari, intbuf_tab, nsc2, isij2, nss2, iss2, ndof, nnmax, nkine, inloc, nkmax, nrowk, icok, icokm, nmc2, imij2, ink, irbe3, lrbe3, iss3, irbe2, lrbe2, isb2, nsrb2)
subroutine dim_elems1(igeo, elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, ndof, nrow, elbuf_tab)
subroutine row_int241(jlt, ns_imp, ne_imp, irect, nsv, nrow, n_impn, iloc, icol, nnmax, nsn, subtria, nvoisin)
subroutine dim_span(nn, nddl, iadk, jdik, l_nz, ndmax)
subroutine row_int1(jlt, ns_imp, ne_imp, irect, nsv, nrow, n_impn, iloc, icol, nnmax, nsn)
subroutine dim_kine_t(npby, lpby, itab, nrbyac, irbyac, nint2, iint2, ipari, intbuf_tab, ndof, nnmax, nrowi, nkine, inloc, icok, nss, nsij, nmij, nss2, nsij2, nmij2, nkmax, icokm, ink, irbe3, lrbe3, nss3, irbe2, lrbe2, nsb2)
subroutine reorder_kij(n, ic, rc, iddl)
subroutine ndof_int5(jlt, ns_imp, ne_imp, irect, nsv, nsn, ndof, idel_int, msr)
subroutine dim_ndof_i(npby, lpby, itab, nrbyac, irbyac, ndof, nsrb, ipari, nint2, iint2, nsi2, nprw, irbe3, irbe2, nsrb2, fr_elem, iad_elem, intbuf_tab)
subroutine reorder_m(n, ic)
subroutine row_int24(jlt, ns_imp, ne_imp, irect, nsv, nrow, iloc, ndofi, n_impn, nsn, nsrem, subtria, nvoisin)
subroutine dim_kine_i(num_imp, ns_imp, ne_imp, npby, lpby, itab, nrbyac, irbyac, nint2, iint2, ipari, intbuf_tab, lnss, lnss2, nrow, nkine, inloc, nnmax, n_impm, ndof, ndofi, iaint2, irbe3, lrbe3, lnss3, irbe2, lrbe2, lnsb2, lnsrb2, ind_subt)
subroutine row_int242(jlt, ns_imp, ne_imp, irect, nsv, nrow, n_impn, iloc, icol, nnmax, icok, nkmax, nsn, subtria, nvoisin)
subroutine row_int111(jlt, ns_imp, ne_imp, irects, irectm, nrow, n_impn, iloc, icol, nnmax, nsn)
subroutine reorder_a1(n, ic, id)
subroutine set_ind_k(iddl, ndof, iadk, jdik, nddl, nnzk, nrow, icol, n, ikpat)
subroutine ind_span(nn, ndf, nddl, iadk, jdik, iadm, jdim, l_max, ndmax)
subroutine dim_kine_s(npby, lpby, itab, nrbyac, irbyac, nint2, iint2, ipari, intbuf_tab, ndof, nnmax, nrow, nrowi, nkine, inloc, icok, irbe3, lrbe3, irbe2, lrbe2)
subroutine ind_kine_i(npby, lpby, itab, nrbyac, irbyac, nss, iss, nint2, iint2, ipari, intbuf_tab, nss2, iss2, nnmax, inloc, nkmax, nrowk, icok, icokm, ink, ndof, ndof1, iaint2, irbe3, lrbe3, nss3, iss3, irbe2, lrbe2, nsb2, isb2)
subroutine dim_ktot(nddl, iadk, jdik, iadi, jdii, itok, nddli, l_nz, lt_i)
subroutine dim_int_k(ipari, intbuf_tab, num_imp, ns_imp, ne_imp, npby, lpby, itab, nrbyac, irbyac, lnss, nint2, iint2, iaint2, lnss2, nddl, nnzk, iddl, iloci, n_impn, n_impm, nnmax, nkmax, ndof, nsrem, irbe3, lrbe3, lnss3, irbe2, lrbe2, lnsb2, lnsrb2, ind_subt)
subroutine dim_int7(ninter, ipari, intbuf_tab, nnmax)
subroutine nddl_loc(nddl, iddl, iloc, nloc, ndof)
subroutine dim_elems4(elbuf, iparg, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, nrow, inloc, nnmax, icok, nkmax, icokm, ink, igeo, elbuf_tab)
logical function intab(nic, ic, n)
subroutine dim_spa2(nddl, iadk, jdik, l_nz)
subroutine idel_int(ipari, intbuf_tab, num_imp, ns_imp, ne_imp, ind_imp, ndof, nt_imp)
subroutine l2g_kloc(nddli, iadi, jdii, itok, lt_i)
subroutine reorder_i(n, ic)
subroutine dim_glob_k(geo, npby, lpby, itab, nrbyac, irbyac, nint2, iint2, ipari, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, iparg, ndof, iddl, nddl, nnzk, elbuf, inloc, lsize, fr_elem, iad_elem, fr_i2m, iad_i2m, nprw, nmonv, imonv, monvol, igrsurf, fr_mv, ipm, igeo, iad_rby, fr_rby, sh4tree, sh3tree, irbe3, lrbe3, fr_rbe3m, iad_rbe3m, irbe2, lrbe2, ibfv, vel, elbuf_tab, iframe, intbuf_tab)
subroutine row_int11(jlt, ns_imp, ne_imp, irects, irectm, nrow, iloc, ndofi, n_impn, nsn, nsrem)
subroutine reorder_a(n, ic, id)
subroutine ind_glob_k(npby, lpby, itab, nrbyac, irbyac, nsc, isij, nmc, imij, nss, iss, nint2, iint2, ipari, intbuf_tab, nsc2, isij2, nss2, iss2, iparg, elbuf, elbuf_tab, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, iddl, ndof, iadk, jdik, nddl, nnzk, nnmax, nkine, inloc, nkmax, nrowk, icok, icokm, nmc2, imij2, irk, npn, npp, fr_elem, iad_elem, ipm, igeo, irbe3, lrbe3, iss3, fr_i2m, iad_i2m, fr_rbe3m, iad_rbe3m, irbe2, lrbe2, isb2, nsrb2)
subroutine reorder_j1(n, ic, ni)
subroutine monv_prem(nmonv, imonv, monvol, igrsurf, fr_mv, itag, npby, lpby, nrbyac, irbyac, nint2, iint2, ipari, intbuf_tab, ndof, iprec0, irbe3, irbe2, lrbe2)
integer, dimension(:), allocatable pre_fpat
subroutine cp_real(n, x, xc)
subroutine cp_int(n, x, xc)
subroutine rbyac_imp(npby, itab, nrbyac, irbyac, nsmax)
subroutine rmind_imp(nnmax, inloc, nrowk, icok)
subroutine rmdim_imp(ixc, ixtg, ndof, nnmax, nkine, inloc, nrow, itab, sh4tree, sh3tree)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)
character *2 function nl()