OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
tri25tmp_mod.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!|| tri25tmp ../engine/share/modules/tri25tmp_mod.F
25!||--- called by ------------------------------------------------------
26!|| check_fi ../engine/source/mpi/interfaces/spmd_i25slide.F
27!|| deallocate_fi1_tmp ../engine/source/mpi/interfaces/spmd_i25slide.F
28!|| reallocate_fi1 ../engine/source/mpi/interfaces/spmd_i25slide.F
29!|| spmd_i25_slide_gat ../engine/source/mpi/interfaces/spmd_i25slide.F
30!||--- uses -----------------------------------------------------
31!|| pointerdef ../engine/share/modules/pointerdef_mod.F
32!||====================================================================
33 MODULE tri25tmp
34#include "my_real.inc"
35 USE pointerdef
36c USE TRI7BOX
37c TYPE int_pointer
38c INTEGER, DIMENSION(:), POINTER :: P
39c END TYPE int_pointer
40c TYPE int_pointer2
41c INTEGER, DIMENSION(:,:), POINTER :: P
42c END TYPE int_pointer2
43c TYPE real_pointer
44c my_real, DIMENSION(:), POINTER :: P
45c END TYPE real_pointer
46c TYPE real_pointer2
47c my_real, DIMENSION(:,:), POINTER :: P
48c END TYPE real_pointer2
49c TYPE real_pointer3
50c my_real, DIMENSION(:,:,:), POINTER :: P
51c END TYPE real_pointer3
52c TYPE r8_pointer
53c DOUBLE PRECISION, DIMENSION(:), POINTER :: P
54c END TYPE r8_pointer
55c TYPE r8_pointer3
56c DOUBLE PRECISION, DIMENSION(:,:,:), POINTER :: P
57c END TYPE r8_pointer3
58
60C On utlise PANE_OLD
61
62 INTEGER i24xremp,igapxremp,i24iremp,i24irempnsne
63
64 INTEGER :: current_nodfi
65 INTEGER :: current_fi_size
66
67C buffer envoi/reception forces interfaces
68C pointer array NSVFI of size NINTER
69C indicating nodes list Remote to receive "proc main"
70 TYPE(int_pointer) :: nsvfi
71
72C Proc main of the secnd node. Assumes that only the main processor sends
73C secnds nodes
74 TYPE(int_pointer) pmainfi
75
76C pointer array NSNFI of size NINTER
77C indicating for each interface type7 the number of secondary nodes in NSVFI
78C per processor
79 TYPE(int_pointer) ::
80 . nsnfi, nsnfi_sav, itafi, kinfi, matsfi,
81C tableau i20 specifique (flag nodal)
82 . nbinflfi,
83 . NODNXFI, nodamsfi, procamsfi,
84C Table I20 Part Edge
85 . nsnfie,nsvfie,itafie,nodnxfie, nodamsfie, procamsfie,
86C Friction model : secnd parts id
87 . ipartfricsfi,ipartfric_fie,
88C type25 interface adhesion
89 . if_adhfi
90C arrays front interfaces for MS, STFN, STIFN
91 TYPE(int_pointer) :: icodt_fi,iskew_fi
92 TYPE(real_pointer) ::
93 . msfi, stifi, stnfi, gapfi,vscfi, fthefi, ftheskyfi,
94 . areasfi, tempfi, alphakfi, diag_smsfi,gap_lfi,condnfi,
95 . condnskyfi,
96C Table I20 Part Edge
97 . MSFIE, stifie, stnfie, gapfie, vscfie, alphakfie,
98 . diag_smsfie,
99C tableau I18 Kine
100 . mtfi_pene,MTFI_PENEMIN
101C interface boundary arrays for X, V A or FSKY
103 . xfi, vfi, afi, fskyfi, penfi, penfia,mtfi_v,mtfi_a,
104 . i18kafi,mtfi_n,daancfi
105C Table I20 Part Edge
106 . xfie, vfie, afie, FSKYFIE, penfie, penfiae, daancfie
107C Tables front interfaces 17 for
109 . eminxfi, ksfi, frotsfi, stnfi17
110C Tables Frontieres Interfaces 17 for XFI17, VFI17, AFI17
112 . xfi17, vfi17, afi17
113C Tables boundary interfaces 20 for DXANC, DVANC
115 . dxancfi, dvancfi, dxancfie, dvancfie
116C Boundary Tables Interfaces 20 for DAANC6
117 TYPE(r8_pointer3) ::
118 . daanc6fi, daanc6fie
119C pointer array ISKYFI of size NINTER indicating for each interface
120C the list of remote nodes associated with a force in FSKYI
121 TYPE(int_pointer) :: iskyfi,
122C Table I20 Part Edge
123 . iskyfie
124C pointer array NSVSI of size NINTER
125C Saying the noded list Remote to send to the "Prof Second"
126 TYPE(int_pointer) :: nsvsi,
127C Table I20 Part Edge
128 . nsvsie
129C pointer array NSNSI of size NINTER
130C indicating for each interface type7, 10, 11 the number of secondary nodes in NSVSI
131C per processor
132 TYPE(int_pointer) :: nsnsi,
133C Table I20 Part Edge
134 . nsnsie
135C pointer array NISUBSFI of size NINTER
136C indicating for each interface type7, 10 the number of elements in LISUBSFI
137C per processor
138 TYPE(int_pointer) :: nisubsfi
139C pointer array LISUBSFI of size NINTER
140C indicating for each interface type7, 10, and for each remote node of this interface
141C the list of sub-interfaces
142 TYPE(int_pointer) :: lisubsfi
143C pointer array INFLG_SUBSFI of size NINTER
144C indicating for each interface type25 and for each remote node of this interface
145C belonging to S1, S2, or Grnod
146 TYPE(int_pointer), DIMENSION(:), ALLOCATABLE :: inflg_subsfi
147C pointer array ADDSUBSFI of size NINTER
148C indicating for each interface type7, 10, and for each remote node of this interface
149C Its departure address in lisubsfi and inflg_subsfi (Table dimensioning a nsnr + 1 (Remote node + 1)
150 TYPE(int_pointer) :: addsubsfi
151 TYPE(real_pointer2) :: fnconti, ftconti
152 TYPE(real_pointer) :: efricfi, efricgfi
153 INTEGER :: nlskyfi, nlskyfie
154C Flag array to tag if NSNFI was frozen into NSNFI_SAV - Case INACTI + TSTART
155 INTEGER :: nsnfi_flag
156C Type 24 & 25 Interface
157 TYPE(int_pointer) :: icont_i_fi
158 TYPE(int_pointer2) :: irtlm_fi
159C T24 E2E
160 TYPE(int_pointer2) :: irtse_fi
161 TYPE(int_pointer2) :: is2se_fi
162 TYPE(int_pointer) :: is2pt_fi
163 TYPE(int_pointer) :: isegpt_fi
164 TYPE(int_pointer) :: isedge_fi
165
166 TYPE(real_pointer) :: time_sfi
167 TYPE(real_pointer2) :: secnd_frfi
168 TYPE(real_pointer2) :: pene_oldfi
169 TYPE(real_pointer2) :: stif_oldfi
170C Type 25 Interface
171 TYPE(int_pointer2) :: islide_fi
172C Type 25 Interface FLAGREMN
173 TYPE(int_pointer) :: remnor_fi
174 TYPE(int_pointer) :: kremnor_fi
175 TYPE(real_pointer) :: stif_msdt_fi
176 TYPE(real_pointer) :: intareanfi
177
178 END TYPE i25_tmp_struct
179
180 END MODULE tri25tmp