61 TYPE(t_region
),
POINTER :: regions(:)
64 INTEGER :: ireg, ipatch, ipt
67 INTEGER,
PARAMETER :: nkeys_max = 20
68 INTEGER,
PARAMETER :: npeul_keys = 10
70 CHARACTER(CHRLEN) :: rcsidentstring
71 CHARACTER(10) :: keys(nkeys_max)
72 CHARACTER(256) :: fname
75 INTEGER :: n1, n2, ioff, ijbeg, ijend, errorflag
76 INTEGER :: ikeyfrac,ikeyfrac0
78 LOGICAL :: defined(nkeys_max), alldef
80 REAL(RFREAL) :: vals(nkeys_max)
88 '$RCSfile: PEUL_ReadBcInjectSection.F90,v $ $Revision: 1.4 $'
90 global => regions(1)%global
93 'PEUL_ReadBcInjectSection.F90' )
102 keys(ikeyfrac) =
'FRAC_'
105 nkeys = ikeyfrac0 + npeul_keys
107 IF (nkeys > nkeys_max) CALL
errorstop( global,err_exceeds_decl_mem,__line__ )
118 IF (regions(ireg)%peulInput%nPtypes > npeul_keys) &
119 CALL
errorstop( global,err_exceeds_decl_mem,__line__ )
123 patch => regions(ireg)%levels(1)%patches(ipatch)
125 IF ((
patch%bcType>=bc_injection .AND. &
126 patch%bcType<=bc_injection+bc_range) .AND. &
127 regions(ireg)%procid==global%myProcid .AND. &
128 regions(ireg)%active==active)
THEN
130 IF (
patch%peul%bcSet) &
131 CALL
errorstop( global,err_patch_overspec,__line__, &
132 'PEUL Injection boundary.' )
140 patch%peul%distrib = distrib
143 IF (
patch%peul%distrib == bcdat_constant )
THEN
144 IF (.NOT. defined(ikeyfrac))
THEN
146 DO ipt = 1, regions(ireg)%peulInput%nPtypes
147 alldef = alldef .AND. defined(ikeyfrac0+ipt)
149 IF (.NOT. alldef) CALL
errorstop(global,err_bcval_missing,__line__)
152 CALL
errorstop( global,err_peul_distrib,__line__ )
157 DO ipt = 1, npeul_keys
158 IF (defined(ikeyfrac0+ipt))
THEN
159 IF (ipt > regions(ireg)%peulInput%nPtypes)
THEN
160 CALL
errorstop(global,err_peul_bcval_extra,__line__)
166 patch%peul%bcSet = .true.
179 patch => regions(ireg)%levels(1)%patches(ipatch)
181 IF ((
patch%bcType>=bc_injection .AND. &
182 patch%bcType<=bc_injection+bc_range) .AND. &
183 regions(ireg)%procid==global%myProcid .AND. &
184 regions(ireg)%active==active)
THEN
186 patch%peul%nData = regions(ireg)%peulInput%nPtypes
190 IF (
patch%peul%distrib == bcdat_distrib)
THEN
194 ijbeg = indij( 0, 0,ioff)
195 ijend = indij(n1,n2,ioff)
201 nullify(
patch%peul%vals)
202 IF (
patch%peul%nData > 0)
THEN
203 ALLOCATE(
patch%peul%vals(
patch%peul%nData,ijbeg:ijend), &
205 global%error = errorflag
206 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
211 IF (
patch%peul%distrib==bcdat_distrib .AND. &
212 patch%bcCoupled /=bc_external )
THEN
214 CALL
errorstop( global,err_peul_distrib,__line__ )
220 IF (
ASSOCIATED(
patch%peul%vals))
THEN
221 IF (defined(ikeyfrac))
patch%peul%vals(:,:) = vals(ikeyfrac)
222 DO ipt = 1,
patch%peul%nData
223 IF (defined(ikeyfrac0+ipt))
patch%peul%vals(ipt,:) = &
subroutine makenumberedkeys(keys, indBegin, string, numBegin, numEnd, numSkip)
subroutine registerfunction(global, funName, fileName)
subroutine rflo_getpatchindices(region, patch, iLev, ibeg, iend, jbeg, jend, kbeg, kend)
**********************************************************************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
subroutine peul_readbcinjectsection(regions)
**********************************************************************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 errorstop(global, errorCode, errorLine, addMessage)
subroutine deregisterfunction(global)