Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TURB_VisFluxEddyPatch.F90
Go to the documentation of this file.
1 ! *********************************************************************
2 ! * Rocstar Simulation Suite *
3 ! * Copyright@2015, Illinois Rocstar LLC. All rights reserved. *
4 ! * *
5 ! * Illinois Rocstar LLC *
6 ! * Champaign, IL *
7 ! * www.illinoisrocstar.com *
8 ! * sales@illinoisrocstar.com *
9 ! * *
10 ! * License: See LICENSE file in top level of distribution package or *
11 ! * http://opensource.org/licenses/NCSA *
12 ! *********************************************************************
13 ! *********************************************************************
14 ! * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, *
15 ! * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES *
16 ! * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND *
17 ! * NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR *
18 ! * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER *
19 ! * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, *
20 ! * Arising FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE *
21 ! * USE OR OTHER DEALINGS WITH THE SOFTWARE. *
22 ! *********************************************************************
23 !******************************************************************************
24 !
25 ! Purpose: Compute viscous fluxes based on viscosity principle: mu*S_ij through
26 ! current patch with mu defined at cell faces
27 !
28 ! Description: this routine works in the same way as TURB_VisFluxEddy
29 ! but applied on region patches
30 !
31 ! Input: region = data of current region.
32 ! patch = current patch.
33 !
34 ! Output: mixt%diss = total viscous fluxes added to dissipation
35 !
36 ! Notes: This flux routine is used for the fixed and dynamic Smagorinsky model.
37 ! This subroutine is similar to subroutine RFLO_ViscousFluxPatch for the
38 ! computation of viscous-fluxes at region patches based on mu defined
39 ! at cell centers
40 !
41 !******************************************************************************
42 !
43 ! $Id: TURB_VisFluxEddyPatch.F90,v 1.14 2008/12/06 08:44:42 mtcampbe Exp $
44 !
45 ! Copyright: (c) 2001 by the University of Illinois
46 !
47 !******************************************************************************
48 
49 SUBROUTINE turb_visfluxeddypatch( region,patch )
50 
51 !$startcopy TURB_vFluxHybridPatch
52  USE moddatatypes
53  USE modbndpatch, ONLY : t_patch
54  USE moddatastruct, ONLY : t_region
55  USE modglobal, ONLY : t_global
56  USE modturbulence, ONLY : t_turb
57 #ifdef RFLO
60 
61 #include "Indexing.h"
62 #endif
63  USE moderror
64  USE modparameters
66  IMPLICIT NONE
67 
68 ! ... parameters
69  TYPE(t_region), TARGET :: region
70  TYPE(t_patch) :: patch
71 
72 ! ... loop variables
73  INTEGER :: i, j, k, ic
74 
75 ! ... local variables
76  CHARACTER(CHRLEN) :: rcsidentstring
77  TYPE(t_global), POINTER :: global
78  TYPE(t_turb), POINTER :: turb
79 
80  INTEGER :: ibeg, iend, jbeg, jend, kbeg, kend
81  INTEGER :: ijk, bctype, indcp, ijkcb0, ijkcd, ijknb, ijknbg
82  INTEGER :: n1, n2, noff, j2d, aerocoeff
83 
84  REAL(RFREAL) :: beta,rprt,cpprt,muel,tcol,tcot,engmodel
85  REAL(RFREAL) :: tx,ty,tz,tgradf, bvalfactor
86  REAL(RFREAL) :: velf(3),fd(4),sf(3),sij(3,3)
87  REAL(RFREAL) :: velcb0(3),tfd(4),ucitauij,taukk, ac0,ac1
88  REAL(RFREAL) :: rref, vref, rcfref, rchref
89  REAL(RFREAL), POINTER :: diss(:,:),tv(:,:),gv(:,:),muet(:,:),srate(:,:)
90  REAL(RFREAL), POINTER :: trace(:),vol(:)
91 
92 #ifdef RFLO
93  INTEGER :: inode, jnode, knode, idir, jdir, kdir
94  INTEGER :: ilev, lbound, icoff, ijcoff, inoff, ijnoff, acid0, acid1
95  REAL(RFREAL) :: sgn
96  REAL(RFREAL), POINTER :: avgco(:,:), sface(:,:), dv(:,:), grad(:,:)
97 #endif
98 #ifdef RFLU
99  INTEGER :: ifgbeg
100  REAL(RFREAL) :: rdens0
101  REAL(RFREAL), POINTER :: fn(:,:), cv(:,:), grad(:,:,:)
102 #endif
103 !$endcopy
104 
105  REAL(RFREAL) :: muf, modstrain
106 
107 !******************************************************************************
108 
109  rcsidentstring = '$RCSfile: TURB_VisFluxEddyPatch.F90,v $'
110 
111  global => region%global
112  CALL registerfunction( global,'TURB_VisFluxEddyPatch',&
113  'TURB_VisFluxEddyPatch.F90' )
114 
115 !$startcopy TURB_vFluxHybridPatch
116 ! get dimensions and pointers -------------------------------------------------
117 
118  bctype = patch%bcType
119 
120 #ifdef RFLO
121  ilev = region%currLevel
122  lbound = patch%lbound
123  vol => region%levels(ilev)%grid%vol
124  dv => region%levels(ilev)%mixt%dv
125  tv => region%levels(ilev)%mixt%tv
126  gv => region%levels(ilev)%mixt%gv
127  diss => region%levels(ilev)%mixt%diss
128  muet => region%levels(ilev)%turb%mueT
129  trace => region%levels(ilev)%turb%trace
130  turb => region%levels(ilev)%turb
131 #endif
132 #ifdef RFLU
133  vol => region%grid%vol
134  cv => region%mixt%cv
135  tv => region%mixt%tv
136  gv => region%mixt%gv
137  diss => region%mixt%diss
138  muet => region%turb%bMueT
139  trace => region%turb%trace
140  turb => region%turb
141 #endif
142 
143 ! get coefficients -----------------------------------------------------------
144 
145  IF (region%turbInput%engModel==0) THEN
146  engmodel = 0._rfreal
147  ELSE
148  engmodel = 1._rfreal
149  ENDIF
150  beta = region%mixtInput%betrk(region%irkStep)
151 
152  IF (bctype>=bc_noslipwall .AND. bctype<=bc_noslipwall+bc_range) THEN
153  bvalfactor = 0._rfreal
154  ELSE
155  bvalfactor = 1._rfreal
156  ENDIF
157 
158 #ifdef RFLO
159  rprt = 1._rfreal/region%levels(ilev)%mixt%prTurb
160  indcp = region%levels(ilev)%mixt%indCp
161  aerocoeff = global%aeroCoeffs
162  noff = abs(patch%l1end-patch%l1beg) + 1
163 #endif
164 #ifdef RFLU
165  rprt = 1._rfreal/region%mixtInput%prTurb
166  indcp = region%mixtInput%indCp
167 #endif
168 
169  rref = global%refDensity
170  vref = global%refVelocity
171 
172  rcfref = 2.0_rfreal/(rref*vref*vref)
173  rchref = 2.0_rfreal/(rref*vref*vref*vref)
174 
175 #ifdef RFLO
176 
177 ! take the right face vector and make it point outwards
178 
179  CALL rflo_getpatchindices( region,patch,ilev,ibeg,iend,jbeg,jend,kbeg,kend )
181  CALL rflo_getcelloffset( region,ilev,icoff,ijcoff )
182  CALL rflo_getnodeoffset( region,ilev,inoff,ijnoff )
183 
184  sgn = +1._rfreal
185  inode = 0
186  jnode = 0
187  knode = 0
188  acid0 = 2
189  acid1 = 1
190  IF (lbound==2 .OR. lbound==4 .OR. lbound==6) THEN
191  sgn = -1._rfreal
192  inode = -idir
193  jnode = -jdir
194  knode = -kdir
195  acid0 = 1
196  acid1 = 2
197  ENDIF
198 !$endcopy
199 
200 ! get the appropriate face vector
201 
202  IF (lbound==1 .OR. lbound==2) THEN
203  ijk = diri
204  avgco => region%levels(ilev)%grid%c2fCoI
205  sface => region%levels(ilev)%grid%si
206  grad => region%levels(ilev)%mixt%gradi
207  srate => region%levels(ilev)%turb%mISij
208  ELSE IF (lbound==3 .OR. lbound==4) THEN
209  ijk = dirj
210  avgco => region%levels(ilev)%grid%c2fCoJ
211  sface => region%levels(ilev)%grid%sj
212  grad => region%levels(ilev)%mixt%gradj
213  srate => region%levels(ilev)%turb%mJSij
214  ELSE
215  ijk = dirk
216  avgco => region%levels(ilev)%grid%c2fCoK
217  sface => region%levels(ilev)%grid%sk
218  grad => region%levels(ilev)%mixt%gradk
219  srate => region%levels(ilev)%turb%mKSij
220  ENDIF
221 
222 !$startcopy TURB_vFluxHybridPatch
223 
224 ! non-conforming region interface
225 
226  IF (bctype>=bc_regionint .AND. bctype<=bc_regionint+bc_range) THEN
227 
228  ELSE IF (bctype>=bc_regnonconf .AND. bctype<=bc_regnonconf+bc_range) THEN
229 
230 ! everything else
231 
232  ELSE
233 
234 ! flux in the direction normal to the patch
235 
236  DO k=kbeg,kend
237  DO j=jbeg,jend
238  DO i=ibeg,iend
239 
240  ijkcb0 = indijk(i ,j ,k ,icoff,ijcoff) ! bnd cells
241  ijkcd = indijk(i-idir ,j-jdir ,k-kdir ,icoff,ijcoff) ! dummy
242  ijknb = indijk(i+inode,j+jnode,k+knode,inoff,ijnoff) ! bnd nodes
243  ijknbg = ijknb
244 
245  sf(1) = sgn*sface(xcoord,ijknb)
246  sf(2) = sgn*sface(ycoord,ijknb)
247  sf(3) = sgn*sface(zcoord,ijknb)
248  ac0 = avgco(acid0,ijknb)
249  ac1 = avgco(acid1,ijknb)
250 #endif
251 #ifdef RFLU
252 ! specific Rocflu, check the state of cv first
253  IF (region%mixt%cvState /= cv_mixt_state_cons) &
254  CALL errorstop(global,err_reached_default,__line__)
255  ijk = diri
256  ibeg = 1
257  iend = patch%nBFaces
258 ! TEMPORARY : removing usage of bf2bg from everywhere
259 ! ifgBeg = patch%bf2bg(BF2BG_BEG)
260  ac0 = 0.5_rfreal
261  ac1 = 0.5_rfreal
262 
263  fn => patch%fn
264 ! TEMPORARY
265  grad => patch%mixt%gradFace
266  srate => region%turb%bmISij
267 
268  DO ic=ibeg,iend
269  ijkcb0 = patch%bf2c(ic)
270  ijkcd = ijkcb0
271  ijknb = ic
272  ijknbg = ic + ifgbeg-1
273 
274  sf(1) = fn(xcoord,ijknb)*fn(xyzmag,ijknb)
275  sf(2) = fn(ycoord,ijknb)*fn(xyzmag,ijknb)
276  sf(3) = fn(zcoord,ijknb)*fn(xyzmag,ijknb)
277  rdens0 = 1._rfreal/cv(cv_mixt_dens,ijkcb0)
278 #endif
279 
280 !pert TURB
281  cpprt = (ac0*gv(gv_mixt_cp,ijkcb0*indcp) + &
282  ac1*gv(gv_mixt_cp,ijkcd*indcp))*rprt
283  muel = ac0*tv(tv_mixt_muel,ijkcb0)+ac1*tv(tv_mixt_muel,ijkcd)
284  tcol = ac0*tv(tv_mixt_tcol,ijkcb0)+ac1*tv(tv_mixt_tcol,ijkcd)
285  tcot = cpprt*muet(ijk,ijknbg)
286 !endpert
287 
288 #ifdef RFLO
289  velcb0(1)= dv(dv_mixt_uvel,ijkcb0)
290  velcb0(2)= dv(dv_mixt_vvel,ijkcb0)
291  velcb0(3)= dv(dv_mixt_wvel,ijkcb0)
292  velf(1)= ac0*dv(dv_mixt_uvel,ijkcb0)+ac1*dv(dv_mixt_uvel,ijkcd)
293  velf(2)= ac0*dv(dv_mixt_vvel,ijkcb0)+ac1*dv(dv_mixt_vvel,ijkcd)
294  velf(3)= ac0*dv(dv_mixt_wvel,ijkcb0)+ac1*dv(dv_mixt_wvel,ijkcd)
295  tx = grad(gr_mixt_tx,ijknb)
296  ty = grad(gr_mixt_ty,ijknb)
297  tz = grad(gr_mixt_tz,ijknb)
298 #endif
299 #ifdef RFLU
300  velcb0(1)= cv(cv_mixt_xmom,ijkcb0)*rdens0
301  velcb0(2)= cv(cv_mixt_ymom,ijkcb0)*rdens0
302  velcb0(3)= cv(cv_mixt_zmom,ijkcb0)*rdens0
303  velf(1) = velcb0(1)
304  velf(2) = velcb0(2)
305  velf(3) = velcb0(3)
306  velf(1:3)= bvalfactor*velf(1:3)
307  tx = grad(xcoord,grf_mixt_temp,ijknbg)
308  ty = grad(ycoord,grf_mixt_temp,ijknbg)
309  tz = grad(zcoord,grf_mixt_temp,ijknbg)
310 #endif
311 
312  tgradf = tx*sf(1)+ty*sf(2)+tz*sf(3)
313 
314  sij(1,1) = srate(e11,ijknbg)
315  sij(1,2) = srate(e12,ijknbg)
316  sij(1,3) = srate(e13,ijknbg)
317 
318  sij(2,1) = sij(1,2)
319  sij(2,2) = srate(e22,ijknbg)
320  sij(2,3) = srate(e23,ijknbg)
321 
322  sij(3,1) = sij(1,3)
323  sij(3,2) = sij(2,3)
324  sij(3,3) = srate(e33,ijknbg)
325 
326  fd(1) = muel*(sij(1,1)*sf(1)+sij(1,2)*sf(2)+sij(1,3)*sf(3))
327  fd(2) = muel*(sij(2,1)*sf(1)+sij(2,2)*sf(2)+sij(2,3)*sf(3))
328  fd(3) = muel*(sij(3,1)*sf(1)+sij(3,2)*sf(2)+sij(3,3)*sf(3))
329  fd(4) = dot_product(fd(1:3),velf(1:3)) + tcol*tgradf
330 !wlmCheckprobe--------------------------------------------------------------
331 ! IF (bcType>=BC_NOSLIPWALL .AND. bcType<=BC_NOSLIPWALL+BC_RANGE) THEN
332 ! write(*,*) region%procId, i, j, k, mueL*sij(1,2), mueL*sij(3,2), &
333 ! mueL*sij(2,1), mueL*sij(2,3), tCoL*tgradf
334 ! ENDIF
335 !---------------------------------------------------------------------------
336 !$endcopy
337 ! Yoshizawa k-model for eddy viscosity type LES
338  modstrain = sqrt(sij(1,1)*sij(1,1) &
339  +sij(2,2)*sij(2,2) &
340  +sij(1,1)*sij(2,2) &
341  +sij(1,2)*sij(1,2) &
342  +sij(1,3)*sij(1,3) &
343  +sij(2,3)*sij(2,3))
344  taukk = 2._rfreal*muet(ijk,ijknbg)*modstrain
345  trace(ijkcb0) = trace(ijkcb0) + taukk
346 
347  muf = -muet(ijk,ijknbg)/muel
348  tfd(1) = muf*fd(1)
349  tfd(2) = muf*fd(2)
350  tfd(3) = muf*fd(3)
351  ucitauij = dot_product(tfd(1:3),velcb0(1:3))
352  tfd(4) = ucitauij - tcot*tgradf
353 
354 !$startcopy TURB_vFluxHybridPatch
355  fd(1) = fd(1)-tfd(1)
356  fd(2) = fd(2)-tfd(2)
357  fd(3) = fd(3)-tfd(3)
358  fd(4) = fd(4)-engmodel*tfd(4)
359 
360 #ifdef STATS
361  turb%stwork(1,ijkcb0)=turb%stwork(1,ijkcb0)+ucitauij ! alp_1
362  turb%stwork(2,ijkcb0)=turb%stwork(2,ijkcb0)+tcot*tgradf ! alp_2+alp_3
363 #endif
364  diss(cv_mixt_xmom,ijkcb0) = diss(cv_mixt_xmom,ijkcb0)+fd(1)*beta
365  diss(cv_mixt_ymom,ijkcb0) = diss(cv_mixt_ymom,ijkcb0)+fd(2)*beta
366  diss(cv_mixt_zmom,ijkcb0) = diss(cv_mixt_zmom,ijkcb0)+fd(3)*beta
367  diss(cv_mixt_ener,ijkcb0) = diss(cv_mixt_ener,ijkcb0)+fd(4)*beta
368  global%esg1Sum = global%esg1Sum + vol(ijkcb0)*ucitauij
369 
370 ! ------- Set friction and heat-transfer coefficients
371 
372 #ifdef RFLO
373  IF (lbound==1 .OR. lbound==2) THEN
374  n1 = j - jbeg
375  n2 = k - kbeg
376  ELSE IF (lbound==3 .OR. lbound==4) THEN
377  n1 = k - kbeg
378  n2 = i - ibeg
379  ELSE IF (lbound==5 .OR. lbound==6) THEN
380  n1 = i - ibeg
381  n2 = j - jbeg
382  ENDIF
383  j2d = aerocoeff * indij(n1,n2,noff)
384  patch%cf(xcoord,j2d) = rcfref*fd(1)
385  patch%cf(ycoord,j2d) = rcfref*fd(2)
386  patch%cf(zcoord,j2d) = rcfref*fd(3)
387  patch%ch( j2d) = rchref*fd(4)
388 
389  ENDDO ! i
390  ENDDO ! j
391  ENDDO ! k
392  ENDIF ! bcType
393 #endif
394 #ifdef RFLU
395  patch%cf(xcoord,ic) = rcfref*fd(1)
396  patch%cf(ycoord,ic) = rcfref*fd(2)
397  patch%cf(zcoord,ic) = rcfref*fd(3)
398  patch%ch( ic) = rchref*fd(4)
399  ENDDO ! iC
400 #endif
401 
402 ! finalize --------------------------------------------------------------------
403 
404  CALL deregisterfunction( global )
405 !$endcopy
406 END SUBROUTINE turb_visfluxeddypatch
407 
408 !******************************************************************************
409 !
410 ! RCS Revision history:
411 !
412 ! $Log: TURB_VisFluxEddyPatch.F90,v $
413 ! Revision 1.14 2008/12/06 08:44:42 mtcampbe
414 ! Updated license.
415 !
416 ! Revision 1.13 2008/11/19 22:17:55 mtcampbe
417 ! Added Illinois Open Source License/Copyright
418 !
419 ! Revision 1.12 2006/08/19 15:40:40 mparmar
420 ! Removed bf2bg and moved region%mixt%bGradFace to patch%mixt%gradFace
421 !
422 ! Revision 1.11 2006/03/13 03:43:23 wasistho
423 ! defined aero coeffs
424 !
425 ! Revision 1.10 2004/10/22 23:20:39 wasistho
426 ! collect esg1 and esg2+3 into statistics
427 !
428 ! Revision 1.9 2004/08/04 22:07:19 wasistho
429 ! bugfixed: ac0 and ac1 are common to flo and flu
430 !
431 ! Revision 1.8 2004/08/02 23:06:36 wasistho
432 ! mv libfloflu/viscousFluxEddy(Patch) to rocflo/RFLO_viscousFlux(Patch)
433 !
434 ! Revision 1.7 2004/08/02 21:06:17 wasistho
435 ! moved averaging coeff local variables to within ifdef RFLO
436 !
437 ! Revision 1.6 2004/08/02 19:34:18 wasistho
438 ! changed grid%avgCo to grid%c2fCo
439 !
440 ! Revision 1.5 2004/07/31 00:53:38 wasistho
441 ! replaced cell2face midpoint by linear averaging
442 !
443 ! Revision 1.4 2004/03/27 02:16:42 wasistho
444 ! compiled with Rocflu
445 !
446 ! Revision 1.3 2004/03/25 04:40:41 wasistho
447 ! prepared for RFLU
448 !
449 ! Revision 1.2 2004/03/24 03:37:03 wasistho
450 ! prepared for RFLU
451 !
452 ! Revision 1.1 2004/03/05 04:37:00 wasistho
453 ! changed nomenclature
454 !
455 ! Revision 1.7 2004/02/26 21:22:23 wasistho
456 ! changed turb%esg.. to global%esg..
457 !
458 ! Revision 1.6 2004/01/21 03:42:18 wasistho
459 ! get rid of grad(T)*n = 0 for adiabatic wall
460 !
461 ! Revision 1.5 2003/08/29 01:43:17 wasistho
462 ! Added TARGET attribute to region variable, since pointers are cached into it
463 !
464 ! Revision 1.4 2003/06/05 19:21:16 wasistho
465 ! adiabatic switch
466 !
467 ! Revision 1.3 2003/05/31 01:48:23 wasistho
468 ! installed turb. wall layer model
469 !
470 ! Revision 1.2 2003/05/15 02:57:06 jblazek
471 ! Inlined index function.
472 !
473 ! Revision 1.1 2002/10/14 23:55:30 wasistho
474 ! Install Rocturb
475 !
476 !******************************************************************************
477 
478 
479 
480 
481 
482 
483 
**********************************************************************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)
**********************************************************************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
j indices k indices k
Definition: Indexing.h:6
subroutine registerfunction(global, funName, fileName)
Definition: ModError.F90:449
**********************************************************************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 ic
subroutine rflo_getpatchindices(region, patch, iLev, ibeg, iend, jbeg, jend, kbeg, kend)
double sqrt(double d)
Definition: double.h:73
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
Definition: patch.h:74
**********************************************************************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
blockLoc i
Definition: read.cpp:79
**********************************************************************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)
Tfloat trace() const
Return the trace of the image, viewed as a matrix.
Definition: CImg.h:13217
subroutine turb_visfluxeddypatch(region, patch)
j indices j
Definition: Indexing.h:6
**********************************************************************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
subroutine errorstop(global, errorCode, errorLine, addMessage)
Definition: ModError.F90:483
**********************************************************************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
long double dot_product(pnt vec1, pnt vec2)
**********************************************************************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)
Definition: ModError.F90:469
**********************************************************************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