OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
h3d_solid_scalar.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!|| h3d_solid_scalar ../engine/source/output/h3d/h3d_results/h3d_solid_scalar.F
25!||--- called by ------------------------------------------------------
26!|| genh3d ../engine/source/output/h3d/h3d_results/genh3d.F
27!||--- calls -----------------------------------------------------
28!|| h3d_solid_scalar_1 ../engine/source/output/h3d/h3d_results/h3d_solid_scalar_1.F
29!|| schlieren_buffer_gathering ../engine/source/output/anim/generate/schlieren_buffer_gathering.F
30!||--- uses -----------------------------------------------------
31!|| ale_connectivity_mod ../common_source/modules/ale/ale_connectivity_mod.F
32!|| aleanim_mod ../engine/share/modules/aleanim_mod.F
33!|| elbufdef_mod ../common_source/modules/mat_elem/elbufdef_mod.F90
34!|| h3d_mod ../engine/share/modules/h3d_mod.F
35!|| initbuf_mod ../engine/share/resol/initbuf.F
36!|| matparam_def_mod ../common_source/modules/mat_elem/matparam_def_mod.F90
37!|| multi_fvm_mod ../common_source/modules/ale/multi_fvm_mod.F90
38!|| names_and_titles_mod ../common_source/modules/names_and_titles_mod.F
39!|| schlieren_mod ../engine/share/modules/schlieren_mod.F
40!||====================================================================
41 SUBROUTINE h3d_solid_scalar(
42 . ELBUF_TAB ,SOLID_SCALAR ,IPARG ,
43 . IXS ,PM ,BUFMAT ,
44 . EHOUR ,
45 . IPM ,
46 . X ,V ,W ,ALE_CONNECT,
47 . NERCVOIS,NESDVOIS, LERCVOIS,LESDVOIS,
48 . ID_ELEM ,ITY_ELEM ,IPARTS ,LAYER_INPUT ,
49 . IR_INPUT ,IS_INPUT ,IT_INPUT ,IUVAR_INPUT ,H3D_PART ,
50 . IS_WRITTEN_SOLID,INFO1 ,KEYWORD ,ITHERM ,FANI_CELL ,
51 . MULTI_FVM , IDMDS ,IMDSVAR ,
52 . ID ,MAT_PARAM ,MODE )
53C-----------------------------------------------
54C M o d u l e s
55C-----------------------------------------------
56 USE initbuf_mod
57 USE elbufdef_mod
59 USE h3d_mod
60 USE multi_fvm_mod
62 USE aleanim_mod , ONLY : fani_cell_
64 USE matparam_def_mod
65C-----------------------------------------------
66C I m p l i c i t T y p e s
67C-----------------------------------------------
68#include "implicit_f.inc"
69C-----------------------------------------------
70C C o m m o n B l o c k s
71C-----------------------------------------------
72#include "mvsiz_p.inc"
73#include "com01_c.inc"
74#include "com04_c.inc"
75#include "param_c.inc"
76C-----------------------------------------------
77C D u m m y A r g u m e n t s
78C-----------------------------------------------
80 . solid_scalar(*),x(3,*),v(3,*),w(3,*),ehour(*),
81 . pm(npropm,*)
82 my_real, INTENT(IN),TARGET :: bufmat(*)
83 INTEGER, INTENT(IN) :: ITHERM
84 INTEGER IPARG(NPARG,*),IXS(NIXS,*),
85 . IPM(NPROPMI,*),
86 . ID_ELEM(*),ITY_ELEM(*),IPARTS(*),ID,
87 . H3D_PART(*),IS_WRITTEN_SOLID(*),INFO1,LAYER_INPUT,IR_INPUT,IS_INPUT,IT_INPUT,
88 . IUVAR_INPUT,IDMDS,IMDSVAR,NERCVOIS(*),NESDVOIS(*),
89 . LERCVOIS(*),LESDVOIS(*)
90 TYPE (ELBUF_STRUCT_), DIMENSION(NGROUP), TARGET :: ELBUF_TAB
91 CHARACTER(LEN=NCHARLINE100) :: KEYWORD
92 TYPE(FANI_CELL_),INTENT(IN) :: FANI_CELL
93 TYPE(multi_fvm_struct), INTENT(IN) :: MULTI_FVM
94 TYPE(t_ale_connectivity), INTENT(IN) :: ALE_CONNECT
95 TYPE (MATPARAM_STRUCT_) ,DIMENSION(NUMMAT) ,INTENT(IN) :: MAT_PARAM
96 INTEGER ,INTENT(IN) :: MODE
97C-----------------------------------------------
98C L o c a l V a r i a b l e s
99C-----------------------------------------------
100 INTEGER I,NG
101C-----------------------------------------------
102 DO i=1,numels
103 is_written_solid(i) = 0
104 ENDDO
105C
106 !-------------------------------------------------------!
107 ! INITIALIZATION IF SCHLIEREN DEFINED !
108 !-------------------------------------------------------!
109 IF(keyword == 'SCHLIEREN')THEN
110 CALL schlieren_buffer_gathering(nercvois ,nesdvois ,lercvois ,lesdvois, iparg, elbuf_tab, multi_fvm,itherm)
111 ENDIF
112c
113 DO 900 ng=1,ngroup
114
115 CALL h3d_solid_scalar_1(.false.,
116 . elbuf_tab ,solid_scalar ,iparg ,
117 . ixs ,pm ,bufmat ,
118 . ehour ,
119 . ipm ,
120 . x ,v ,w ,ale_connect,
121 . id_elem ,ity_elem ,iparts ,layer_input ,
122 . ir_input ,is_input ,it_input ,iuvar_input ,h3d_part ,
123 . is_written_solid,info1 ,keyword ,fani_cell ,
124 . multi_fvm , ng ,idmds ,imdsvar ,
125 . id ,mat_param ,mode )
126
127
128 900 CONTINUE ! NG
129C-----------------------------------------------
130 RETURN
131 END
#define my_real
Definition cppsort.cpp:32
subroutine h3d_solid_scalar(elbuf_tab, solid_scalar, iparg, ixs, pm, bufmat, ehour, ipm, x, v, w, ale_connect, nercvois, nesdvois, lercvois, lesdvois, id_elem, ity_elem, iparts, layer_input, ir_input, is_input, it_input, iuvar_input, h3d_part, is_written_solid, info1, keyword, itherm, fani_cell, multi_fvm, idmds, imdsvar, id, mat_param, mode)
subroutine h3d_solid_scalar_1(called_from_python, elbuf_tab, solid_scalar, iparg, ixs, pm, bufmat, ehour, ipm, x, v, w, ale_connect, id_elem, ity_elem, iparts, layer_input, ir_input, is_input, it_input, iuvar_input, h3d_part, is_written_solid, info1, keyword, fani_cell, multi_fvm, ng, idmds, imdsvar, id, mat_param, mode)
integer, parameter ncharline100
subroutine schlieren_buffer_gathering(nercvois, nesdvois, lercvois, lesdvois, iparg, elbuf_tab, multi_fvm, itherm)