OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
hm_elngrr.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!|| hm_elngrr ../starter/source/groups/hm_elngrr.F
25!||--- called by ------------------------------------------------------
26!|| hm_lecgrn ../starter/source/groups/hm_lecgrn.F
27!||--- calls -----------------------------------------------------
28!|| ancmsg ../starter/source/output/message/message.F
29!|| hm_get_int_array_index ../starter/source/devtools/hm_reader/hm_get_int_array_index.F
30!|| hm_get_intv ../starter/source/devtools/hm_reader/hm_get_intv.F
31!||--- uses -----------------------------------------------------
32!|| hm_option_read_mod ../starter/share/modules1/hm_option_read_mod.F
33!|| message_mod ../starter/share/message_module/message_mod.F
34!|| submodel_mod ../starter/share/modules1/submodel_mod.F
35!||====================================================================
36 SUBROUTINE hm_elngrr(IXR ,GEO ,NGRELE ,ID ,
37 . IGRELEM ,TAGBUF ,TITR ,FLAG ,
38 . LSUBMODEL)
39C-----------------------------------------------
40C M o d u l e s
41C-----------------------------------------------
42 USE message_mod
43 USE groupdef_mod
44 USE submodel_mod
47 use element_mod , only : nixr
48C-----------------------------------------------
49C I m p l i c i t T y p e s
50C-----------------------------------------------
51#include "implicit_f.inc"
52C-----------------------------------------------
53C C o m m o n B l o c k s
54C-----------------------------------------------
55#include "param_c.inc"
56C-----------------------------------------------
57C D u m m y A r g u m e n t s
58C-----------------------------------------------
59 INTEGER IXR(NIXR,*),TAGBUF(*)
60 INTEGER NGRELE,ID,FLAG
62 . geo(npropg,*)
63 CHARACTER(LEN=NCHARTITLE) :: TITR
64 TYPE(SUBMODEL_DATA) LSUBMODEL(*)
65C-----------------------------------------------
66 TYPE (GROUP_) , DIMENSION(NGRELE) :: IGRELEM
67C-----------------------------------------------
68C L o c a l V a r i a b l e s
69C-----------------------------------------------
70 INTEGER L, IE, K, ISU, NIX2, IPIDT, KK, JJ, NEMAX
71 LOGICAL IS_AVAILABLE
72C=======================================================================
73 is_available = .false.
74 CALL hm_get_intv('idsmax' ,nemax,is_available,lsubmodel)
75 DO kk = 1,nemax
76 CALL hm_get_int_array_index ('ids',jj ,kk,is_available,lsubmodel)
77 IF (jj /= 0) THEN
78 isu=0
79 DO k=1,ngrele
80 IF (jj == igrelem(k)%ID) isu=k
81 ENDDO
82 IF (isu /= 0) THEN
83 DO l=1,igrelem(isu)%NENTITY
84 ie=igrelem(isu)%ENTITY(l)
85 ipidt=nint(geo(1,ixr(1,ie)))
86 IF(ipidt == 12)THEN
87 nix2=4
88 ELSE
89 nix2=3
90 ENDIF
91 DO k=2,nix2
92C tag nodes connected to the element
93 tagbuf(ixr(k,ie))=1
94 ENDDO
95 ENDDO
96 ELSEIF (flag == 0) THEN
97 CALL ancmsg(msgid=172,
98 . msgtype=msgwarning,
99 . anmode=aninfo,
100 . i1=id,c1=titr,
101 . c2='GRSPRI',
102 . i2=jj)
103 ENDIF
104 ENDIF
105 ENDDO
106C-----------
107 RETURN
108 END
#define my_real
Definition cppsort.cpp:32
subroutine hm_elngrr(ixr, geo, ngrele, id, igrelem, tagbuf, titr, flag, lsubmodel)
Definition hm_elngrr.F:39
subroutine hm_get_int_array_index(name, ival, index, is_available, lsubmodel)
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
integer, parameter nchartitle
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)
Definition message.F:895