OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
h3d_shell_scalar.F File Reference
#include "implicit_f.inc"
#include "com01_c.inc"
#include "com04_c.inc"
#include "param_c.inc"
#include "tabsiz_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine h3d_shell_scalar (elbuf_tab, shell_stack, iparg, geo, ixc, ixtg, pm, bufmat, ehour, ipm, igeo, thke, err_thk_sh4, err_thk_sh3, x, v, w, ale_connect, nercvois, nesdvois, lercvois, lesdvois, stack, id_elem, ity_elem, is_written_shell, ipartc, iparttg, layer_input, ipt_input, ply_input, iuvar_input, h3d_part, keyword, itherm, d, multi_fvm, idmds, imdsvar, mds_matid, id, mode, mat_param, h3d_light, max_shell_stacksize, shell_stacksize)

Function/Subroutine Documentation

◆ h3d_shell_scalar()

subroutine h3d_shell_scalar ( type (elbuf_struct_), dimension(ngroup), target elbuf_tab,
real(kind=4), dimension(max_shell_stacksize) shell_stack,
integer, dimension(nparg,ngroup) iparg,
geo,
integer, dimension(nixc,numelc) ixc,
integer, dimension(nixtg,numeltg) ixtg,
pm,
dimension(*), intent(in) bufmat,
ehour,
integer, dimension(npropmi,nummat) ipm,
integer, dimension(npropgi,numgeo) igeo,
thke,
err_thk_sh4,
err_thk_sh3,
x,
v,
w,
type(t_ale_connectivity), intent(in) ale_connect,
integer, dimension(snercvois) nercvois,
integer, dimension(snesdvois) nesdvois,
integer, dimension(slercvois) lercvois,
integer, dimension(slesdvois) lesdvois,
type (stack_ply) stack,
integer, dimension(*) id_elem,
integer, dimension(*) ity_elem,
integer, dimension(*) is_written_shell,
integer, dimension(numelc) ipartc,
integer, dimension(numeltg) iparttg,
integer layer_input,
integer ipt_input,
integer ply_input,
integer iuvar_input,
integer, dimension(*) h3d_part,
character(len=ncharline100) keyword,
integer, intent(in) itherm,
d,
type (multi_fvm_struct), intent(in) multi_fvm,
integer idmds,
integer imdsvar,
integer, dimension(*) mds_matid,
integer id,
integer, intent(in) mode,
type (matparam_struct_), dimension(nummat), intent(in) mat_param,
integer, intent(in) h3d_light,
integer, intent(in) max_shell_stacksize,
integer, intent(inout) shell_stacksize )

Definition at line 40 of file h3d_shell_scalar.F.

53C-----------------------------------------------
54C M o d u l e s
55C-----------------------------------------------
56 USE initbuf_mod
57 USE elbufdef_mod
59 USE stack_mod
60 USE multi_fvm_mod
63 USE matparam_def_mod
64C-----------------------------------------------
65C I m p l i c i t T y p e s
66C-----------------------------------------------
67#include "implicit_f.inc"
68C-----------------------------------------------
69C C o m m o n B l o c k s
70C-----------------------------------------------
71C N2D, NGROUP,
72#include "com01_c.inc"
73C NUMGEO, NUMELC, NUMELTG, NUMMAT, NUMNOD,
74#include "com04_c.inc"
75C NPARG, NPROPG, NNPROPM, NPROPMI, NPROPGI,
76#include "param_c.inc"
77C SNERCVOIS, SNESDVOIS, SLERCVOIS, SLESDVOIS
78#include "tabsiz_c.inc"
79C-----------------------------------------------
80C D u m m y A r g u m e n t s
81C-----------------------------------------------
82 INTEGER, INTENT(IN) :: MAX_SHELL_STACKSIZE
83 REAL(KIND=4),dimension(max_shell_stacksize) :: shell_stack
84 INTEGER , INTENT(INOUT) :: SHELL_STACKSIZE
86 . x(3,numnod),v(3,numnod),w(3,numnod),d(3,numnod),thke(*),ehour(*),geo(npropg,numgeo),
87 . pm(npropm,nummat),err_thk_sh4(numelc), err_thk_sh3(numeltg)
88 INTEGER, INTENT(IN) :: ITHERM
89 INTEGER IPARG(NPARG,NGROUP),IXC(NIXC,NUMELC),IXTG(NIXTG,NUMELTG),
90 . IPM(NPROPMI,NUMMAT),
91 . IGEO(NPROPGI,NUMGEO), ID_ELEM(*),ITY_ELEM(*),
92 . IS_WRITTEN_SHELL(*),IPARTC(NUMELC),IPARTTG(NUMELTG),H3D_PART(*),
93 . LAYER_INPUT ,IPT_INPUT,PLY_INPUT,IUVAR_INPUT,IDMDS,ID,
94 . MDS_MATID(*),IMDSVAR,NERCVOIS(SNERCVOIS),NESDVOIS(SNESDVOIS),LERCVOIS(SLERCVOIS),LESDVOIS(SLESDVOIS)
95 TYPE (ELBUF_STRUCT_), DIMENSION(NGROUP), TARGET :: ELBUF_TAB
96 TYPE (STACK_PLY) :: STACK
97 CHARACTER(LEN=NCHARLINE100):: KEYWORD
98 TYPE (MULTI_FVM_STRUCT), INTENT(IN) :: MULTI_FVM
99 my_real,INTENT(IN) :: bufmat(*)
100 TYPE(t_ale_connectivity), INTENT(IN) :: ALE_CONNECT
101 INTEGER ,INTENT(IN) :: MODE
102 TYPE (MATPARAM_STRUCT_) ,DIMENSION(NUMMAT) ,INTENT(IN) :: MAT_PARAM
103 INTEGER ,INTENT(IN) :: H3D_LIGHT
104C-----------------------------------------------
105C L o c a l V a r i a b l e s
106C-----------------------------------------------
107 my_real, DIMENSION(1) :: scalar_results
108 INTEGER II,NG
109C-----------------------------------------------
110C S o u r c e L i n e s
111C-----------------------------------------------
112c DO II=1,NUMELC+NUMELTG
113c IS_WRITTEN_SHELL(II) = 0
114c ENDDO
115C-----------------------------------------------
116
117 !-------------------------------------------------------!
118 ! SCHLIEREN INITIALIZATION (IF DEFINED) !
119 ! DENSITY FOR ALL TRIA ARE STORED IN WA_L !
120 !-------------------------------------------------------!
121 ! /TRIA are 2d solid elements (new entity type derived from SH3N buffer, it is currently managed from h3d_shell_* subroutines. It will change in the future.
122 IF(keyword == 'SCHLIEREN' .AND. n2d > 0)THEN
123 CALL schlieren_buffer_gathering(nercvois ,nesdvois ,lercvois ,lesdvois, iparg, elbuf_tab, multi_fvm,itherm)
124 ENDIF
125C-----------------------------------------------
126
127 !-------------------------------------------------------!
128 ! LOOP OVER ELEM GROUPS & OUTPUT DATA !
129 !-------------------------------------------------------!
130 DO ng=1,ngroup
131 CALL h3d_shell_scalar_1(.false.,
132 . elbuf_tab ,scalar_results,iparg ,geo ,
133 . ixc ,ixtg ,pm ,bufmat ,
134 . ehour ,
135 . ipm ,igeo ,thke ,err_thk_sh4 ,err_thk_sh3,
136 . x ,v ,w ,ale_connect ,
137 . stack ,id_elem ,ity_elem ,
138 . is_written_shell,ipartc,iparttg ,layer_input ,ipt_input ,
139 . ply_input ,iuvar_input,h3d_part ,keyword ,
140 . d ,ng ,multi_fvm,idmds ,imdsvar ,
141 . mds_matid ,id ,mode ,mat_param ,
142 . h3d_light ,shell_stack ,max_shell_stacksize,shell_stacksize)
143
144 ENDDO
145C-----------------------------------------------
146
147
148 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine h3d_shell_scalar_1(called_from_python, elbuf_tab, shell_scalar, iparg, geo, ixc, ixtg, pm, bufmat, ehour, ipm, igeo, thke, err_thk_sh4, err_thk_sh3, x, v, w, ale_connect, stack, id_elem, ity_elem, is_written_shell, ipartc, iparttg, layer_input, ipt_input, ply_input, iuvar_input, h3d_part, keyword, d, ng, multi_fvm, idmds, imdsvar, mds_matid, id, mode, matparam, h3d_light, shell_stack, max_shell_stacksize, shell_stacksize)
initmumps id
integer, parameter ncharline100
subroutine schlieren_buffer_gathering(nercvois, nesdvois, lercvois, lesdvois, iparg, elbuf_tab, multi_fvm, itherm)