Fuel examples

| programmer's documentation

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Fuel examples

# Local variables to be added

integer ifac, ii
integer izone
integer iclafu
integer ilelt, nlelt
double precision uref2, d2s3
double precision xkent, xeent
integer, allocatable, dimension(:) :: lstelt

# Initialization and finalization

Initialization and finalization is similar to that of the base examples

# Example 1

The 12 color is a pure air inlet

call getfbr('12', nlelt, lstelt)
!==========
do ilelt = 1, nlelt
ifac = lstelt(ilelt)
! kind of boundary condition for standard variables
itypfb(ifac) = ientre
! Zone number allocation
izone = 1
! Zone number storage
izfppp(ifac) = izone
! ------ This inlet have a fixed mass flux
ientat(izone) = 1
iqimp(izone) = 1
inmoxy(izone) = 1
! - Air mass flow rate kg/s
qimpat(izone) = 1.46d-03
! - Air inlet temperature K
timpat(izone) = 400.d0 + tkelvi
! - Fuel mass flow rate kg/s
qimpfl(izone) = 0.d0
! ----- The 12 color is a fixed mass flow rate inlet
! user gives only the speed vector direction
! (spedd vector norm is irrelevent)
!
rcodcl(ifac,iu,1) = 0.d0
rcodcl(ifac,iv,1) = 0.d0
rcodcl(ifac,iw,1) = 5.d0
! Boundary conditions of turbulence
icalke(izone) = 1
!
! - If ICALKE = 0 the boundary conditions of turbulence at
! the inlet are calculated as follows:
if(icalke(izone).eq.0) then
uref2 = rcodcl(ifac,iu,1)**2 &
+rcodcl(ifac,iv,1)**2 &
+rcodcl(ifac,iw,1)**2
uref2 = max(uref2,1.d-12)
xkent = epzero
xeent = epzero
call keenin &
!==========
( uref2, xintur(izone), dh(izone), cmu, xkappa, &
xkent, xeent )
if (itytur.eq.2) then
rcodcl(ifac,ik,1) = xkent
rcodcl(ifac,iep,1) = xeent
elseif(itytur.eq.3) then
rcodcl(ifac,ir11,1) = d2s3*xkent
rcodcl(ifac,ir22,1) = d2s3*xkent
rcodcl(ifac,ir33,1) = d2s3*xkent
rcodcl(ifac,ir12,1) = 0.d0
rcodcl(ifac,ir13,1) = 0.d0
rcodcl(ifac,ir23,1) = 0.d0
rcodcl(ifac,iep,1) = xeent
elseif (iturb.eq.50) then
rcodcl(ifac,ik,1) = xkent
rcodcl(ifac,iep,1) = xeent
rcodcl(ifac,iphi,1) = d2s3
rcodcl(ifac,ifb,1) = 0.d0
elseif (iturb.eq.60) then
rcodcl(ifac,ik,1) = xkent
rcodcl(ifac,iomg,1) = xeent/cmu/xkent
endif
endif
!
! - If ICALKE = 1 the boundary conditions of turbulence at
! the inlet refer to both, a hydraulic diameter and a
! reference velocity.
!
dh(izone) = 0.032d0
!
! - If ICALKE = 2 the boundary conditions of turbulence at
! the inlet refer to a turbulence intensity.
!
xintur(izone) = 0.d0
! ------ Treatment of user's scalars
if ( (nscal-nscapp).gt.0 ) then
do ii = 1, (nscal-nscapp)
rcodcl(ifac,isca(ii),1) = 1.d0
enddo
endif
enddo

# Example 2

Inlet of both primary Air and Fuel

call getfbr('11', nlelt, lstelt)
!==========
do ilelt = 1, nlelt
ifac = lstelt(ilelt)
! kind of boundary condition for standard variables
itypfb(ifac) = ientre
! Zone number allocation
izone = 2
! Zone number storage
izfppp(ifac) = izone
! ------ This inlet have a fixed mass flux
ientfl(izone) = 1
iqimp(izone) = 1
inmoxy(izone) = 1
! - Air mass flow rate in kg/s
qimpat(izone) = 1.46d-03
! - Air Temperature at inlet in K
timpat(izone) = 800.d0 + tkelvi
! - Fuel mass flow rate in kg/s
qimpfl(izone) = 1.46d-04/360.d0
! - PERCENTAGE mass fraction of each granulometric class
! ICLAFU (1 < ICLAFU < NCLAFU )
iclafu = 1
distfu(izone,iclafu) = 100.d0
! - Fuel Temperature at inlet in K
timpfl(izone) = 100.d0 + tkelvi
! ----- The 11 color is a fixed mass flow rate inlet
! user gives only the speed vector direction
! (spedd vector norm is irrelevent)
!
rcodcl(ifac,iu,1) = 0.d0
rcodcl(ifac,iv,1) = 0.d0
rcodcl(ifac,iw,1) = 5.d0
! Boundary conditions of turbulence
icalke(izone) = 1
!
! - If ICALKE = 0 the boundary conditions of turbulence at
! the inlet are calculated as follows:
if(icalke(izone).eq.0) then
uref2 = rcodcl(ifac,iu,1)**2 &
+rcodcl(ifac,iv,1)**2 &
+rcodcl(ifac,iw,1)**2
uref2 = max(uref2,1.d-12)
xkent = epzero
xeent = epzero
call keenin &
!==========
( uref2, xintur(izone), dh(izone), cmu, xkappa, &
xkent, xeent )
if (itytur.eq.2) then
rcodcl(ifac,ik,1) = xkent
rcodcl(ifac,iep,1) = xeent
elseif(itytur.eq.3) then
rcodcl(ifac,ir11,1) = d2s3*xkent
rcodcl(ifac,ir22,1) = d2s3*xkent
rcodcl(ifac,ir33,1) = d2s3*xkent
rcodcl(ifac,ir12,1) = 0.d0
rcodcl(ifac,ir13,1) = 0.d0
rcodcl(ifac,ir23,1) = 0.d0
rcodcl(ifac,iep,1) = xeent
elseif (iturb.eq.50) then
rcodcl(ifac,ik,1) = xkent
rcodcl(ifac,iep,1) = xeent
rcodcl(ifac,iphi,1) = d2s3
rcodcl(ifac,ifb,1) = 0.d0
elseif (iturb.eq.60) then
rcodcl(ifac,ik,1) = xkent
rcodcl(ifac,iomg,1) = xeent/cmu/xkent
endif
endif
!
! - If ICALKE = 1 the boundary conditions of turbulence at
! the inlet refer to both, a hydraulic diameter and a
! reference velocity.
!
dh(izone) = 0.032d0
!
! - If ICALKE = 2 the boundary conditions of turbulence at
! the inlet refer to a turbulence intensity.
!
xintur(izone) = 0.d0
enddo

# Example 3

Color 15 is a wall

call getfbr('15', nlelt, lstelt)
!==========
do ilelt = 1, nlelt
ifac = lstelt(ilelt)
! WALL : nul mass flow rate (nul pressure flux)
! rubbing for speed (and turbulence)
! nul scalar fluxes
! kind of boundary condition for standard variables
itypfb(ifac) = iparoi
! Zone number allocation
izone = 3
! Zone number storage
izfppp(ifac) = izone
enddo

# Example 4

Color 19 is an outlet

call getfbr('19', nlelt, lstelt)
!==========
do ilelt = 1, nlelt
ifac = lstelt(ilelt)
! OUTLET : nul fluxes for speed and scalar
! pressure fixed
! kind of boundary condition for standard variables
itypfb(ifac) = isolib
! Zone number allocation
izone = 4
! Zone number storage
izfppp(ifac) = izone
enddo

# Example 5

14 and 4 are symmetry

call getfbr('14 or 4', nlelt, lstelt)
!==========
do ilelt = 1, nlelt
ifac = lstelt(ilelt)
! SYMETRY
! kind of boundary condition for standard variables
itypfb(ifac) = isymet
! Zone number allocation
izone = 5
! Zone number storage
izfppp(ifac) = izone
enddo