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