OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
tagnod.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!|| tagnod ../starter/source/groups/tagnod.F
25!||--- called by ------------------------------------------------------
26!|| hm_lecgrn ../starter/source/groups/hm_lecgrn.F
27!||====================================================================
28 SUBROUTINE tagnod(IX,NIX,NIX1,NIX2,NUMEL,IPARTE,TAGBUF,NPART)
29C-----------------------------------------------
30C I m p l i c i t T y p e s
31C-----------------------------------------------
32#include "implicit_f.inc"
33C-----------------------------------------------
34C D u m m y A r g u m e n t s
35C-----------------------------------------------
36 INTEGER NIX,IX(NIX,*),NIX1,NIX2,NUMEL,IPARTE(*),
37 1 TAGBUF(*),NPART
38C-----------------------------------------------
39C L o c a l V a r i a b l e s
40C-----------------------------------------------
41 INTEGER J,L
42C=======================================================================
43 DO j=1,numel
44 IF (tagbuf(iparte(j)) == 1)THEN
45 DO l=nix1,nix2
46 tagbuf(ix(l,j)+npart)=1
47 ENDDO
48 ENDIF
49 ENDDO
50 DO j=1,numel
51 IF (tagbuf(iparte(j)) == -1)THEN
52 DO l=nix1,nix2
53 tagbuf(ix(l,j)+npart)=0
54 ENDDO
55 ENDIF
56 ENDDO
57C-----------
58 RETURN
59 END
60!||====================================================================
61!|| tagnods ../starter/source/groups/tagnod.F
62!||--- called by ------------------------------------------------------
63!|| hm_lecgrn ../starter/source/groups/hm_lecgrn.F
64!||--- uses -----------------------------------------------------
65!|| message_mod ../starter/share/message_module/message_mod.F
66!||====================================================================
67 SUBROUTINE tagnods(IXS,IXS10,IXS20,IXS16,IPARTS,TAGBUF,IDGRN,TITR)
68 USE message_mod
70 use element_mod , only : nixs
71C-----------------------------------------------
72C I m p l i c i t T y p e s
73C-----------------------------------------------
74#include "implicit_f.inc"
75C-----------------------------------------------
76C C o m m o n B l o c k s
77C-----------------------------------------------
78#include "com04_c.inc"
79C-----------------------------------------------
80C D u m m y A r g u m e n t s
81C-----------------------------------------------
82 INTEGER IXS(NIXS,*),IPARTS(*),IXS10(6,*),IXS20(12,*),IXS16(8,*),
83 1 TAGBUF(*),IDGRN
84 CHARACTER(LEN=NCHARTITLE) :: TITR
85C-----------------------------------------------
86C L o c a l V a r i a b l e s
87C-----------------------------------------------
88 INTEGER I,J,L,ITETRA10
89C=======================================================================
90 DO j=1,numels8
91 IF (tagbuf(iparts(j)) == 1)THEN
92 DO l=2,9
93 tagbuf(ixs(l,j)+npart)=1
94 ENDDO
95 ENDIF
96 ENDDO
97 DO j=1,numels8
98 IF (tagbuf(iparts(j)) == -1)THEN
99 DO l=2,9
100 tagbuf(ixs(l,j)+npart)=0
101 ENDDO
102 ENDIF
103 ENDDO
104 itetra10=0
105C-----------
106 DO i=1,numels10
107 j = i + numels8
108 IF (tagbuf(iparts(j)) == 1)THEN
109 itetra10=itetra10+1
110 DO l=2,9
111 tagbuf(ixs(l,j)+npart)=1
112 ENDDO
113 DO l=1,6
114 IF (ixs10(l,i) /= 0) tagbuf(ixs10(l,i)+npart)=1
115 ENDDO
116 ENDIF
117 ENDDO
118 DO i=1,numels10
119 j = i + numels8
120 IF (tagbuf(iparts(j)) == -1)THEN
121 itetra10=itetra10+1
122 DO l=2,9
123 tagbuf(ixs(l,j)+npart)=0
124 ENDDO
125 DO l=1,6
126 IF (ixs10(l,i) /= 0) tagbuf(ixs10(l,i)+npart)=1
127 ENDDO
128 ENDIF
129 ENDDO
130C-----------
131 DO i=1,numels20
132 j = i + numels8 + numels10
133 IF (tagbuf(iparts(j)) == 1)THEN
134 DO l=2,9
135 tagbuf(ixs(l,j)+npart)=1
136 ENDDO
137 DO l=1,12
138 IF (ixs20(l,i) /= 0) tagbuf(ixs20(l,i)+npart)=1
139 ENDDO
140 ENDIF
141 ENDDO
142 DO i=1,numels20
143 j = i + numels8 + numels10
144 IF (tagbuf(iparts(j)) == -1)THEN
145 DO l=2,9
146 tagbuf(ixs(l,j)+npart)=0
147 ENDDO
148 DO l=1,12
149 IF (ixs20(l,i) /= 0) tagbuf(ixs20(l,i)+npart)=1
150 ENDDO
151 ENDIF
152 ENDDO
153C-----------
154 DO i=1,numels16
155 j = i + numels8 + numels10 + numels20
156 IF (tagbuf(iparts(j)) == 1)THEN
157 DO l=2,9
158 tagbuf(ixs(l,j)+npart)=1
159 ENDDO
160 DO l=1,8
161 IF (ixs16(l,i) /= 0) tagbuf(ixs16(l,i)+npart)=1
162 ENDDO
163 ENDIF
164 ENDDO
165 DO i=1,numels16
166 j = i + numels8 + numels10 + numels20
167 IF (tagbuf(iparts(j)) == -1)THEN
168 DO l=2,9
169 tagbuf(ixs(l,j)+npart)=0
170 ENDDO
171 DO l=1,8
172 IF (ixs16(l,i) /= 0) tagbuf(ixs16(l,i)+npart)=1
173 ENDDO
174 ENDIF
175 ENDDO
176C-----------
177 RETURN
178 END
integer, parameter nchartitle
subroutine tagnod(ix, nix, nix1, nix2, numel, iparte, tagbuf, npart)
Definition tagnod.F:29
subroutine tagnods(ixs, ixs10, ixs20, ixs16, iparts, tagbuf, idgrn, titr)
Definition tagnod.F:68