60 TYPE(t_region
),
POINTER :: regions(:)
63 INTEGER :: ireg, ipatch, ipt
66 INTEGER,
PARAMETER :: nkeys_max = 20
67 INTEGER,
PARAMETER :: npeul_keys = 10
69 CHARACTER(CHRLEN) :: rcsidentstring
70 CHARACTER(10) :: keys(nkeys_max)
71 CHARACTER(256) :: fname
74 INTEGER :: n1, n2, ioff, ijbeg, ijend, errorflag
75 INTEGER :: ikeydens,ikeydens0
77 LOGICAL :: defined(nkeys_max), alldef
79 REAL(RFREAL) :: vals(nkeys_max)
87 '$RCSfile: PEUL_ReadBcInflowSection.F90,v $ $Revision: 1.4 $'
89 global => regions(1)%global
92 'PEUL_ReadBcInflowSection.F90' )
101 keys(ikeydens) =
'DENS_'
104 nkeys = ikeydens0 + npeul_keys
106 IF (nkeys > nkeys_max) CALL
errorstop( global,err_exceeds_decl_mem,__line__ )
117 IF (regions(ireg)%peulInput%nPtypes > npeul_keys) &
118 CALL
errorstop( global,err_exceeds_decl_mem,__line__ )
122 patch => regions(ireg)%levels(1)%patches(ipatch)
124 IF ((
patch%bcType>=bc_inflow .AND. &
125 patch%bcType<=bc_inflow+bc_range) .AND. &
126 regions(ireg)%procid==global%myProcid .AND. &
127 regions(ireg)%active==active)
THEN
129 IF (
patch%peul%bcSet) &
130 CALL
errorstop( global,err_patch_overspec,__line__, &
131 'PEUL Inflow boundary.' )
139 patch%peul%distrib = distrib
142 IF (
patch%peul%distrib == bcdat_constant )
THEN
143 IF (.NOT. defined(ikeydens))
THEN
145 DO ipt = 1, regions(ireg)%peulInput%nPtypes
146 alldef = alldef .AND. defined(ikeydens0+ipt)
148 IF (.NOT. alldef) CALL
errorstop(global,err_bcval_missing,__line__)
151 CALL
errorstop( global,err_peul_distrib,__line__ )
156 DO ipt = 1, npeul_keys
157 IF (defined(ikeydens0+ipt))
THEN
158 IF (ipt > regions(ireg)%peulInput%nPtypes)
THEN
159 CALL
errorstop(global,err_peul_bcval_extra,__line__)
165 patch%peul%bcSet = .true.
177 patch => regions(ireg)%levels(1)%patches(ipatch)
179 IF ((
patch%bcType>=bc_inflow .AND. &
180 patch%bcType<=bc_inflow+bc_range) .AND. &
181 regions(ireg)%procid==global%myProcid .AND. &
182 regions(ireg)%active==active)
THEN
184 patch%peul%nData = regions(ireg)%peulInput%nPtypes
188 IF (
patch%peul%distrib == bcdat_distrib)
THEN
192 ijbeg = indij( 0, 0,ioff)
193 ijend = indij(n1,n2,ioff)
199 nullify(
patch%peul%vals)
200 IF (
patch%peul%nData > 0)
THEN
201 ALLOCATE(
patch%peul%vals(
patch%peul%nData,ijbeg:ijend), &
203 global%error = errorflag
204 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
209 IF (
patch%peul%distrib==bcdat_distrib .AND. &
210 patch%bcCoupled /=bc_external )
THEN
212 CALL
errorstop( global,err_peul_distrib,__line__ )
218 IF (
ASSOCIATED(
patch%peul%vals))
THEN
219 IF (defined(ikeydens))
patch%peul%vals(:,:) = vals(ikeydens)
220 DO ipt = 1,
patch%peul%nData
221 IF (defined(ikeydens0+ipt))
patch%peul%vals(ipt,:) = &
subroutine makenumberedkeys(keys, indBegin, string, numBegin, numEnd, numSkip)
subroutine registerfunction(global, funName, fileName)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE brbeg
subroutine readpatchsection(global, fileID, nvals, keys, vals, brbeg, brend, prbeg, prend, distrib, profType, fname, defined)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE USE ModDataTypes USE prend
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE USE ModDataTypes USE prbeg
Vector_n min(const Array_n_const &v1, const Array_n_const &v2)
subroutine peul_readbcinflowsection(regions)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine deregisterfunction(global)