OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
hm_option_read_key.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_option_read_key ../starter/source/devtools/hm_reader/hm_option_read_key.F
25!||--- called by ------------------------------------------------------
26!|| contrbe2 ../starter/source/constraints/general/rbe2/hm_read_rbe2.F
27!|| contrbe3 ../starter/source/constraints/general/rbe3/contrbe3.F
28!|| contrl ../starter/source/starter/contrl.F
29!|| create_map_tables ../starter/source/model/sets/map_tables.F
30!|| hm_convert_2d_elements_seatbelt ../starter/source/devtools/hm_reader/hm_convert_2d_elements_seatbelt.F
31!|| hm_convert_fail_tab ../starter/source/devtools/hm_reader/hm_convert_fail_tab.F
32!|| hm_count_2d_element_seatbelt ../starter/source/devtools/hm_reader/hm_count_2d_element_seatbelt.F
33!|| hm_grogro ../starter/source/groups/hm_grogro.F
34!|| hm_grogronod ../starter/source/groups/hm_grogronod.F
35!|| hm_lecgre ../starter/source/groups/hm_lecgre.F
36!|| hm_lecgrn ../starter/source/groups/hm_lecgrn.F
37!|| hm_lines_of_lines ../starter/source/groups/hm_lines_of_lines.F
38!|| hm_pre_read_link ../starter/source/constraints/rigidlink/hm_pre_read_rlink.F
39!|| hm_pre_read_preload ../starter/source/loads/general/preload/hm_pre_read_preload.F
40!|| hm_pre_read_preload_axial ../starter/source/loads/general/preload/hm_read_preload_axial.F90
41!|| hm_prelecgrns ../starter/source/groups/hm_prelecgrns.F
42!|| hm_prelecjoi ../starter/source/constraints/general/cyl_joint/hm_prelecjoi.F
43!|| hm_preread_bcscyc ../starter/source/constraints/general/bcs/lecbcscyc.F
44!|| hm_preread_bem ../starter/source/loads/bem/hm_read_bem.F
45!|| hm_preread_cload ../starter/source/loads/general/cload/hm_preread_cload.F
46!|| hm_preread_convec ../starter/source/loads/thermic/hm_preread_convec.F
47!|| hm_preread_eig ../starter/source/general_controls/computation/hm_read_eig.F
48!|| hm_preread_grav ../starter/source/loads/general/grav/hm_preread_grav.F
49!|| hm_preread_impacc ../starter/source/constraints/general/impvel/hm_preread_impacc.F
50!|| hm_preread_impdisp ../starter/source/constraints/general/impvel/hm_preread_impdisp.F
51!|| hm_preread_impflux ../starter/source/constraints/thermic/hm_preread_impflux.F
52!|| hm_preread_imptemp ../starter/source/constraints/thermic/hm_preread_imptemp.F
53!|| hm_preread_impvel ../starter/source/constraints/general/impvel/hm_preread_impvel.F
54!|| hm_preread_impvel0 ../starter/source/constraints/general/impvel/hm_preread_impvel0.F
55!|| hm_preread_inivel ../starter/source/initial_conditions/general/inivel/hm_preread_inivel.f90
56!|| hm_preread_load_centri ../starter/source/loads/general/load_centri/hm_preread_load_centri.f
57!|| hm_preread_load_pressure ../starter/source/loads/general/load_pressure/hm_preread_load_pressure.F
58!|| hm_preread_merge ../starter/source/constraints/general/merge/hm_preread_merge.F
59!|| hm_preread_part ../starter/source/model/assembling/hm_read_part.F
60!|| hm_preread_pblast ../starter/source/loads/pblast/hm_preread_pblast.F
61!|| hm_preread_pfluid ../starter/source/loads/general/pfluid/hm_preread_pfluid.F
62!|| hm_preread_pload ../starter/source/loads/general/pload/hm_preread_pload.F
63!|| hm_preread_properties ../starter/source/properties/hm_preread_properties.F
64!|| hm_preread_radiation ../starter/source/loads/thermic/hm_preread_radiation.F
65!|| hm_preread_rbe2 ../starter/source/constraints/general/rbe2/hm_read_rbe2.F
66!|| hm_preread_rbe3 ../starter/source/constraints/general/rbe3/hm_preread_rbe3.F
67!|| hm_preread_rbody ../starter/source/constraints/general/rbody/hm_preread_rbody.F
68!|| hm_preread_sphio ../starter/source/loads/sph/hm_preread_sphio.f
69!|| hm_read_activ ../starter/source/tools/activ/hm_read_activ.F
70!|| hm_read_admas ../starter/source/tools/admas/hm_read_admas.F
71!|| hm_read_ale_grid ../starter/source/general_controls/ale_grid/hm_read_ale_grid.F
72!|| hm_read_ale_link ../starter/source/constraints/ale/hm_read_ale_link_vel.F
73!|| hm_read_alebcs ../starter/source/constraints/ale/hm_read_alebcs.F
74!|| hm_read_analy ../starter/source/general_controls/computation/hm_read_analy.F
75!|| hm_read_bcs ../starter/source/constraints/general/bcs/hm_read_bcs.F
76!|| hm_read_bcs_wall ../starter/source/boundary_conditions/hm_read_bcs_wall.F90
77!|| hm_read_bem ../starter/source/loads/bem/hm_read_bem.F
78!|| hm_read_caa ../starter/source/general_controls/computation/hm_read_caa.F
79!|| hm_read_cload ../starter/source/loads/general/cload/hm_read_cload.F
80!|| hm_read_cluster ../starter/source/output/cluster/hm_read_cluster.F
81!|| hm_read_convec ../starter/source/loads/thermic/hm_read_convec.F
82!|| hm_read_cyljoint ../starter/source/constraints/general/cyl_joint/hm_read_cyljoint.f
83!|| hm_read_damp ../starter/source/general_controls/damping/hm_read_damp.F
84!|| hm_read_definter ../starter/source/general_controls/default_values/hm_read_definter.F
85!|| hm_read_defshell ../starter/source/general_controls/default_values/hm_read_defshell.F
86!|| hm_read_defsolid ../starter/source/general_controls/default_values/hm_read_defsolid.F
87!|| hm_read_drape ../starter/source/properties/composite_options/drape/hm_read_drape.F
88!|| hm_read_eig ../starter/source/general_controls/computation/hm_read_eig.F
89!|| hm_read_eos ../starter/source/materials/eos/hm_read_eos.f
90!|| hm_read_eref ../starter/source/loads/reference_state/eref/hm_read_eref.F
91!|| hm_read_fail ../starter/source/materials/fail/hm_read_fail.F
92!|| hm_read_friction_models ../starter/source/interfaces/friction/reader/hm_read_friction_models.F
93!|| hm_read_friction_orientations ../starter/source/interfaces/friction/reader/hm_read_friction_orientations.F
94!|| hm_read_frm ../starter/source/tools/skew/hm_read_frm.F
95!|| hm_read_func2d ../starter/source/tools/curve/hm_read_func2d.F
96!|| hm_read_funct ../starter/source/tools/curve/hm_read_funct.F
97!|| hm_read_funct_python ../starter/source/tools/curve/hm_read_funct_python.F90
98!|| hm_read_fxb1 ../starter/source/constraints/fxbody/hm_read_fxb.F
99!|| hm_read_fxb2 ../starter/source/constraints/fxbody/hm_read_fxb.F
100!|| hm_read_gauge ../starter/source/output/gauge/hm_read_gauge.F
101!|| hm_read_gjoint ../starter/source/constraints/general/gjoint/hm_read_gjoint.F
102!|| hm_read_grav ../starter/source/loads/general/grav/hm_read_grav.F
103!|| hm_read_grpart ../starter/source/groups/hm_read_grpart.F
104!|| hm_read_impacc ../starter/source/constraints/general/impvel/hm_read_impacc.F
105!|| hm_read_impflux ../starter/source/constraints/thermic/hm_read_impflux.F
106!|| hm_read_implicit ../starter/source/general_controls/computation/hm_read_implicit.F
107!|| hm_read_imptemp ../starter/source/constraints/thermic/hm_read_imptemp.F
108!|| hm_read_inicrack ../starter/source/initial_conditions/inicrack/hm_read_inicrack.F
109!|| hm_read_inigrav ../starter/source/initial_conditions/inigrav/hm_read_inigrav.F
110!|| hm_read_inimap1d ../starter/source/initial_conditions/inimap/hm_read_inimap1d.F
111!|| hm_read_inimap2d ../starter/source/initial_conditions/inimap/hm_read_inimap2d.F
112!|| hm_read_inista ../starter/source/initial_conditions/inista/hm_read_inista.F
113!|| hm_read_inistate_d00 ../starter/source/elements/initia/hm_read_inistate_d00.F
114!|| hm_read_initemp ../starter/source/initial_conditions/thermic/hm_read_initemp.F
115!|| hm_read_inivel ../starter/source/initial_conditions/general/inivel/hm_read_inivel.f
116!|| hm_read_inivol ../starter/source/initial_conditions/inivol/hm_read_inivol.F90
117!|| hm_read_interfaces ../starter/source/interfaces/reader/hm_read_interfaces.F
118!|| hm_read_intsub ../starter/source/output/subinterface/hm_read_intsub.F
119!|| hm_read_ioflag ../starter/source/general_controls/inputoutput/hm_read_ioflag.F
120!|| hm_read_lagmul ../starter/source/tools/lagmul/hm_read_lagmul.F
121!|| hm_read_leak ../starter/source/airbag/hm_read_leak.F
122!|| hm_read_lines ../starter/source/groups/hm_read_lines.F
123!|| hm_read_link ../starter/source/constraints/rigidlink/hm_read_rlink.F
124!|| hm_read_load_centri ../starter/source/loads/general/load_centri/hm_read_load_centri.F
125!|| hm_read_load_pressure ../starter/source/loads/general/load_pressure/hm_read_load_pressure.F
126!|| hm_read_mat ../starter/source/materials/mat/hm_read_mat.F90
127!|| hm_read_merge ../starter/source/constraints/general/merge/hm_read_merge.F
128!|| hm_read_merge_node ../starter/source/elements/reader/hm_read_merge_node.F
129!|| hm_read_move_funct ../starter/source/tools/curve/hm_read_move_funct.F
130!|| hm_read_mpc ../starter/source/constraints/general/mpc/hm_read_mpc.F
131!|| hm_read_mpc0 ../starter/source/constraints/general/mpc/hm_read_mpc.F
132!|| hm_read_nbcs ../starter/source/constraints/general/bcs/hm_read_nbcs.F
133!|| hm_read_node ../starter/source/elements/reader/hm_read_node.F
134!|| hm_read_nonlocal ../starter/source/materials/nonlocal/hm_read_nonlocal.F
135!|| hm_read_part ../starter/source/model/assembling/hm_read_part.F
136!|| hm_read_pblast ../starter/source/loads/pblast/hm_read_pblast.F
137!|| hm_read_pcyl ../starter/source/loads/general/load_pcyl/hm_read_pcyl.F
138!|| hm_read_perturb_fail ../starter/source/general_controls/computation/hm_read_perturb_fail.F
139!|| hm_read_perturb_part_shell ../starter/source/general_controls/computation/hm_read_perturb_part_shell.F
140!|| hm_read_perturb_part_solid ../starter/source/general_controls/computation/hm_read_perturb_part_solid.F
141!|| hm_read_pfluid ../starter/source/loads/general/pfluid/hm_read_pfluid.F
142!|| hm_read_pload ../starter/source/loads/general/pload/hm_read_pload.F
143!|| hm_read_prelecdrape ../starter/source/properties/composite_options/drape/hm_read_drape.F
144!|| hm_read_preload ../starter/source/loads/general/preload/hm_read_preload.f
145!|| hm_read_preload_axial ../starter/source/loads/general/preload/hm_read_preload_axial.F90
146!|| hm_read_prethgrou ../starter/source/output/th/hm_read_prethgrou.F
147!|| hm_read_properties ../starter/source/properties/hm_read_properties.F
148!|| hm_read_radiation ../starter/source/loads/thermic/hm_read_radiation.F
149!|| hm_read_rand ../starter/source/general_controls/computation/hm_read_rand.F
150!|| hm_read_rbe2 ../starter/source/constraints/general/rbe2/hm_read_rbe2.F
151!|| hm_read_rbe3 ../starter/source/constraints/general/rbe3/hm_read_rbe3.F
152!|| hm_read_rbody ../starter/source/constraints/general/rbody/hm_read_rbody.F
153!|| hm_read_rbody_lagmul ../starter/source/constraints/general/rbody/hm_read_rbody_lagmul.F
154!|| hm_read_refsta ../starter/source/loads/reference_state/refsta/hm_read_refsta.f
155!|| hm_read_retractor ../starter/source/tools/seatbelts/hm_read_retractor.F
156!|| hm_read_rwall_cyl ../starter/source/constraints/general/rwall/hm_read_rwall_cyl.f
157!|| hm_read_rwall_lagmul ../starter/source/constraints/general/rwall/hm_read_rwall_lagmul.F
158!|| hm_read_rwall_paral ../starter/source/constraints/general/rwall/hm_read_rwall_paral.F
159!|| hm_read_rwall_plane ../starter/source/constraints/general/rwall/hm_read_rwall_plane.F
160!|| hm_read_rwall_spher ../starter/source/constraints/general/rwall/hm_read_rwall_spher.F
161!|| hm_read_rwall_therm ../starter/source/constraints/general/rwall/hm_read_rwall_therm.F
162!|| hm_read_sensors ../starter/source/tools/sensor/hm_read_sensors.F
163!|| hm_read_skw ../starter/source/tools/skew/hm_read_skw.F
164!|| hm_read_slipring ../starter/source/tools/seatbelts/hm_read_slipring.F
165!|| hm_read_sms ../starter/source/general_controls/computation/hm_read_sms.F
166!|| hm_read_spcnd ../starter/source/constraints/sph/hm_read_spcnd.F
167!|| hm_read_sphcel ../starter/source/elements/reader/hm_read_sphcel.F
168!|| hm_read_sphglo ../starter/source/general_controls/computation/hm_read_sphglo.F
169!|| hm_read_sphio ../starter/source/loads/sph/hm_read_sphio.F
170!|| hm_read_spmd ../starter/source/general_controls/computation/hm_read_spmd.f
171!|| hm_read_submodel ../starter/source/model/assembling/hm_read_submodel.F
172!|| hm_read_subset ../starter/source/model/assembling/hm_read_subset.F
173!|| hm_read_surf ../starter/source/groups/hm_read_surf.F
174!|| hm_read_surfsurf ../starter/source/groups/hm_read_surfsurf.F
175!|| hm_read_table1_0 ../starter/source/tools/curve/hm_read_table1_0.F
176!|| hm_read_table1_1 ../starter/source/tools/curve/hm_read_table1_1.F
177!|| hm_read_table2_0 ../starter/source/tools/curve/hm_read_table2_0.F
178!|| hm_read_table2_1 ../starter/source/tools/curve/hm_read_table2_1.F
179!|| hm_read_therm ../starter/source/materials/therm/hm_read_therm.F
180!|| hm_read_therm_stress ../starter/source/materials/therm/hm_read_therm_stress.F90
181!|| hm_read_thgrou ../starter/source/output/th/hm_read_thgrou.F
182!|| hm_read_thgrpa ../starter/source/output/th/hm_read_thgrpa.F
183!|| hm_read_thgrpa_sub ../starter/source/output/th/hm_read_thgrpa.F
184!|| hm_read_thpart ../starter/source/output/thpart/hm_read_thpart.f
185!|| hm_read_unit ../starter/source/general_controls/computation/hm_read_unit.f
186!|| hm_read_visc ../starter/source/materials/visc/hm_read_visc.F
187!|| hm_read_window_user ../starter/source/tools/userwi/hm_read_window_user.F
188!|| hm_read_xref ../starter/source/loads/reference_state/xref/hm_read_xref.F
189!|| hm_set ../starter/source/model/sets/hm_set.F
190!|| hm_setfxrbyon ../starter/source/constraints/fxbody/hm_setfxrbyon.F
191!|| hm_sz_r2r ../starter/source/coupling/rad2rad/routines_r2r.F
192!|| hm_yctrl ../starter/source/elements/initia/hm_yctrl.F
193!|| lecacc ../starter/source/tools/accele/lecacc.F
194!|| lecextlnk ../starter/source/coupling/rad2rad/lecextlnk.F
195!|| lecfill ../starter/source/elements/initia/lecfill.F
196!|| leclas ../starter/source/loads/laser/leclas.F
197!|| lecsec0 ../starter/source/tools/sect/hm_read_sect.f
198!|| lecsec42 ../starter/source/tools/sect/hm_read_sect.F
199!|| lecsec4bolt ../starter/source/tools/sect/lecsec4bolt.f
200!|| lecstack_ply ../starter/source/properties/composite_options/stack/lecstack_ply.F
201!|| lecstamp ../starter/source/interfaces/interf1/lecstamp.F
202!|| lecsubmod ../starter/source/model/submodel/lecsubmod.F
203!|| lectrans ../starter/source/model/transformation/lectrans.F
204!|| lectranssub ../starter/source/model/submodel/lectranssub.F
205!|| nbadmesh ../starter/source/model/remesh/nbadmesh.F
206!|| nbfunct ../starter/source/tools/curve/nbfunc.F
207!|| nbsph ../starter/source/elements/sph/nbsph.F
208!|| prelecdet ../starter/source/initial_conditions/detonation/prelecdet.F
209!|| preleclas ../starter/source/loads/laser/lpreleclas.F
210!|| prelecsec ../starter/source/tools/sect/prelecsec.F
211!|| prelecsec4bolt ../starter/source/tools/sect/prelecsec4bolt.F
212!|| preread_rbody_lagmul ../starter/source/constraints/general/rbody/preread_rbody_lagmul.F
213!|| preread_rbody_set ../starter/source/model/sets/preread_rbody_set.f
214!|| r2r_monvol ../starter/source/coupling/rad2rad/r2r_prelec.F
215!|| r2r_prelec ../starter/source/coupling/rad2rad/r2r_prelec.F
216!|| r2r_prelec_name ../starter/source/coupling/rad2rad/r2r_prelec_name.F
217!|| read_ale_mat ../starter/source/materials/ale/read_ale_mat.F
218!|| read_box_box ../starter/source/model/box/read_box_box.F
219!|| read_box_cyl ../starter/source/model/box/read_box_cyl.F
220!|| read_box_rect ../starter/source/model/box/read_box_rect.F
221!|| read_box_spher ../starter/source/model/box/read_box_spher.F
222!|| read_detonators ../starter/source/initial_conditions/detonation/read_detonators.F
223!|| read_dfs_detcord ../starter/source/initial_conditions/detonation/read_dfs_detcord.F
224!|| read_dfs_detline ../starter/source/initial_conditions/detonation/read_dfs_detline.F
225!|| read_dfs_detplan ../starter/source/initial_conditions/detonation/read_dfs_detplan.F
226!|| read_dfs_detpoint ../starter/source/initial_conditions/detonation/read_dfs_detpoint.F
227!|| read_dfs_wave_shaper ../starter/source/initial_conditions/detonation/read_dfs_wave_shaper.F
228!|| read_ebcs ../starter/source/boundary_conditions/ebcs/read_ebcs.F
229!|| read_euler_mat ../starter/source/materials/ale/read_euler_mat.F
230!|| read_impdisp ../starter/source/constraints/general/impvel/read_impdisp.F
231!|| read_impdisp_fgeo ../starter/source/constraints/general/impvel/read_impdisp_fgeo.F
232!|| read_impvel ../starter/source/constraints/general/impvel/read_impvel.F
233!|| read_impvel_fgeo ../starter/source/constraints/general/impvel/read_impvel_fgeo.F
234!|| read_impvel_lagmul ../starter/source/constraints/general/impvel/read_impvel_lagmul.F
235!|| read_monvol ../starter/source/airbag/read_monvol.F
236!|| set_admesh ../starter/source/model/remesh/set_admesh.F
237!|| setrb2on ../starter/source/constraints/general/rbe2/hm_read_rbe2.F
238!|| setrbyon ../starter/source/constraints/general/rbody/hm_read_rbody.F
239!|| sort_set ../starter/source/model/sets/sort_sets.F
240!|| st_qaprint_set ../starter/source/output/qaprint/st_qaprint_set.F
241!|| state_admesh ../starter/source/model/remesh/state_admesh.F
242!||--- calls -----------------------------------------------------
243!||--- uses -----------------------------------------------------
244!|| message_mod ../starter/share/message_module/message_mod.f
245!|| submodel_mod ../starter/share/modules1/submodel_mod.F
246!||====================================================================
247 SUBROUTINE hm_option_read_key(LSUBMODEL,OPTION_ID,UNIT_ID,SUBMODEL_INDEX,SUBMODEL_ID,OPTION_TITR,
248 . KEYWORD1,KEYWORD2,KEYWORD3,KEYWORD4,OPT_POS)
249C-----------------------------------------------
250C ROUTINE DESCRIPTION :
251C ===================
252C GENERIC ROUTINE USING OPTIONAL FIELDS
253C REQUEST DATA INTO MODEL NEUTRAL OBJECT DATABASE USING HM_READER
254C IN CARD :
255C /KEYWORD1/KEYWORD2/KEYWORD3/KEYWORD4/OPTION_ID/UNIT_ID
256C OPTION_TITR
257C-----------------------------------------------
258C DUMMY ARGUMENTS DESCRIPTION:
259C ===================
260C
261C NAME DESCRIPTION
262C
263C LSUBMODEL SUBMODEL STRUCTURE
264C OPTION_ID OPTIONAL : ID OF THE OPTION
265C UNIT_ID OPTIONAL : UNIT ID OF THE OPTION
266C SUBMODEL_INDEX OPTIONAL : SUBMODEL INDEX OF THE OPTION
267C SUBMODEL_ID OPTIONAL : SUBMODEL ID OF THE OPTION
268C OPTION_TITR OPTIONAL : TITLE OF THE OPTION
269C KEYWORD1 OPTIONAL : KEYWORD1 OF THE OPTION
270C KEYWORD2 OPTIONAL : KEYWORD2 OF THE OPTION
271C KEYWORD3 OPTIONAL : KEYWORD3 OF THE OPTION
272C KEYWORD4 OPTIONAL : KEYWORD4 OF THE OPTION
273C============================================================================
274C M o d u l e s
275C-----------------------------------------------
276 USE message_mod
279C-----------------------------------------------
280C I m p l i c i t T y p e s
281C-----------------------------------------------
282#include "implicit_f.inc"
283C-----------------------------------------------
284C D u m m y A r g u m e n t s
285C-----------------------------------------------
286 INTEGER :: OPTION_ID,UNIT_ID,SUBMODEL_INDEX,SUBMODEL_ID,OPT_POS
287 CHARACTER*(*) :: KEYWORD1,KEYWORD2,KEYWORD3,KEYWORD4
288 CHARACTER*(*) :: OPTION_TITR
289 TYPE(submodel_data) :: LSUBMODEL(NSUBMOD)
290 OPTIONAL :: option_id,unit_id,submodel_index,submodel_id,keyword1,keyword2,keyword3,keyword4,option_titr,opt_pos
291C-----------------------------------------------
292C L o c a l V a r i a b l e s
293C-----------------------------------------------
294 INTEGER OFFSET_CATEGORY,CPT,CPT1,CPT2,IOK,S_KEYWORD,S_TITR_TMP,TMP_OPTION_ID,TMP_UNIT_ID,TMP_SUBMODEL_INDEX,MY_POSITION
295 CHARACTER(LEN=NCHARLINE) :: KEYWORD,TITR_TMP
296 LOGICAL SET_COLLECT_OFFSET
297C-----------------------------------------------
298C E x t e r n a l F u n c t i o n s
299C-----------------------------------------------
300 offset_category = 0
301 keyword=''
302 tmp_option_id = 0
303 tmp_unit_id = 0
304 tmp_submodel_index = 0
305 my_position = 0
306 IF(PRESENT(option_titr)) option_titr=''
307 IF(PRESENT(keyword1)) keyword1=''
308 IF(PRESENT(keyword2)) keyword2=''
309 IF(PRESENT(keyword3)) keyword3=''
310 IF(PRESENT(keyword4)) keyword4=''
311 IF(PRESENT(opt_pos)) my_position=opt_pos
312C--------------------------------------------------
313 CALL cpp_option_read(tmp_option_id,tmp_unit_id,tmp_submodel_index,keyword,s_keyword,
314 . titr_tmp,s_titr_tmp,offset_category,my_position)
315C--------------------------------------------------
316 IF(PRESENT(option_id)) option_id = tmp_option_id
317 IF(PRESENT(unit_id)) unit_id = tmp_unit_id
318 IF(PRESENT(submodel_index)) submodel_index = tmp_submodel_index
319 IF(PRESENT(submodel_id)) THEN
320 IF(tmp_submodel_index /= 0) THEN
321 submodel_id = lsubmodel(tmp_submodel_index)%NOSUBMOD
322 ELSE
323 submodel_id = 0
324 ENDIF
325 ENDIF
326 IF(PRESENT(option_titr)) option_titr(1:s_titr_tmp) = titr_tmp(1:s_titr_tmp)
327C--------------------------------------------------
328 cpt = 2
329 cpt1 = 2
330 cpt2 = 2
331 iok = 0
332
333 DO WHILE (cpt < ncharline .AND. iok == 0)
334 IF(keyword(cpt:cpt) == '/' .OR. keyword(cpt:cpt) == ' ') THEN
335 cpt2 = cpt
336 iok = 1
337 ENDIF
338 cpt = cpt + 1
339 ENDDO
340 IF(PRESENT(keyword1)) keyword1(1:cpt2-cpt1) = keyword(cpt1:min((cpt2-1),s_keyword))
341 cpt1 = cpt2+1
342 iok = 0
343 DO WHILE (cpt < ncharline .AND. iok == 0)
344 IF(keyword(cpt:cpt) == '/' .OR. keyword(cpt:cpt) == ' ') THEN
345 cpt2 = cpt
346 iok = 1
347 ENDIF
348 cpt = cpt + 1
349 ENDDO
350 IF(PRESENT(keyword2)) keyword2(1:cpt2-cpt1) = keyword(cpt1:min((cpt2-1),s_keyword))
351 cpt1 = cpt2+1
352 iok = 0
353 DO WHILE (cpt < ncharline .AND. iok == 0)
354 IF(keyword(cpt:cpt) == '/' .OR. keyword(cpt:cpt) == ' ') THEN
355 cpt2 = cpt
356 iok = 1
357 ENDIF
358 cpt = cpt + 1
359 ENDDO
360 IF(PRESENT(keyword3)) keyword3(1:cpt2-cpt1) = keyword(cpt1:min((cpt2-1),s_keyword))
361 cpt1 = cpt2+1
362 iok = 0
363 DO WHILE (cpt < ncharline .AND. iok == 0)
364 IF(keyword(cpt:cpt) == '/' .OR. keyword(cpt:cpt) == ' ') THEN
365 cpt2 = cpt
366 iok = 1
367 ENDIF
368 cpt = cpt + 1
369 ENDDO
370 IF(PRESENT(keyword4)) keyword4(1:cpt2-cpt1) = keyword(cpt1:min((cpt2-1),s_keyword))
371
372C--------------------------------------------------
373C ID OFFSETS EXCEPTION //SUBMODEL
374C--------------------------------------------------
375 set_collect_offset = .true.
376 IF(keyword(1:12) == '/SET/COLLECT') set_collect_offset = .false.
377C
378 IF(PRESENT(unit_id)) THEN
379 IF(tmp_submodel_index /= 0 )THEN
380 IF(lsubmodel(tmp_submodel_index)%UID /= 0)THEN
381 unit_id = lsubmodel(tmp_submodel_index)%UID
382 ENDIF
383 ENDIF
384 ENDIF
385C--------------------------------------------------
386 RETURN
387C
388 END
389
subroutine hm_option_read_key(lsubmodel, option_id, unit_id, submodel_index, submodel_id, option_titr, keyword1, keyword2, keyword3, keyword4, opt_pos)
subroutine hm_preread_load_centri(numcentri, igrnod, igrsurf, lsubmodel)
subroutine hm_preread_sphio(igrsurf, svsphio, nom_opt, lsubmodel)
subroutine hm_read_cyljoint(ljoint, itabm1, ikine, itab, igrnod, nom_opt, lsubmodel)
subroutine hm_read_eos(mat_param, ipm, pm, bufmat, nummat, nfunct, buflen, iadbuf, eos_tag, unitab, lsubmodel, mlaw_tag, npc, tf, snpc, npts, sbufmat, ntable, table)
Definition hm_read_eos.F:68
subroutine hm_read_inivel(v, w, itab, itabm1, vr, igrnod, igrbric, iskn, skew, inivids, x, unitab, lsubmodel, rtrans, xframe, iframe, vflow, wflow, kxsp, multi_fvm, fvm_inivel, igrquad, igrsh3n, rby_msn, rby_iniaxis, sensors, ninivelt, inivel_t)
subroutine hm_read_preload(ixs, ixs10, ipreload, preload, iflag_bpreload, nstrf, sensors, unitab, x, isolnod, itab, lsubmodel)
subroutine hm_read_refsta(lsubmodel, xrfile)
subroutine hm_read_rwall_cyl(rwl, nprw, lprw, ifi, ms, v, itab, itabm1, x, ikine, igrnod, mfi, imerge, unitab, iddlevel, lsubmodel, rtrans, nom_opt, itagnd, nchcyl, k, offs, ikine1)
subroutine lecsec0(lsubmodel)
subroutine hm_read_spmd(lsubmodel)
subroutine hm_read_thpart(ipart, igrbric, igrquad, igrsh4n, igrsh3n, igrtruss, igrbeam, igrspring, lsubmodel)
subroutine hm_read_unit(unitab, lsubmodel)
subroutine inivel(v, vr, svr, itabm1)
Definition inivel.F:35
subroutine lecsec4bolt(ixs, ixq, ixc, ixt, ixp, ixr, ixtg, x0, nstrf, itab, itabm1, igrnod, secbuf, ipari, ixs10, ixs20, ixs16, unitab, iskn, xframe, isolnod, nom_sect, rtrans, lsubmodel, nom_opt, igrbric)
Definition lecsec4bolt.F:57
#define min(a, b)
Definition macros.h:20
integer, parameter ncharline
integer nsubmod
subroutine preread_rbody_set(lsubmodel, itabm1, rby_msn)
program starter
Definition starter.F:39