OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
hm_pre_read_preload.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_pre_read_preload ../starter/source/loads/general/preload/hm_pre_read_preload.F
25!||--- called by ------------------------------------------------------
26!|| lectur ../starter/source/starter/lectur.F
27!||--- calls -----------------------------------------------------
28!|| hm_get_intv ../starter/source/devtools/hm_reader/hm_get_intv.F
29!|| hm_option_read_key ../starter/source/devtools/hm_reader/hm_option_read_key.F
30!|| hm_option_start ../starter/source/devtools/hm_reader/hm_option_start.F
31!||--- uses -----------------------------------------------------
32!|| hm_option_read_mod ../starter/share/modules1/hm_option_read_mod.F
33!|| r2r_mod ../starter/share/modules1/r2r_mod.F
34!|| submodel_mod ../starter/share/modules1/submodel_mod.F
35!||====================================================================
36 SUBROUTINE hm_pre_read_preload(NSTRF,LSUBMODEL)
37C-----------------------------------------------
38C M o d u l e s
39C-----------------------------------------------
40 USE r2r_mod
42 USE submodel_mod
44C-----------------------------------------------
45C I m p l i c i t T y p e s
46C-----------------------------------------------
47#include "implicit_f.inc"
48C-----------------------------------------------
49C C o m m o n B l o c k s
50C-----------------------------------------------
51#include "com04_c.inc"
52#include "boltpr_c.inc"
53C-----------------------------------------------
54C D u m m y A r g u m e n t s
55C-----------------------------------------------
56 !INTEGER NUMPRELOAD
57 INTEGER NSTRF(*) !IGRN(LIGRN1,*) !,ISURF(LISURF1,*)
58 TYPE(submodel_data) LSUBMODEL(*)
59C-----------------------------------------------
60C L o c a l V a r i a b l e s
61C-----------------------------------------------
62 INTEGER I, NLD, ISEC, NN, ID, UID, IS, K0 !, ISU, ISS
63 CHARACTER(LEN=NCHARTITLE)::TITR
64 CHARACTER(LEN=NCHARLINE)::KEY
65C-----------------------------------------------
66C E x t e r n a l F u n c t i o n s
67C-----------------------------------------------
68! INTEGER NGR2USRN
69C-----------------------------------------------
70 LOGICAL IS_AVAILABLE
71C=======================================================================
72C
73 is_available = .false.
74C-----------------------------------------------
75 CALL hm_option_start('/PRELOAD')
76C-----------------------------------------------
77 nld = numpreload
78 numpreload = 0
79
80 DO i=1,nld
81 ! Read title, ID and Unit ID
82 titr = ''
83 CALL hm_option_read_key(lsubmodel,
84 . option_id = id,
85 . unit_id = uid,
86 . option_titr = titr,
87 . keyword2 = key)
88C
89 IF (key(1:len_trim(key))=='AXIAL') cycle
90
91 CALL hm_get_intv('sect_ID' ,isec ,is_available,lsubmodel)
92
93 nn = 0
94 IF (isec > 0) THEN
95 k0=31
96 DO is=1,nsect
97 IF (isec==nstrf(k0+23)) THEN
98 nn = nstrf(k0+7)
99 EXIT
100 ENDIF
101 k0=nstrf(k0+24)
102 ENDDO
103 ENDIF
104 numpreload = numpreload + nn
105
106 ENDDO
107C---
108 RETURN
109
110 RETURN
111 END SUBROUTINE hm_pre_read_preload
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
subroutine hm_option_start(entity_type)
subroutine hm_pre_read_preload(nstrf, lsubmodel)
integer, parameter nchartitle
integer, parameter ncharline