OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
icinv3.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/.
23C
24!||====================================================================
25!|| icinv3 ../starter/source/interfaces/inter3d1/icinv3.F
26!||--- called by ------------------------------------------------------
27!|| i12chk3 ../starter/source/interfaces/inter3d1/i12chk3.F
28!||--- uses -----------------------------------------------------
29!||====================================================================
30 SUBROUTINE icinv3(IXS,IXC,IXTG,IADD,INVC)
31 use element_mod , only :nixs,nixc,nixtg
32C
33C-----------------------------------------------
34C I m p l i c i t T y p e s
35C-----------------------------------------------
36#include "implicit_f.inc"
37C-----------------------------------------------
38C C o m m o n B l o c k s
39C-----------------------------------------------
40#include "com04_c.inc"
41C-----------------------------------------------
42C D u m m y A r g u m e n t s
43C-----------------------------------------------
44 INTEGER IXS(NIXS,*), IXC(NIXC,*), IXTG(NIXTG,*),
45 . IADD(*), INVC(*)
46C-----------------------------------------------
47C L o c a l V a r i a b l e s
48C---------------------`-------------------------
49 INTEGER I, J, N
50C-----------------------------------------------
51 iadd(1) = 1
52 iadd(2) = 1
53C
54 DO i=3,numnod+1
55 iadd(i)=0
56 ENDDO
57C
58 DO j=2,5
59 DO i=1,numelc
60 n = ixc(j,i) + 2
61 iadd(n)=iadd(n)+1
62 ENDDO
63 ENDDO
64C
65 DO j=2,4
66 DO i=1,numeltg
67 n = ixtg(j,i) + 2
68 iadd(n)=iadd(n)+1
69 ENDDO
70 ENDDO
71C
72 DO j=2,9
73 DO i=1,numels
74 n = ixs(j,i) + 2
75 iadd(n)=iadd(n)+1
76 ENDDO
77 ENDDO
78C
79 DO i=3,numnod+1
80 iadd(i)=iadd(i)+iadd(i-1)
81 ENDDO
82C
83 DO i=1,numelc
84
85 n = ixc(2,i) + 1
86 invc(iadd(n)) = i
87 iadd(n) = iadd(n) + 1
88
89 n = ixc(3,i) + 1
90 invc(iadd(n)) = i
91 iadd(n) = iadd(n) + 1
92
93 n = ixc(4,i) + 1
94 invc(iadd(n)) = i
95 iadd(n) = iadd(n) + 1
96
97 n = ixc(5,i) + 1
98 invc(iadd(n)) = i
99 iadd(n) = iadd(n) + 1
100
101 ENDDO
102C
103 DO i=1,numeltg
104 n = ixtg(2,i) + 1
105 invc(iadd(n)) = i+numelc
106 iadd(n) = iadd(n) + 1
107
108 n = ixtg(3,i) + 1
109 invc(iadd(n)) = i+numelc
110 iadd(n) = iadd(n) + 1
111
112 n = ixtg(4,i) + 1
113 invc(iadd(n)) = i+numelc
114 iadd(n) = iadd(n) + 1
115
116 ENDDO
117C
118 DO i=1,numels
119
120 n = ixs(2,i) + 1
121 invc(iadd(n)) = i+numelc+numeltg
122 iadd(n) = iadd(n) + 1
123
124 n = ixs(3,i) + 1
125 invc(iadd(n)) = i+numelc+numeltg
126 iadd(n) = iadd(n) + 1
127
128 n = ixs(4,i) + 1
129 invc(iadd(n)) = i+numelc+numeltg
130 iadd(n) = iadd(n) + 1
131
132 n = ixs(5,i) + 1
133 invc(iadd(n)) = i+numelc+numeltg
134 iadd(n) = iadd(n) + 1
135
136 n = ixs(6,i) + 1
137 invc(iadd(n)) = i+numelc+numeltg
138 iadd(n) = iadd(n) + 1
139
140 n = ixs(7,i) + 1
141 invc(iadd(n)) = i+numelc+numeltg
142 iadd(n) = iadd(n) + 1
143
144 n = ixs(8,i) + 1
145 invc(iadd(n)) = i+numelc+numeltg
146 iadd(n) = iadd(n) + 1
147
148 n = ixs(9,i) + 1
149 invc(iadd(n)) = i+numelc+numeltg
150 iadd(n) = iadd(n) + 1
151 ENDDO
152C-------------------------------------
153C APRES DO 70
154C IADD(1:NUMNOD) <=> IADD(2:NUMNOD+1)
155C-------------------------------------
156 RETURN
157 END
subroutine icinv3(ixs, ixc, ixtg, iadd, invc)
Definition icinv3.F:31