72 TYPE(t_region
) :: region
75 TYPE(t_region
),
POINTER :: region
83 CHARACTER(CHRLEN) :: rcsidentstring
89 INTEGER :: ibn, ien, ndel(diri:dirk)
90 REAL(RFREAL),
POINTER :: coef(:,:),mij(:,:),lij(:,:), colvar(:,:)
91 REAL(RFREAL),
POINTER :: mijmij(:),mijlij(:),avgmmij(:),avgmlij(:)
95 INTEGER :: ilev,inoff,ijnoff
98 INTEGER :: npatches, nbfaces
99 REAL(RFREAL),
POINTER :: bcoef(:,:),bmij(:,:),blij(:,:),colbvar(:,:)
104 rcsidentstring =
'$RCSfile: TURB_LesContract.F90,v $'
106 global => region%global
108 'TURB_LesContract.F90' )
112 ndel(:) = region%turbInput%filterWidth(:)
115 ilev = region%currLevel
123 coef => region%levels(ilev)%turb%coef
124 lij => region%levels(ilev)%turb%lij
125 mij => region%levels(ilev)%turb%mij
129 ien = region%grid%nFaces
131 coef => region%turb%coef
132 lij => region%turb%lij
133 mij => region%turb%mij
138 ALLOCATE( mijmij(ibn:ien) )
139 ALLOCATE( mijlij(ibn:ien) )
140 ALLOCATE( avgmmij(ibn:ien) )
141 ALLOCATE( avgmlij(ibn:ien) )
149 mijmij(in) = 2._rfreal*(mij(e11,in)*mij(e11,in) &
150 +mij(e22,in)*mij(e22,in) &
151 +mij(e11,in)*mij(e22,in) &
152 +mij(e12,in)*mij(e12,in) &
153 +mij(e13,in)*mij(e13,in) &
154 +mij(e23,in)*mij(e23,in))
158 mijlij(in) = mij(e11,in)*lij(e11,in) &
159 +mij(e22,in)*lij(e22,in) &
160 +mij(e33,in)*lij(e33,in) &
161 +2.0d0*mij(e12,in)*lij(e12,in) &
162 +2.0d0*mij(e13,in)*lij(e13,in) &
163 +2.0d0*mij(e23,in)*lij(e23,in)
188 IF (ndel(diri)==0 .AND. ndel(dirj)==0 .AND. ndel(dirk)==0)
THEN
192 IF (avgmlij(in) > 0.1_rfreal*avgmmij(in)) avgmlij(in) = 0._rfreal
193 coef(1,in)=
max(0._rfreal,avgmlij(in)/(avgmmij(in)+real_small))
212 DEALLOCATE( mijmij,mijlij,avgmmij,avgmlij )
217 npatches = region%grid%nPatches
220 DO ipatch = 1,npatches
221 patch => region%patches(ipatch)
222 nbfaces = nbfaces +
patch%nBTris +
patch%nBQuads
227 bcoef => region%turb%bCoef
228 blij => region%turb%bLij
229 bmij => region%turb%bMij
233 ALLOCATE( mijmij(ibn:ien) )
234 ALLOCATE( mijlij(ibn:ien) )
235 ALLOCATE( avgmmij(ibn:ien) )
236 ALLOCATE( avgmlij(ibn:ien) )
244 mijmij(in) = 2._rfreal*(bmij(e11,in)*bmij(e11,in) &
245 +bmij(e22,in)*bmij(e22,in) &
246 +bmij(e11,in)*bmij(e22,in) &
247 +bmij(e12,in)*bmij(e12,in) &
248 +bmij(e13,in)*bmij(e13,in) &
249 +bmij(e23,in)*bmij(e23,in))
253 mijlij(in) = bmij(e11,in)*blij(e11,in) &
254 +bmij(e22,in)*blij(e22,in) &
255 +bmij(e33,in)*blij(e33,in) &
256 +2.0d0*bmij(e12,in)*blij(e12,in) &
257 +2.0d0*bmij(e13,in)*blij(e13,in) &
258 +2.0d0*bmij(e23,in)*blij(e23,in)
273 IF (ndel(diri)==0 .AND. ndel(dirj)==0 .AND. ndel(dirk)==0)
THEN
277 IF (avgmlij(in) > 0.1_rfreal*avgmmij(in)) avgmlij(in) = 0._rfreal
278 bcoef(1,in)=
max(0._rfreal,avgmlij(in)/(avgmmij(in)+real_small))
295 DEALLOCATE( mijmij,mijlij,avgmmij,avgmlij )
subroutine turb_flolesaverageface(region, ijk, faceVar, avgFaceVar)
Vector_n max(const Array_n_const &v1, const Array_n_const &v2)
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 jdnbeg
**********************************************************************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 idnend
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 jdnend
**********************************************************************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 idnbeg
subroutine turb_lescontract(region, ijk)
subroutine rflo_getdimensdummynodes(region, iLev, idnbeg, idnend, jdnbeg, jdnend, kdnbeg, kdnend)
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 kdnbeg