OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
anim_crk_init.F File Reference
#include "implicit_f.inc"
#include "com04_c.inc"
#include "com_xfem1.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine anim_xfe_init (ixc, ixtg, inod_crk, iel_crk, iadc_crk, iadtg_crk)

Function/Subroutine Documentation

◆ anim_xfe_init()

subroutine anim_xfe_init ( integer, dimension(nixc,*) ixc,
integer, dimension(nixtg,*) ixtg,
integer, dimension(*) inod_crk,
integer, dimension(*) iel_crk,
integer, dimension(4,*) iadc_crk,
integer, dimension(3,*) iadtg_crk )

Definition at line 30 of file anim_crk_init.F.

32C-----------------------------------------------
33C M o d u l e s
34C-----------------------------------------------
36C-----------------------------------------------
37C I m p l i c i t T y p e s
38C-----------------------------------------------
39#include "implicit_f.inc"
40C-----------------------------------------------
41C C o m m o n B l o c k s
42C-----------------------------------------------
43#include "com04_c.inc"
44#include "com_xfem1.inc"
45C-----------------------------------------------
46C D u m m y A r g u m e n t s
47C-----------------------------------------------
48 INTEGER IXC(NIXC,*),IXTG(NIXTG,*),INOD_CRK(*),
49 . IEL_CRK(*),IADC_CRK(4,*),IADTG_CRK(3,*)
50C-----------------------------------------------
51C L O C A L V A R I A B L E S
52C-----------------------------------------------
53 INTEGER N,NN,I,II,J,ILEV,NCOUNT,IADC(4)
54C=======================================================================
55 DO ilev=1,nlevmax
56 ncount = 0
57c
58 DO i=1,numelc
59 ii = iel_crk(i) ! n systeme xfem
60 IF (ii > 0) THEN
61 DO j=1,4
62 n = ixc(j+1,i)
63 nn = inod_crk(n) ! n systeme xfem
64 IF (nn > 0) THEN
65 ncount = ncount + 1
66 iadc(j) = iadc_crk(j,ii) ! adresse sky nodal xfem
67 crknod(ilev)%NOD2IAD(ncount) = iadc(j)
68 ENDIF
69 ENDDO
70 ENDIF
71 ENDDO
72c
73 DO i=1,numeltg
74 ii = iel_crk(i+numelc)
75 IF (ii > 0) THEN
76 DO j=1,3
77 n = ixtg(j+1,i)
78 nn = inod_crk(n)
79 iadc(j) = iadtg_crk(j,ii)
80 IF (nn > 0) THEN
81 ncount = ncount + 1
82 crknod(ilev)%NOD2IAD(ncount) = iadc(j)
83 ENDIF
84 ENDDO
85c ! need one more additional node to reconstruct triangle cut elem
86 ncount = ncount + 1
87 crknod(ilev)%NOD2IAD(ncount) = iadc(3)
88 ENDIF
89 ENDDO
90 ENDDO ! DO ILEV=1,NLEVMAX
91c-----------
92 RETURN
type(xfem_nodes_), dimension(:), allocatable crknod