OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
nodalssp.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!|| nodalssp ../engine/source/output/anim/generate/nodalssp.F
25!||--- called by ------------------------------------------------------
26!|| genani ../engine/source/output/anim/generate/genani.F
27!|| h3d_nodal_scalar ../engine/source/output/h3d/h3d_results/h3d_nodal_scalar.F
28!||--- calls -----------------------------------------------------
29!|| anim_nodal_contour_fvmbags ../engine/source/output/anim/generate/anim_nodal_contour_fvmbags.F
30!|| anim_nodal_ssp_elems ../engine/source/output/anim/generate/anim_nodal_ssp_elems.F90
31!||--- uses -----------------------------------------------------
32!|| anim_nodal_ssp_elems_mod ../engine/source/output/anim/generate/anim_nodal_ssp_elems.F90
33!|| elbufdef_mod ../common_source/modules/mat_elem/elbufdef_mod.F90
34!|| fvbag_mod ../engine/share/modules/fvbag_mod.F
35!|| groupdef_mod ../common_source/modules/groupdef_mod.F
36!|| initbuf_mod ../engine/share/resol/initbuf.F
37!|| multi_fvm_mod ../common_source/modules/ale/multi_fvm_mod.F90
38!||====================================================================
39 SUBROUTINE nodalssp(IFUNC , WA4 , WA4_FVM, IFLOW , RFLOW,
40 . IPARG , ELBUF_TAB , IX , NIX , NUMEL,
41 . ITAB , NV46 , MONVOL , VOLMON , AIRBAGS_TOTAL_FVM_IN_H3D,
42 . IS_WRITTEN_NODE,IS_WRITTEN_NODE_FVM , ISPMD , FVDATA_P,
43 . SWA4 , AIRBAGS_NODE_ID_SHIFT, MULTI_FVM)
44C-----------------------------------------------
45C D e s c r i p t i o n
46C-----------------------------------------------
47C This subroutine defines & writes nodal sound speed requested by Engine keyword /H3D/NODA/SSP
48C application : /MONVOL/FVMBAG* (sound speed from polyhedra, specific buffer).
49C-----------------------------------------------
50C P r e - C o n d i t i o n s
51C-----------------------------------------------
52C none
53C-----------------------------------------------
54C M o d u l e s
55C-----------------------------------------------
56 USE initbuf_mod
57 USE elbufdef_mod
58 USE fvbag_mod , only:fvbag_data,nfvbag
59 USE groupdef_mod , only:group_
60 USE multi_fvm_mod , ONLY : multi_fvm_struct
61 use anim_nodal_ssp_elems_mod
62C-----------------------------------------------
63C I m p l i c i t T y p e s
64C-----------------------------------------------
65#include "implicit_f.inc"
66C-----------------------------------------------
67C C o m m o n B l o c k s
68C-----------------------------------------------
69#include "com01_c.inc"
70#include "com04_c.inc"
71#include "vect01_c.inc"
72#include "param_c.inc"
73#include "tabsiz_c.inc"
74C-----------------------------------------------
75C D u m m y A r g u m e n t s
76C-----------------------------------------------
77 INTEGER,INTENT(IN) :: NUMEL, IFUNC, NIX, NV46,ITAB(NUMNOD), ISPMD, SWA4, AIRBAGS_NODE_ID_SHIFT
78 INTEGER,INTENT(IN) :: IFLOW(*),IPARG(NPARG,NGROUP),IX(NIX,NUMEL)
79 my_real,INTENT(IN) :: RFLOW(*)
80 INTEGER, INTENT(IN) :: AIRBAGS_TOTAL_FVM_IN_H3D
81 REAL,INTENT(INOUT) :: WA4(SWA4), WA4_FVM(AIRBAGS_TOTAL_FVM_IN_H3D)
82 TYPE (ELBUF_STRUCT_), INTENT(IN), DIMENSION(NGROUP) :: ELBUF_TAB
83 INTEGER,INTENT(IN) :: MONVOL(SMONVOL)
84 my_real,INTENT(IN) :: volmon(svolmon)
85 INTEGER,INTENT(INOUT) :: IS_WRITTEN_NODE_FVM(AIRBAGS_TOTAL_FVM_IN_H3D),IS_WRITTEN_NODE(NUMNOD)
86 TYPE(fvbag_data),INTENT(IN) :: FVDATA_P (NFVBAG)
87 TYPE (MULTI_FVM_STRUCT), INTENT(IN) :: MULTI_FVM
88C-----------------------------------------------
89C L o c a l V a r i a b l e s
90C-----------------------------------------------
91 INTEGER IADI, IADR, I, ITYP, NINOUT, NNO, NEL, NELv,II1, II2,
92 . IR1, IR2, J, JJ, NNO_L, NNI_L, II3, II4, JJJ, NNI,
93 . IALEL,NNOD,IPOS,IV,NGv,IDLOCv,J1,J2,IBV
94 INTEGER MLW, NG, KCVT, II(6), NBF, NBL, IB, ICELL, NIN, MCELL
95 TYPE(g_bufel_) ,POINTER :: GBUF,GBUFv
96 my_real, ALLOCATABLE, DIMENSION(:) :: COUNT_VOL
97 my_real SSP,V
98 INTEGER,DIMENSION(:,:), POINTER :: pAdjBRICK
99C-----------------------------------------------
100C S o u r c e L i n e s
101C-----------------------------------------------
102
103C------------------------------------------------------------------
104C DEFAULT - ALL ELEMS (HEXA,PENTA, SHELL, QUAD, ..)
105C expand elem pressure to elem nodes
106C------------------------------------------------------------------
107 CALL anim_nodal_ssp_elems(wa4,swa4,iparg,elbuf_tab,ix,nix,numel,is_written_node,
108 . multi_fvm, nparg, ngroup, numnod)
109
110C------------------------------------------------------------------
111C /MONVOL/FVMBAG*
112C set pressure from polyhedra centroids (H3D only)
113C------------------------------------------------------------------
114 IF(nfvbag > 0 .AND. ispmd == 0 .AND. airbags_total_fvm_in_h3d > 0)THEN
115 CALL anim_nodal_contour_fvmbags('SSP ', wa4_fvm, monvol , volmon , fvdata_p ,
116 . nfvbag, smonvol, svolmon, airbags_total_fvm_in_h3d, is_written_node_fvm,
117 . airbags_node_id_shift)
118
119 ENDIF
120
121
122
123C-----------------------------------------------
124 RETURN
125 END
subroutine anim_nodal_contour_fvmbags(key, wa4, monvol, volmon, fvdata_p, nfvbag, smonvol, svolmon, airbags_total_fvm, is_written_node_fvm, airbags_node_id_shift)
integer nfvbag
Definition fvbag_mod.F:127
subroutine nodalssp(ifunc, wa4, wa4_fvm, iflow, rflow, iparg, elbuf_tab, ix, nix, numel, itab, nv46, monvol, volmon, airbags_total_fvm_in_h3d, is_written_node, is_written_node_fvm, ispmd, fvdata_p, swa4, airbags_node_id_shift, multi_fvm)
Definition nodalssp.F:44