OpenRadioss
2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
nbsph.F
Go to the documentation of this file.
1
Copyright> OpenRadioss
2
Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3
Copyright>
4
Copyright> This program is free software: you can redistribute it and/or modify
5
Copyright> it under the terms of the GNU Affero General Public License as published by
6
Copyright> the Free Software Foundation, either version 3 of the License, or
7
Copyright> (at your option) any later version.
8
Copyright>
9
Copyright> This program is distributed in the hope that it will be useful,
10
Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11
Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
Copyright> GNU Affero General Public License for more details.
13
Copyright>
14
Copyright> You should have received a copy of the GNU Affero General Public License
15
Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16
Copyright>
17
Copyright>
18
Copyright> Commercial Alternative: Altair Radioss Software
19
Copyright>
20
Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21
Copyright> software under a commercial license. Contact Altair to discuss further if the
22
Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23
!||====================================================================
24
!|| nbsph ../starter/source/elements/sph/nbsph.F
25
!||--- called by ------------------------------------------------------
26
!|| contrl ../starter/source/starter/contrl.F
27
!||--- calls -----------------------------------------------------
28
!|| ancmsg ../starter/source/output/message/message.F
29
!|| hm_get_intv ../starter/source/devtools/hm_reader/hm_get_intv.F
30
!|| hm_option_count ../starter/source/devtools/hm_reader/hm_option_count.F
31
!|| hm_option_read_key ../starter/source/devtools/hm_reader/hm_option_read_key.F
32
!|| hm_option_start ../starter/source/devtools/hm_reader/hm_option_start.F
33
!||--- uses -----------------------------------------------------
34
!|| hm_option_read_mod ../starter/share/modules1/hm_option_read_mod.F
35
!|| message_mod ../starter/share/message_module/message_mod.F
36
!|| submodel_mod ../starter/share/modules1/submodel_mod.F
37
!||====================================================================
38
SUBROUTINE
nbsph
(LSUBMODEL)
39
C-----------------------------------------------
40
C M o d u l e s
41
C-----------------------------------------------
42
USE
hm_option_read_mod
43
USE
submodel_mod
44
USE
names_and_titles_mod
,
ONLY
:
ncharkey
45
USE
message_mod
46
C----------------------------------------------------------
47
C block format
48
C-----------------------------------------------
49
C I m p l i c i t T y p e s
50
C-----------------------------------------------
51
#include "implicit_f.inc"
52
C-----------------------------------------------
53
C C o m m o n B l o c k s
54
C-----------------------------------------------
55
#include "com01_c.inc"
56
#include "sphcom.inc"
57
C-----------------------------------------------
58
C D u m m y A r g u m e n t s
59
C-----------------------------------------------
60
TYPE
(
submodel_data
) LSUBMODEL(*)
61
C-----------------------------------------------
62
C L o c a l V a r i a b l e s
63
C-----------------------------------------------
64
INTEGER
:: N,ID,KRESERV
65
CHARACTER
:: MESS*40
66
LOGICAL
:: IS_AVAILABLE
67
C-----------------------------------------------
68
C E x t e r n a l F u n c t i o n s
69
C-----------------------------------------------
70
DATA
mess /
'SPH OPTIONS DEFINITION '
/
71
C-----------------------------------------------
72
nsphio =0
73
nsphres=0
74
C
75
CALL
hm_option_count
(
'/SPH/RESERVE'
,nbpartinlet)
76
CALL
hm_option_start
(
'/SPH/RESERVE'
)
77
DO
n=1,nbpartinlet
78
CALL
hm_option_read_key
(lsubmodel,option_id = id)
79
CALL
hm_get_intv
(
'Np'
,kreserv,is_available,lsubmodel)
80
nsphres=nsphres+kreserv
81
ENDDO
82
C
83
CALL
hm_option_count
(
'/SPH/INOUT'
,nsphio)
84
c
85
c NSPHRES (number of SPH reserve for inlet) for each proc
86
c in order to assure a sufficient number of reserve for inlet in SPMD
87
nsphres = nsphres*
max
(1,nspmd)
88
89
IF
(nbpartinlet > 0 .AND. nsphres == 0)
THEN
90
WRITE
(mess,*)
'SPH/RESERVE option is missing'
91
CALL
ancmsg
(msgid=3094,
92
. msgtype=msgerror,
93
. anmode=aninfo,
94
. i1=id)
95
ENDIF
96
C-------------------------------------
97
RETURN
98
C-------------------------------------
99
END
hm_get_intv
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
Definition
hm_get_intv.F:528
hm_option_count
subroutine hm_option_count(entity_type, hm_option_number)
Definition
hm_option_count.F:105
hm_option_start
subroutine hm_option_start(entity_type)
Definition
hm_option_start.F:253
hm_option_read_mod::hm_option_read_key
Definition
hm_option_read_mod.F:414
max
#define max(a, b)
Definition
macros.h:21
hm_option_read_mod
Definition
hm_option_read_mod.F:412
message_mod
Definition
message_mod.F:1257
names_and_titles_mod
Definition
names_and_titles_mod.F:1002
names_and_titles_mod::ncharkey
integer, parameter ncharkey
Definition
names_and_titles_mod.F:1005
submodel_mod
Definition
submodel_mod.F:717
nbsph
subroutine nbsph(lsubmodel)
Definition
nbsph.F:39
ancmsg
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)
Definition
message.F:895
submodel_mod::submodel_data
Definition
submodel_mod.F:728
starter
source
elements
sph
nbsph.F
Generated by
1.15.0