OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
nbsph.F File Reference
#include "implicit_f.inc"
#include "com01_c.inc"
#include "sphcom.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine nbsph (lsubmodel)

Function/Subroutine Documentation

◆ nbsph()

subroutine nbsph ( type(submodel_data), dimension(*) lsubmodel)

Definition at line 38 of file nbsph.F.

39C-----------------------------------------------
40C M o d u l e s
41C-----------------------------------------------
43 USE submodel_mod
45 USE message_mod
46C----------------------------------------------------------
47C Format par BLOCS.
48C-----------------------------------------------
49C I m p l i c i t T y p e s
50C-----------------------------------------------
51#include "implicit_f.inc"
52C-----------------------------------------------
53C C o m m o n B l o c k s
54C-----------------------------------------------
55#include "com01_c.inc"
56#include "sphcom.inc"
57C-----------------------------------------------
58C D u m m y A r g u m e n t s
59C-----------------------------------------------
60 TYPE(SUBMODEL_DATA) LSUBMODEL(*)
61C-----------------------------------------------
62C L o c a l V a r i a b l e s
63C-----------------------------------------------
64 INTEGER :: N,ID,KRESERV
65 CHARACTER :: MESS*40
66 LOGICAL :: IS_AVAILABLE
67C-----------------------------------------------
68C E x t e r n a l F u n c t i o n s
69C-----------------------------------------------
70 DATA mess /'SPH OPTIONS DEFINITION '/
71C-----------------------------------------------
72 nsphio =0
73 nsphres=0
74C
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
82C
83 CALL hm_option_count('/SPH/INOUT',nsphio)
84c
85c NSPHRES (number of SPH reserve for inlet) for each proc
86c 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
96C-------------------------------------
97 RETURN
98C-------------------------------------
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
subroutine hm_option_count(entity_type, hm_option_number)
subroutine hm_option_start(entity_type)
#define max(a, b)
Definition macros.h:21
initmumps id
integer, parameter ncharkey
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