OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
upenritg_last.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| upenritg_last ../engine/source/elements/xfem/upenritg_last.F
25!||--- called by ------------------------------------------------------
26!|| upxfem2 ../engine/source/elements/xfem/upxfem2.F
27!||--- uses -----------------------------------------------------
28!|| crackxfem_mod ../engine/share/modules/crackxfem_mod.F
29!|| element_mod ../common_source/modules/elements/element_mod.F90
30!||====================================================================
31 SUBROUTINE upenritg_last(
32 . IXTG ,NFT ,JFT ,JLT ,IAD_CRKTG,
33 . IEL_CRKTG,ELCUTC,NXLAY ,CRKEDGE )
34C-----------------------------------------------
36 use element_mod , only : nixtg
37C-----------------------------------------------
38C I m p l i c i t T y p e s
39C-----------------------------------------------
40#include "implicit_f.inc"
41C-----------------------------------------------
42C C o m m o n B l o c k s
43C-----------------------------------------------
44#include "com_xfem1.inc"
45C-----------------------------------------------
46C D u m m y A r g u m e n t s
47C-----------------------------------------------
48 INTEGER NFT,JFT,JLT,NXLAY
49 INTEGER IXTG(NIXTG,*),IEL_CRKTG(*),IAD_CRKTG(3,*),ELCUTC(2,*)
50 TYPE (XFEM_EDGE_) , DIMENSION(*) :: CRKEDGE
51C-----------------------------------------------
52C L o c a l V a r i a b l e s
53C-----------------------------------------------
54 INTEGER I,II,NS,ILEV,IXEL,ILAY,ICUT,LAYCUT,IADC1,IADC2,IADC3,
55 . ELCRK,ELCRKTG
56C=======================================================================
57 DO i=jft,jlt
58 ns = i+nft
59 icut = elcutc(1,ns)
60 IF (icut == 0) cycle
61 elcutc(2,ns) = icut
62 elcrktg = iel_crktg(ns)
63 elcrk = elcrktg + ecrkxfec
64 iadc1 = iad_crktg(1,elcrktg)
65 iadc2 = iad_crktg(2,elcrktg)
66 iadc3 = iad_crktg(3,elcrktg)
67 DO ilay = 1,nxlay
68 laycut = crkedge(ilay)%LAYCUT(elcrk)
69 IF (laycut == 0) cycle
70 ii = nxel*(ilay-1)
71 DO ixel=1,nxel
72 ilev = ii + ixel
73 crklvset(ilev)%ENR0(2,iadc1) = crklvset(ilev)%ENR0(1,iadc1)
74 crklvset(ilev)%ENR0(2,iadc2) = crklvset(ilev)%ENR0(1,iadc2)
75 crklvset(ilev)%ENR0(2,iadc3) = crklvset(ilev)%ENR0(1,iadc3)
76 ENDDO
77 ENDDO
78 ENDDO
79C-----------
80 RETURN
81 END
type(xfem_lvset_), dimension(:), allocatable crklvset
subroutine upenritg_last(ixtg, nft, jft, jlt, iad_crktg, iel_crktg, elcutc, nxlay, crkedge)