programmer's documentation
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Input of calculation parameters (Fortran modules)

Introduction

User subroutines for input of calculation parameters (Fortran modules). These subroutines are called in all cases.

If the Code_Saturne GUI is used, this file is not required (but may be used to override parameters entered through the GUI, and to set parameters not accessible through the GUI).

Several routines are present in the file, each destined to defined specific parameters.

To modify the default value of parameters which do not appear in the examples provided, code should be placed as follows:

As a convention, "specific physics" defers to the following modules only: pulverized coal, gas combustion, electric arcs.

In addition, specific routines are provided for the definition of some "specific physics" options. These routines are described at the end of this file and will be activated when the corresponding option is selected in the usppmo routine.

Input-output related options

Frequency of log output.

ntlist = 1

Log (listing) verbosity.

do ii = 1, nvar
iwarni(ii) = 1
enddo
iwarni(ipr) = 2
iwarni(iu) = 2
iwarni(iv) = 2
iwarni(iw) = 2

Probes output step.

nthist = 1
frhist = -1.d0

Number of monitoring points (probes) and their positions. Limited to ncaptm=100.

ncapt = 4
tplfmt = 1 ! time plot format (1: .dat, 2: .csv, 3: both)
xyzcap(1,1) = 0.30d0
xyzcap(2,1) = 0.15d0
xyzcap(3,1) = 0.01d0
xyzcap(1,2) = 0.30d0
xyzcap(2,2) = 0.00d0
xyzcap(3,2) = 0.01d0
xyzcap(1,3) = 0.30d0
xyzcap(2,3) =-0.08d0
xyzcap(3,3) = 0.01d0
xyzcap(1,4) = 0.60d0
xyzcap(2,4) =-0.05d0
xyzcap(3,4) = 0.01d0

Current variable. As for other variables, if we do not assign the following array values, default values will be used:

Note
Only the fist 16 characters of a name will be used in the most detailed log.

Examples

Example 1

Force postprocessing of projection of some variables at boundary with no reconstruction. This is handled automatically if the second bit of a field's 'post_vis' key value is set to 1 (which amounts to adding 2 to that key value).

field_get_id returns -1 if field does not exist

fldid = ivarfl(iu)
if (iand(iflpst, 2) .eq. 0) then
call field_get_key_int(fldid, keyvis, iflpst)
iflpst = ior(iflpst, 2)
call field_set_key_int(fldid, keyvis, iflpst)
endif
fldid = ivarfl(ipr)
if (iand(iflpst, 2) .eq. 0) then
call field_get_key_int(fldid, keyvis, iflpst)
iflpst = ior(iflpst, 2)
call field_set_key_int(fldid, keyvis, iflpst)
endif

Example 2

Enforce existence of 'tplus' and 'tstar' fields, so that a boundary temperature or Nusselt number may be computed using the post_boundary_temperature or post_boundary_nusselt subroutines. When postprocessing of these quantities is activated, those fields are present, but if we need to compute them in the cs_user_extra_operations user subroutine without postprocessing them, forcing the definition of these fields to save the values computed for the boundary layer is necessary.

itycat = field_intensive + field_property
ityloc = 3 ! boundary faces
ilved = .true. ! interleaved
inoprv = .false. ! no previous time step values needed
call field_get_id('tplus', fldid)
if (fldid.lt.0) then
call field_create('tplus', itycat, ityloc, idim1, ilved, inoprv, fldid)
endif
call field_get_id('tstar', fldid)
if (fldid.lt.0) then
call field_create('tstar', itycat, ityloc, idim1, ilved, inoprv, fldid)
endif