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 Format par BLOCS.
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 an suffisant 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:523
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:251
hm_option_read_mod::hm_option_read_key
Definition
hm_option_read_mod.F:410
max
#define max(a, b)
Definition
macros.h:21
hm_option_read_mod
Definition
hm_option_read_mod.F:408
message_mod
Definition
message_mod.F:1249
names_and_titles_mod
Definition
names_and_titles_mod.F:997
names_and_titles_mod::ncharkey
integer, parameter ncharkey
Definition
names_and_titles_mod.F:1000
submodel_mod
Definition
submodel_mod.F:712
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:889
starter
program starter
Definition
starter.F:39
submodel_mod::submodel_data
Definition
submodel_mod.F:723
starter
source
elements
sph
nbsph.F
Generated by
1.15.0