OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
read_engine_driver.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!|| read_engine_driver ../starter/source/general_controls/engine/read_engine_driver.F
25!||--- called by ------------------------------------------------------
26!|| lectur ../starter/source/starter/lectur.F
27!||--- calls -----------------------------------------------------
28!|| hm_option_count ../starter/source/devtools/hm_reader/hm_option_count.F
29!|| hm_option_start ../starter/source/devtools/hm_reader/hm_option_start.F
30!||--- uses -----------------------------------------------------
31!|| message_mod ../starter/share/message_module/message_mod.F
32!|| submodel_mod ../starter/share/modules1/submodel_mod.F
33!||====================================================================
34 SUBROUTINE read_engine_driver(IGRPART,IS_DYNA,NB_DYNA_INCLUDE)
35C-----------------------------------------------
36C M o d u l e s
37C-----------------------------------------------
38 USE message_mod
39 USE groupdef_mod
40 USE submodel_mod
41 USE unitab_mod
42C-----------------------------------------------
43C I m p l i c i t T y p e s
44C-----------------------------------------------
45#include "implicit_f.inc"
46C-----------------------------------------------
47C C o m m o n B l o c k s
48C-----------------------------------------------
49#include "com04_c.inc"
50#include "com_engcards_c.inc"
51#include "scr15_c.inc"
52C-----------------------------------------------
53C D u m m y A r g u m e n t s
54C-----------------------------------------------
55 TYPE(group_) ,DIMENSION(NGRPART) :: IGRPART
56 INTEGER,INTENT(IN)::IS_DYNA
57 INTEGER,INTENT(IN)::NB_DYNA_INCLUDE
58C-----------------------------------------------
59C L o c a l V a r i a b l e s
60C-----------------------------------------------
61 CHARACTER FILNAM*512
62 INTEGER I,IOUT_1RAD,LEN_FILNAM,CPT,NRUN,NPARITH_ENG,NTH_TITLE_ENG,
63 . NSTATE_ENG,NDYNAIN_ENG
64C=======================================================================
65C WRITE /ANIM OPTIONS THAT ARE IN MEMORY(HM MODEL) IN 1.RAD FILE
66C=======================================================================
67C-----------------------------------------------
68C OPEN 1.rad FILE
69C-----------------------------------------------
70 IF(nb_dyna_include .NE. 0) THEN
71 filnam = 'DYNA_INCLUDE_0001.rad'
72 len_filnam=21
73 ELSE
74 filnam =rootnam(1:rootlen)//'_0001.rad'
75 LEN_FILNAM=ROOTLEN+9
76 ENDIF
77 CALL CPP_MODEL_OPEN_FILE(FILNAM,LEN_FILNAM)
78C--------------------------------------------------
79C START BROWSING ANIM OPTIONS
80C--------------------------------------------------
81 CALL HM_OPTION_START('/anim')
82C--------------------------------------------------
83C WRITE ANIM OPTIONS IN 1.RAD FILE
84C--------------------------------------------------
85 DO CPT=1,NANIM_ENG
86 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
87 ENDDO
88C--------------------------------------------------
89C START BROWSING RUN OPTIONS
90C--------------------------------------------------
91 CALL HM_OPTION_START('/run')
92C--------------------------------------------------
93 CALL HM_OPTION_COUNT('/run',NRUN)
94C--------------------------------------------------
95C WRITE ANIM OPTIONS IN 1.RAD FILE
96C--------------------------------------------------
97 DO CPT=1,NRUN
98 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
99 ENDDO
100C--------------------------------------------------
101C START BROWSING TFILE OPTIONS
102C--------------------------------------------------
103 CALL HM_OPTION_START('/tfile')
104C--------------------------------------------------
105C WRITE TFILE OPTIONS IN 1.RAD FILE
106C--------------------------------------------------
107 DO CPT=1,NTFILE_ENG
108 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
109 ENDDO
110C--------------------------------------------------
111C START BROWSING RFILE OPTIONS
112C--------------------------------------------------
113 CALL HM_OPTION_START('/rfile')
114C--------------------------------------------------
115C WRITE RFILE OPTIONS IN 1.RAD FILE
116C--------------------------------------------------
117 DO CPT=1,NRFILE_ENG
118 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
119 ENDDO
120C--------------------------------------------------
121C START BROWSING STOP OPTIONS
122C--------------------------------------------------
123 CALL HM_OPTION_START('/stop')
124C--------------------------------------------------
125C WRITE STOP OPTIONS IN 1.RAD FILE
126C--------------------------------------------------
127 DO CPT=1,NSTOP_ENG
128 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
129 ENDDO
130C--------------------------------------------------
131C START BROWSING DT OPTIONS
132C--------------------------------------------------
133 CALL HM_OPTION_START('/dt')
134C--------------------------------------------------
135C WRITE DT OPTIONS IN 1.RAD FILE
136C--------------------------------------------------
137 DO CPT=1,NDT_ENG
138 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
139 ENDDO
140C--------------------------------------------------
141C START BROWSING VERS OPTIONS
142C--------------------------------------------------
143 CALL HM_OPTION_START('/vers')
144C--------------------------------------------------
145C WRITE VERS OPTIONS IN 1.RAD FILE
146C--------------------------------------------------
147 DO CPT=1,NVERS_ENG
148 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
149 ENDDO
150C--------------------------------------------------
151C START BROWSING PARITH OPTION
152C--------------------------------------------------
153 CALL HM_OPTION_COUNT('/parith',NPARITH_ENG)
154 CALL HM_OPTION_START('/parith')
155C--------------------------------------------------
156C WRITE PARITH OPTIONS IN 1.RAD FILE
157C--------------------------------------------------
158 DO CPT=1,NPARITH_ENG
159 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
160 ENDDO
161C--------------------------------------------------
162C START BROWSING /TH/TITLE OPTIONS
163C--------------------------------------------------
164 CALL HM_OPTION_COUNT('/th/title',NTH_TITLE_ENG)
165 CALL HM_OPTION_START('/th/title')
166C--------------------------------------------------
167C WRITE /TH/TITLE OPTIONS IN 1.RAD FILE
168C--------------------------------------------------
169 DO CPT=1,NTH_TITLE_ENG
170 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
171 ENDDO
172C--------------------------------------------------
173C START BROWSING /STATE OPTIONS
174C--------------------------------------------------
175 CALL HM_OPTION_COUNT('/state',NSTATE_ENG)
176 CALL HM_OPTION_START('/state')
177C--------------------------------------------------
178C WRITE /STATE OPTIONS IN 1.RAD FILE
179C--------------------------------------------------
180 DO CPT=1,NSTATE_ENG
181 CALL CPP_GLOBAL_ENTITY_SDI_WRITE(IS_DYNA)
182 ENDDO
183C--------------------------------------------------
184C START BROWSING /DYNAIN OPTIONS
185C--------------------------------------------------
186 CALL HM_OPTION_COUNT('/dynain',ndynain_eng)
187 CALL hm_option_start('/DYNAIN')
188C--------------------------------------------------
189C WRITE /DYNAIN OPTIONS IN 1.RAD FILE
190C--------------------------------------------------
191 DO cpt=1,ndynain_eng
192 CALL cpp_global_entity_sdi_write(is_dyna)
193 ENDDO
194C-----------------------------------------------
195C CLOSE 1.rad FILE
196C-----------------------------------------------
197 CALL cpp_model_close_file()
198C=======================================================================
199C END WRITE /ANIM OPTIONS THAT ARE IN MEMORY(HM MODEL) IN 1.RAD FILE
200C=======================================================================
201C-----------------------------------------------
202 RETURN
203 END
subroutine hm_option_start(entity_type)
subroutine read_engine_driver(igrpart, is_dyna, nb_dyna_include)