63 TYPE(t_region
) :: region
68 INTEGER :: ipatch,
i,
j,
k, ijkc, ijkd, ijkn, n1, n2, ng1, ng2
71 INTEGER :: ilev, bctype, lbnd, icoff, ijcoff, inoff, ijnoff, ijkn1
73 INTEGER ::
inode,
jnode, knode, i2d, distrib, indmol, noff
75 REAL(RFREAL) :: sgn, ds, mrate, tburn, rgas, sxn, syn, szn, &
77 REAL(RFREAL),
POINTER :: cv(:,:), dv(:,:), gv(:,:), xyz(:,:), &
85 global => region%global
88 'RFLO_SendBoundaryValues.F90' )
92 ilev = region%currLevel
99 indmol = region%levels(ilev)%mixt%indMol
101 cv => region%levels(ilev)%mixt%cv
102 dv => region%levels(ilev)%mixt%dv
103 gv => region%levels(ilev)%mixt%gv
104 xyz => region%levels(ilev)%grid%xyz
108 DO ipatch=1,region%nPatches
110 patch => region%levels(ilev)%patches(ipatch)
111 bctype =
patch%bcType
113 distrib =
patch%mixt%distrib
115 vals =>
patch%mixt%vals
117 IF (
patch%bcCoupled == bc_external .OR. &
118 (
patch%bcCoupled == bc_internal .AND. &
119 bctype == bc_injection_apn))
THEN
131 IF (lbnd==2 .OR. lbnd==4 .OR. lbnd==6)
THEN
140 IF (lbnd==1 .OR. lbnd==2) sface => region%levels(ilev)%grid%si
141 IF (lbnd==3 .OR. lbnd==4) sface => region%levels(ilev)%grid%sj
142 IF (lbnd==5 .OR. lbnd==6) sface => region%levels(ilev)%grid%sk
149 ijkc = indijk(
i ,
j ,
k ,icoff,ijcoff)
152 ds =
sqrt(sface(xcoord,ijkn)*sface(xcoord,ijkn)+ &
153 sface(ycoord,ijkn)*sface(ycoord,ijkn)+ &
154 sface(zcoord,ijkn)*sface(zcoord,ijkn))
155 sxn = sgn*sface(xcoord,ijkn)/ds
156 syn = sgn*sface(ycoord,ijkn)/ds
157 szn = sgn*sface(zcoord,ijkn)/ds
159 IF (lbnd==1 .OR. lbnd==2)
THEN
169 ELSE IF (lbnd==3 .OR. lbnd==4)
THEN
179 ELSE IF (lbnd==5 .OR. lbnd==6)
THEN
190 IF (bctype>=bc_injection .AND. bctype<=bc_injection+bc_range)
THEN
191 i2d = distrib * indij(n1,n2,noff)
192 mrate = vals(bcdat_inject_mfrate,i2d)
193 tburn = vals(bcdat_inject_temp ,i2d)
196 edgevector(1) = xyz(xcoord,ijkn1) - xyz(xcoord,ijkn)
197 edgevector(2) = xyz(ycoord,ijkn1) - xyz(ycoord,ijkn)
198 edgevector(3) = xyz(zcoord,ijkn1) - xyz(zcoord,ijkn)
199 deltn = 0.5*abs(sxn*edgevector(1)+syn*edgevector(2)+szn*edgevector(3))
201 IF (bctype==bc_injection_apn)
THEN
202 patch%mdotAlp( ng1,ng2) = mrate
203 patch%tflmAlp( ng1,ng2) = vals(bcdat_inject_temp ,i2d)
204 patch%rhofvfAlp(1,ng1,ng2) = vals(bcdat_inject_rfvfu ,i2d)
205 patch%rhofvfAlp(2,ng1,ng2) = vals(bcdat_inject_rfvfv ,i2d)
206 patch%rhofvfAlp(3,ng1,ng2) = vals(bcdat_inject_rfvfw ,i2d)
210 IF (mrate > 0._rfreal)
THEN
211 patch%bFlag(ng1,ng2) = 1
213 patch%bFlag(ng1,ng2) = 0
217 IF (
patch%bFlag(ng1,ng2) == 1)
THEN
219 patch%pf (ng1,ng2) = dv(dv_mixt_pres,ijkc)
222 patch%tempf (ng1,ng2) = tburn
224 patch%pf (ng1,ng2) = 0.5_rfreal*(dv(dv_mixt_pres,ijkc)+ &
225 dv(dv_mixt_pres,ijkd))
226 patch%rhofAlp(ng1,ng2) = 0.5_rfreal*(cv(cv_mixt_dens,ijkc)+ &
227 cv(cv_mixt_dens,ijkd))
228 patch%tempf (ng1,ng2) = 0.5_rfreal*(dv(dv_mixt_temp,ijkc)+ &
229 dv(dv_mixt_temp,ijkd))
231 patch%tempv (ng1,ng2) = dv(dv_mixt_temp,ijkc)
232 IF (bctype==bc_injection_ht)
THEN
233 patch%dnml (ng1,ng2) = -deltn
235 patch%dnml (ng1,ng2) = deltn
239 patch%bFlag(ng1,ng2) = 0
241 patch%pf (ng1,ng2) = 0.5_rfreal*(dv(dv_mixt_pres,ijkc)+ &
242 dv(dv_mixt_pres,ijkd))
243 patch%rhofAlp(ng1,ng2) = 0.5_rfreal*(cv(cv_mixt_dens,ijkc)+ &
244 cv(cv_mixt_dens,ijkd))
245 patch%tempf (ng1,ng2) = 0.5_rfreal*(dv(dv_mixt_temp,ijkc)+ &
246 dv(dv_mixt_temp,ijkd))
248 patch%qc ( ng1,ng2) = 0._rfreal
249 patch%nfAlp(1,ng1,ng2) = sgn*sface(xcoord,ijkn)/ds
250 patch%nfAlp(2,ng1,ng2) = sgn*sface(ycoord,ijkn)/ds
251 patch%nfAlp(3,ng1,ng2) = sgn*sface(zcoord,ijkn)/ds
261 IF (
patch%bcMotion == bc_external)
THEN
271 ijkn = indijk(
i,
j,
k,inoff,ijnoff)
272 IF (lbnd==1 .OR. lbnd==2)
THEN
279 ELSE IF (lbnd==3 .OR. lbnd==4)
THEN
286 ELSE IF (lbnd==5 .OR. lbnd==6)
THEN
294 patch%surfCoord(1,ng1,ng2) = xyz(xcoord,ijkn)
295 patch%surfCoord(2,ng1,ng2) = xyz(ycoord,ijkn)
296 patch%surfCoord(3,ng1,ng2) = xyz(zcoord,ijkn)
**********************************************************************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 ibeg
subroutine rflo_getpatchdirection(patch, idir, jdir, kdir)
real(rfreal) function mixtperf_r_m(M)
**********************************************************************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 inode
subroutine initialize(G_b, MAN_INIT, inSurf, inInt, INIT_0D, INIT_1D, IN_obt_attr)
subroutine registerfunction(global, funName, fileName)
subroutine rflo_getpatchindices(region, patch, iLev, ibeg, iend, jbeg, jend, kbeg, kend)
real(rfreal) function mixtperf_d_prt(P, R, T)
subroutine plag_setsizegenx(region)
subroutine rflo_getnodeoffset(region, iLev, iNodeOffset, ijNodeOffset)
**********************************************************************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 jdir
**********************************************************************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 knode iend
subroutine rflo_getpatchindicesnodes(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 idir
subroutine rflo_getcelloffset(region, iLev, iCellOffset, ijCellOffset)
subroutine rflo_sendboundaryvalues(region, initialize)
**********************************************************************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 knode jend
**********************************************************************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 kdir
**********************************************************************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 knode jbeg
**********************************************************************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 knode kbeg
subroutine deregisterfunction(global)
**********************************************************************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 jnode