56 TYPE(t_region
) :: region
59 INTEGER ::
i,
j,
k, ipatch
63 INTEGER :: ilev, icoff, ijcoff, inoff, ijnoff, ijkc0, ijkc1, ijkn, indsvel
65 REAL(RFREAL) :: rhoa, rhoua, rhova, rhowa, rhoea, pa, vcont, fc(5)
66 REAL(RFREAL),
POINTER :: cv(:,:), dv(:,:),
rhs(:,:), si(:,:), sj(:,:), sk(:,:)
67 REAL(RFREAL),
POINTER :: aci(:,:), acj(:,:), ack(:,:)
68 REAL(RFREAL),
POINTER :: sivel(:), sjvel(:), skvel(:)
73 'RFLO_CentralFlux.F90' )
77 ilev = region%currLevel
84 cv => region%levels(ilev)%mixt%cv
85 dv => region%levels(ilev)%mixt%dv
86 rhs => region%levels(ilev)%mixt%rhs
87 aci => region%levels(ilev)%grid%c2fCoI
88 acj => region%levels(ilev)%grid%c2fCoJ
89 ack => region%levels(ilev)%grid%c2fCoK
90 si => region%levels(ilev)%grid%si
91 sj => region%levels(ilev)%grid%sj
92 sk => region%levels(ilev)%grid%sk
93 sivel => region%levels(ilev)%grid%siVel
94 sjvel => region%levels(ilev)%grid%sjVel
95 skvel => region%levels(ilev)%grid%skVel
96 indsvel = region%levels(ilev)%grid%indSvel
103 ijkc0 = indijk(
i ,
j,
k,icoff,ijcoff)
104 ijkc1 = indijk(
i-1,
j,
k,icoff,ijcoff)
105 ijkn = indijk(
i ,
j,
k,inoff,ijnoff)
107 rhoa = aci(2,ijkn)*cv(cv_mixt_dens,ijkc0)+ &
108 aci(1,ijkn)*cv(cv_mixt_dens,ijkc1)
109 rhoua = aci(2,ijkn)*cv(cv_mixt_xmom,ijkc0)+ &
110 aci(1,ijkn)*cv(cv_mixt_xmom,ijkc1)
111 rhova = aci(2,ijkn)*cv(cv_mixt_ymom,ijkc0)+ &
112 aci(1,ijkn)*cv(cv_mixt_ymom,ijkc1)
113 rhowa = aci(2,ijkn)*cv(cv_mixt_zmom,ijkc0)+ &
114 aci(1,ijkn)*cv(cv_mixt_zmom,ijkc1)
115 rhoea = aci(2,ijkn)*cv(cv_mixt_ener,ijkc0)+ &
116 aci(1,ijkn)*cv(cv_mixt_ener,ijkc1)
117 pa = aci(2,ijkn)*dv(dv_mixt_pres,ijkc0)+ &
118 aci(1,ijkn)*dv(dv_mixt_pres,ijkc1)
119 vcont = (rhoua*si(xcoord,ijkn)+rhova*si(ycoord,ijkn)+&
120 rhowa*si(zcoord,ijkn))/rhoa - sivel(ijkn*indsvel)
123 fc(2) = vcont*rhoua + pa*si(xcoord,ijkn)
124 fc(3) = vcont*rhova + pa*si(ycoord,ijkn)
125 fc(4) = vcont*rhowa + pa*si(zcoord,ijkn)
126 fc(5) = vcont*(rhoea+pa) + sivel(ijkn*indsvel)*pa
128 rhs(cv_mixt_dens,ijkc0) =
rhs(cv_mixt_dens,ijkc0) + fc(1)
129 rhs(cv_mixt_xmom,ijkc0) =
rhs(cv_mixt_xmom,ijkc0) + fc(2)
130 rhs(cv_mixt_ymom,ijkc0) =
rhs(cv_mixt_ymom,ijkc0) + fc(3)
131 rhs(cv_mixt_zmom,ijkc0) =
rhs(cv_mixt_zmom,ijkc0) + fc(4)
132 rhs(cv_mixt_ener,ijkc0) =
rhs(cv_mixt_ener,ijkc0) + fc(5)
134 rhs(cv_mixt_dens,ijkc1) =
rhs(cv_mixt_dens,ijkc1) - fc(1)
135 rhs(cv_mixt_xmom,ijkc1) =
rhs(cv_mixt_xmom,ijkc1) - fc(2)
136 rhs(cv_mixt_ymom,ijkc1) =
rhs(cv_mixt_ymom,ijkc1) - fc(3)
137 rhs(cv_mixt_zmom,ijkc1) =
rhs(cv_mixt_zmom,ijkc1) - fc(4)
138 rhs(cv_mixt_ener,ijkc1) =
rhs(cv_mixt_ener,ijkc1) - fc(5)
148 ijkc0 = indijk(
i,
j ,
k,icoff,ijcoff)
149 ijkc1 = indijk(
i,
j-1,
k,icoff,ijcoff)
150 ijkn = indijk(
i,
j ,
k,inoff,ijnoff)
152 rhoa = acj(2,ijkn)*cv(cv_mixt_dens,ijkc0)+ &
153 acj(1,ijkn)*cv(cv_mixt_dens,ijkc1)
154 rhoua = acj(2,ijkn)*cv(cv_mixt_xmom,ijkc0)+ &
155 acj(1,ijkn)*cv(cv_mixt_xmom,ijkc1)
156 rhova = acj(2,ijkn)*cv(cv_mixt_ymom,ijkc0)+ &
157 acj(1,ijkn)*cv(cv_mixt_ymom,ijkc1)
158 rhowa = acj(2,ijkn)*cv(cv_mixt_zmom,ijkc0)+ &
159 acj(1,ijkn)*cv(cv_mixt_zmom,ijkc1)
160 rhoea = acj(2,ijkn)*cv(cv_mixt_ener,ijkc0)+ &
161 acj(1,ijkn)*cv(cv_mixt_ener,ijkc1)
162 pa = acj(2,ijkn)*dv(dv_mixt_pres,ijkc0)+ &
163 acj(1,ijkn)*dv(dv_mixt_pres,ijkc1)
164 vcont = (rhoua*sj(xcoord,ijkn)+rhova*sj(ycoord,ijkn)+&
165 rhowa*sj(zcoord,ijkn))/rhoa - sjvel(ijkn*indsvel)
168 fc(2) = vcont*rhoua + pa*sj(xcoord,ijkn)
169 fc(3) = vcont*rhova + pa*sj(ycoord,ijkn)
170 fc(4) = vcont*rhowa + pa*sj(zcoord,ijkn)
171 fc(5) = vcont*(rhoea+pa) + sjvel(ijkn*indsvel)*pa
173 rhs(cv_mixt_dens,ijkc0) =
rhs(cv_mixt_dens,ijkc0) + fc(1)
174 rhs(cv_mixt_xmom,ijkc0) =
rhs(cv_mixt_xmom,ijkc0) + fc(2)
175 rhs(cv_mixt_ymom,ijkc0) =
rhs(cv_mixt_ymom,ijkc0) + fc(3)
176 rhs(cv_mixt_zmom,ijkc0) =
rhs(cv_mixt_zmom,ijkc0) + fc(4)
177 rhs(cv_mixt_ener,ijkc0) =
rhs(cv_mixt_ener,ijkc0) + fc(5)
179 rhs(cv_mixt_dens,ijkc1) =
rhs(cv_mixt_dens,ijkc1) - fc(1)
180 rhs(cv_mixt_xmom,ijkc1) =
rhs(cv_mixt_xmom,ijkc1) - fc(2)
181 rhs(cv_mixt_ymom,ijkc1) =
rhs(cv_mixt_ymom,ijkc1) - fc(3)
182 rhs(cv_mixt_zmom,ijkc1) =
rhs(cv_mixt_zmom,ijkc1) - fc(4)
183 rhs(cv_mixt_ener,ijkc1) =
rhs(cv_mixt_ener,ijkc1) - fc(5)
193 ijkc0 = indijk(
i,
j,
k ,icoff,ijcoff)
194 ijkc1 = indijk(
i,
j,
k-1,icoff,ijcoff)
195 ijkn = indijk(
i,
j,
k ,inoff,ijnoff)
197 rhoa = ack(2,ijkn)*cv(cv_mixt_dens,ijkc0)+ &
198 ack(1,ijkn)*cv(cv_mixt_dens,ijkc1)
199 rhoua = ack(2,ijkn)*cv(cv_mixt_xmom,ijkc0)+ &
200 ack(1,ijkn)*cv(cv_mixt_xmom,ijkc1)
201 rhova = ack(2,ijkn)*cv(cv_mixt_ymom,ijkc0)+ &
202 ack(1,ijkn)*cv(cv_mixt_ymom,ijkc1)
203 rhowa = ack(2,ijkn)*cv(cv_mixt_zmom,ijkc0)+ &
204 ack(1,ijkn)*cv(cv_mixt_zmom,ijkc1)
205 rhoea = ack(2,ijkn)*cv(cv_mixt_ener,ijkc0)+ &
206 ack(1,ijkn)*cv(cv_mixt_ener,ijkc1)
207 pa = ack(2,ijkn)*dv(dv_mixt_pres,ijkc0)+ &
208 ack(1,ijkn)*dv(dv_mixt_pres,ijkc1)
209 vcont = (rhoua*sk(xcoord,ijkn)+rhova*sk(ycoord,ijkn)+&
210 rhowa*sk(zcoord,ijkn))/rhoa - skvel(ijkn*indsvel)
213 fc(2) = vcont*rhoua + pa*sk(xcoord,ijkn)
214 fc(3) = vcont*rhova + pa*sk(ycoord,ijkn)
215 fc(4) = vcont*rhowa + pa*sk(zcoord,ijkn)
216 fc(5) = vcont*(rhoea+pa) + skvel(ijkn*indsvel)*pa
218 rhs(cv_mixt_dens,ijkc0) =
rhs(cv_mixt_dens,ijkc0) + fc(1)
219 rhs(cv_mixt_xmom,ijkc0) =
rhs(cv_mixt_xmom,ijkc0) + fc(2)
220 rhs(cv_mixt_ymom,ijkc0) =
rhs(cv_mixt_ymom,ijkc0) + fc(3)
221 rhs(cv_mixt_zmom,ijkc0) =
rhs(cv_mixt_zmom,ijkc0) + fc(4)
222 rhs(cv_mixt_ener,ijkc0) =
rhs(cv_mixt_ener,ijkc0) + fc(5)
224 rhs(cv_mixt_dens,ijkc1) =
rhs(cv_mixt_dens,ijkc1) - fc(1)
225 rhs(cv_mixt_xmom,ijkc1) =
rhs(cv_mixt_xmom,ijkc1) - fc(2)
226 rhs(cv_mixt_ymom,ijkc1) =
rhs(cv_mixt_ymom,ijkc1) - fc(3)
227 rhs(cv_mixt_zmom,ijkc1) =
rhs(cv_mixt_zmom,ijkc1) - fc(4)
228 rhs(cv_mixt_ener,ijkc1) =
rhs(cv_mixt_ener,ijkc1) - fc(5)
235 DO ipatch=1,region%nPatches
**********************************************************************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 kpcbeg
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 jpcbeg
**********************************************************************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 ipcend
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 ipcbeg
subroutine rflo_getcelloffset(region, iLev, iCellOffset, ijCellOffset)
subroutine rflo_centralflux(region)
**********************************************************************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 jpcend
subroutine deregisterfunction(global)
subroutine rflo_getdimensphys(region, iLev, ipcbeg, ipcend, jpcbeg, jpcend, kpcbeg, kpcend)
subroutine rflo_centralfluxpatch(region, patch)