My Project
programmer's documentation
Modules | Functions/Subroutines | Variables
optcal.f90 File Reference

Modules

module  optcal
 

Functions/Subroutines

integer function iscavr (iscal)
 If scalar iscal represents the mean of the square of a scalar k, return k; otherwise, return 0. More...
 
subroutine time_step_init
 Initialize Fortran time step API. This maps Fortran pointers to global C structure members. More...
 
subroutine time_step_options_init
 Initialize Fortran time step options API. This maps Fortran pointers to global C structure members. More...
 
subroutine thermal_model_init
 Initialize Fortran thermal model API. This maps Fortran pointers to global C structure members. More...
 
subroutine turb_model_init
 Initialize Fortran turbulence model API. This maps Fortran pointers to global C structure members. More...
 
subroutine wall_functions_init
 Initialize Fortran wall functions API. This maps Fortran pointers to global C structure members. More...
 
subroutine turb_rans_model_init
 Initialize Fortran RANS turbulence model API. This maps Fortran pointers to global C structure members. More...
 
subroutine turb_les_model_init
 Initialize Fortran LES turbulence model API. This maps Fortran pointers to global C structure members. More...
 
subroutine stokes_options_init
 Initialize Fortran Stokes options API. This maps Fortran pointers to global C structure members. More...
 
subroutine space_disc_options_init
 Initialize Fortran space discretisation options API. This maps Fortran pointers to global C structure members. More...
 
subroutine piso_options_init
 Initialize Fortran PISO options API. This maps Fortran pointers to global C structure members. More...
 
subroutine elec_option_init
 Initialize Fortran ELEC options API. This maps Fortran pointers to global C structure members. More...
 

Variables

integer, save ischtp
 time order of time stepping More...
 
integer, save istmpf
 time order of the mass flux scheme The chosen value for istmpf will automatically determine the value given to the variable thetfl. More...
 
integer(c_int), pointer, save nterup
 number of interations on the pressure-velocity coupling on Navier-Stokes (for the PISO algorithm) More...
 
integer, save isno2t
 isno2t specifies the time scheme activated for the source terms of the momentum equation, apart from convection and diffusion (for instance: head loss, transposed gradient, ...). More...
 
integer, save isto2t
 isto2t specifies the time scheme activated for the source terms of the turbulence equations i.e. related to $k$, $R_{ij}$, $\varepsilon$, $\omega$, $\varphi$, $\overline{f}$), apart from convection and diffusion. More...
 
integer, dimension(nscamx), save isso2t
 for each scalar, isso2t specifies the time scheme activated for the source terms of the equation for the scalar, apart from convection and diffusion (for instance: variance production, user-specified terms, ...). More...
 
integer, save initvi
 initvi : =1 if total viscosity read from checkpoint file More...
 
integer, save initro
 initro : =1 if density read from checkpoint file More...
 
integer, save initcp
 initcp : =1 if specific heat read from checkpoint file More...
 
integer, dimension(nscamx), save initvs
 initvs : =1 if scalar diffusivity read from checkpoint file More...
 
double precision, save thetsn
 $ \theta_S $-scheme for the source terms $S_e$ in the Navier-Stokes equations when the source term extrapolation has been activated (see isno2t), following the formula $(S_e)^{n+\theta}=(1+\theta)S_e^n-\theta S_e^{n-1}$.
The value of $theta$ = thetsn is deduced from the value chosen for isno2t. Generally only the value 0.5 is used. More...
 
double precision, save thetst
 $ \theta $-scheme for the extrapolation of the nonlinear explicit source terms $S_e$ of the turbulence equations when the source term extrapolation has been activated (see isto2t), following the formula $(S_e)^{n+\theta}=(1+\theta)S_e^n-\theta S_e^{n-1}$.
The value of $theta$ is deduced from the value chosen for isto2t. Generally, only the value 0.5 is used. More...
 
double precision, dimension(nscamx), save thetss
 $ \theta $-scheme for the extrapolation of the nonlinear explicit source term $S_e$ of the scalar transport equation when the source term extrapolation has been activated (see isso2t), following the formula $(S_e)^{n+\theta}=(1+\theta)S_e^n-\theta S_e^{n-1}$.
The value of $\theta$ = thetss is deduced from the value chosen for isso2t. Generally, only the value 0.5 is used. More...
 
double precision, save thetfl
 $ \theta $-scheme for the mass flux when a second-order time scheme has been activated for the mass flow (see istmpf). More...
 
double precision, save thetvi
 $ \theta $-scheme for the extrapolation of the physical property $\phi$ "total viscosity" when the extrapolation has been activated (see time_extrapolated key word), according to the formula $\phi^{n+\theta}=(1+\theta)\phi^n-\theta \phi^{n-1}$.
The value of $\theta$ = thetvi is deduced from the value chosen for time_extrapolated key word for the viscosity. Generally, only the value 0.5 is used. More...
 
double precision, save thetcp
 $ \theta $-scheme for the extrapolation of the physical property $\phi$ "specific heat" when the extrapolation has been activated (see time_extrapolated field key int), according to the formula $\phi^{n+\theta}=(1+\theta)\phi^n-\theta \phi^{n-1}$.
The value of $\theta$ = thetcp is deduced from the value chosen for the specific heat. Generally, only the value 0.5 is used. More...
 
double precision, dimension(nscamx), save thetvs
 $ \theta $-scheme for the extrapolation of the physical property $\phi$ "diffusivity" when the extrapolation has been activated (see time_extrapolated key word), according to the formula $\phi^{n+\theta}=(1+\theta)\phi^n-\theta \phi^{n-1}$.
The value of $\theta$ = thetvs is deduced from the value chosen for time_extrapolated key word. Generally, only the value 0.5 is used. More...
 
real(c_double), pointer, save epsup
 relative precision for the convergence test of the iterative process on pressure-velocity coupling (PISO) More...
 
real(c_double), pointer, save xnrmu
 norm of the increment $ \vect{u}^{k+1} - \vect{u}^k $ of the iterative process on pressure-velocity coupling (PISO) More...
 
real(c_double), pointer, save xnrmu0
 norm of $ \vect{u}^0 $ (used by PISO algorithm) More...
 
integer(c_int), pointer, save iflxmw
 
integer(c_int), pointer, save imrgra
 type of gradient reconstruction More...
 
real(c_double), pointer, save anomax
 non orthogonality angle of the faces, in radians. For larger angle values, cells with one node on the wall are kept in the extended support of the neighboring cells. More...
 
integer(c_int), pointer, save imvisf
 face viscosity field interpolation More...
 
integer, save isuite
 Indicator of a calculation restart (=1) or not (=0). This value is set automatically by the code; depending on whether a restart directory is present, and should not be modified by the user. More...
 
integer, save ileaux
 Indicates the reading (=1) or not (=0) of the auxiliary calculation restart file
Useful only in the case of a calculation restart. More...
 
integer, save iecaux
 Indicates the writing (=1) or not (=0) of the auxiliary calculation restart file. More...
 
integer, save isuit1
 
integer, save isuivo
 For the vortex method, indicates whether the synthetic vortices at the inlet should be initialised or read from the restart file. Useful if iturb = 40, 41, 42 and ivrtex = 1. More...
 
integer, save isuisy
 Reading of the LES inflow module restart file. -0: not activated -1: activated
If isuisy = 1, synthetic fluctuations are not re-initialized in case of restart calculation. Useful if iturb = 40, 41 or 42. More...
 
integer(c_int), pointer, save ntpabs
 Absolute time step number for previous calculation. More...
 
integer(c_int), pointer, save ntcabs
 Current absolute time step number. In case of restart, this is equal to ntpabs + number of new iterations. More...
 
integer(c_int), pointer, save ntmabs
 Maximum absolute time step number. More...
 
integer(c_int), pointer, save ntinit
 Number of time steps for initalization (for all steps between 0 and ntinit, pressure is re-set to 0 before prediction correction). More...
 
real(c_double), pointer, save ttpabs
 Absolute time value for previous calculation. More...
 
real(c_double), pointer, save ttcabs
 Current absolute time. More...
 
real(c_double), pointer, save ttmabs
 Maximum absolute time. More...
 
integer(c_int), pointer, save iptlro
 Clip the time step with respect to the buoyant effects. More...
 
integer(c_int), pointer, save idtvar
 option for a variable time step More...
 
real(c_double), pointer, save dtref
 Reference time step. More...
 
real(c_double), pointer, save coumax
 maximum Courant number (when idtvar is different from 0) More...
 
real(c_double), pointer, save cflmmx
 maximum Courant number for the continuity equation in compressible model More...
 
real(c_double), pointer, save foumax
 maximum Fourier number (when idtvar is different from 0) More...
 
real(c_double), pointer, save varrdt
 maximum allowed relative increase in the calculated time step value between two successive time steps (to ensure stability, any decrease in the time step is immediate and without limit).
Useful when idtvar is different from 0. More...
 
real(c_double), pointer, save dtmin
 lower limit for the calculated time step when idtvar is different from 0.
Take dtmin = min (ld/ud, sqrt(lt/(gdelta rho/rho)), ...) More...
 
real(c_double), pointer, save dtmax
 upper limit for the calculated time step when idtvar is different from 0.
Take dtmax = max (ld/ud, sqrt(lt/(gdelta rho/rho)), ...) More...
 
double precision, dimension(nvarmx), save cdtvar
 multiplicator coefficient for the time step of each variable More...
 
real(c_double), pointer, save relxst
 relaxation coefficient for the steady algorithm relxst = 1 : no relaxation. More...
 
integer(c_int), pointer, save itherm
 thermal model More...
 
integer(c_int), pointer, save itpscl
 Temperature scale. More...
 
integer(c_int), pointer, save iscalt
 Index of the thermal scalar (temperature, energy or enthalpy) More...
 
integer(c_int), pointer, save iturb
 
integer(c_int), pointer, save itytur
 Class of turbulence model (integer value iturb/10) More...
 
integer(c_int), pointer, save irccor
 Activation of rotation/curvature correction for eddy viscosity turbulence models. More...
 
integer(c_int), pointer, save itycor
 Type of rotation/curvature correction for eddy viscosity turbulence models. More...
 
integer(c_int), pointer, save idirsm
 Turbulent diffusion model for second moment closure. More...
 
integer(c_int), pointer, save iwallf
 Wall functions Indicates the type of wall function used for the velocity boundary conditions on a frictional wall. More...
 
integer(c_int), pointer, save iwalfs
 Wall functions for scalar. More...
 
integer(c_int), pointer, save iwallt
 exchange coefficient correlation More...
 
integer(c_int), pointer, save iclkep
 Indicates the clipping method used for $k$ and $\varepsilon$, for the $k-\epsilon$ and v2f models. More...
 
integer(c_int), pointer, save igrhok
 Indicates if the term $\frac{2}{3}\grad \rho k$ is taken into account in the velocity equation. More...
 
integer(c_int), pointer, save igrake
 Indicates if the terms related to gravity are taken into account in the equations of $k-\epsilon$. More...
 
integer(c_int), pointer, save igrari
 Indicates if the terms related to gravity are taken into account in the equations of $R_{ij}-\varepsilon$. More...
 
integer(c_int), pointer, save ikecou
 Indicates if the coupling of the source terms of $k$ and $\epsilon$ or $k$ and $\omega$ is taken into account or not. More...
 
integer(c_int), pointer, save reinit_turb
 Advanced re-init for EBRSM and k-omega models. More...
 
integer(c_int), pointer, save irijco
 Coupled solving of $ \tens{R} $. More...
 
integer(c_int), pointer, save iddes
 Activation of Hybrid DDES model (only valid for iturb equal to 60) More...
 
integer(c_int), pointer, save irijnu
 pseudo eddy viscosity in the matrix of momentum equation to partially implicit $ \divv \left( \rho \tens{R} \right) $ More...
 
integer(c_int), pointer, save irijrb
 accurate treatment of $ \tens{R} $ at the boundary (see condli) More...
 
integer(c_int), pointer, save irijec
 Indicates if the wall echo terms in $R_{ij}-\epsilon$ LRR model are taken into account: More...
 
integer(c_int), pointer, save idifre
 whole treatment of the diagonal part of the dissusion tensor of $ \tens{R} $ and $ \varepsilon $ More...
 
integer(c_int), pointer, save iclsyr
 partial implicitation of symmetry BCs of $ \tens{R} $ More...
 
integer(c_int), pointer, save iclptr
 partial implicitation of wall BCs of $ \tens{R} $ More...
 
integer(c_int), pointer, save idries
 Activates or the van Driest wall-damping for the Smagorinsky constant (the Smagorinsky constant is multiplied by the damping function $1-e^{-y^+/ cdries}$, where $y^+$ designates the non-dimensional distance to the nearest wall). More...
 
integer(c_int), pointer, save ivrtex
 Activates or not the generation of synthetic turbulence at the different inlet boundaries with the LES model (generation of unsteady synthetic eddies).
. More...
 
integer, save ikwcln
 Wall boundary condition on omega in k-omega SST 0: Deprecated Neumann boundary condition 1: Dirichlet boundary condition consistent with Menter's original model: w_wall = 60*nu/(beta*d**2) More...
 
integer, dimension(nscamx), save iturt
 turbulent flux model for $ \overline{\varia^\prime \vect{u}^\prime} $ for any scalar $ \varia $, iturt(isca) More...
 
integer, dimension(nscamx), save ityturt
 class turbulent flux model (=iturt/10) More...
 
integer, save nvarcl
 number of variable (deprecated, used only for compatibility) More...
 
integer(c_int), pointer, save ivisse
 Indicates whether the source terms in transposed gradient and velocity divergence should be taken into account in the momentum equation. In the compressible module, these terms also account for the volume viscosity (cf. viscv0 and iviscv) $\partial_i \left[(\kappa -2/3\,(\mu+\mu_t))\partial_k U_k \right] + \partial_j \left[ (\mu+\mu_t)\partial_i U_j \right]$: More...
 
integer(c_int), pointer, save irevmc
 Reconstruction of the velocity field with the updated pressure option. More...
 
integer(c_int), pointer, save iprco
 Compute the pressure step thanks to the continuity equation. More...
 
real(c_double), pointer, save arak
 Arakawa multiplicator for the Rhie and Chow filter (1 by default) More...
 
integer(c_int), pointer, save ipucou
 indicates the algorithm for velocity/pressure coupling: More...
 
integer(c_int), pointer, save iccvfg
 
integer(c_int), pointer, save idilat
 Algorithm to take into account the density variation in time. More...
 
integer, save ipredfl
 Option to switch on massflux predcition befor momentum solving to be fully conservative in momentum over time for variable density flows. This option is to be removed. More...
 
real(c_double), pointer, save epsdp
 parameter of diagonal pressure strengthening More...
 
integer, dimension(ntypmx), save idebty
 
integer, dimension(ntypmx), save ifinty
 
integer(c_int), pointer, save itbrrb
 accurate treatment of the wall temperature More...
 
integer(c_int), pointer, save iphydr
 improve static pressure algorithm More...
 
integer(c_int), pointer, save igprij
 improve static pressure algorithm More...
 
integer(c_int), pointer, save igpust
 improve static pressure algorithm More...
 
integer(c_int), pointer, save iifren
 indicates the presence of a Bernoulli boundary face (automatically computed) More...
 
integer, save ifrslb
 number of the closest free standard outlet (or free inlet) face to xyzp0 More...
 
integer, save itbslb
 max of ifrslb on all ranks, standard outlet face presence indicator More...
 
integer(c_int), pointer, save icalhy
 compute the hydrostatic pressure in order to compute the Dirichlet conditions on the pressure at outlets More...
 
integer(c_int), pointer, save irecmf
 use interpolated face diffusion coefficient instead of cell diffusion coefficient for the mass flux reconstruction for the non-orthogonalities More...
 
logical(c_bool), pointer, save fluid_solid
 Has a solid zone where dynamics must be killed? More...
 
integer, save icophc
 choice the way to compute the exchange coefficient of the condensation source term used by the copain model More...
 
integer, save icophg
 choice the way to compute the thermal exchange coefficient associated to the heat transfer to wall due to the condensation phenomenon More...
 
integer, save itag1d
 choice the way to compute the wall temperature at the solid/fluid interface coupled with condensation to the wall More...
 
integer, save itagms
 choice the way to compute the wall temperature at the solid/fluid interface coupled with condensation to the metal mass structures wall More...
 
integer, dimension(nestmx), save iescal
 iescal indicates the calculation mode for the error estimator iespre, iesder, iescor or iestot for the Navier-Stokes equation: More...
 
integer(c_int), pointer, save n_buoyant_scal
 n_buoyant_scal is the number of buoyant scalar It will be zero if there is no buoyant scalar More...
 
integer(c_int), pointer, save ivofmt
 VoF model (sum of masks defining VoF model and submodels). See defined masks in Masks used to specify Volume of Fluid models. More...
 
integer vof_enabled
 Volume of Fluid model. More...
 
integer vof_free_surface
 Free surface model. More...
 
integer vof_merkle_mass_transfer
 Mass transfer Merkle model for vaporization / condensation (cavitation) More...
 
integer, save ncpdct
 Indicateur pertes de charge global (ie somme sur les processeurs de ncepdc) More...
 
integer, save nctsmt
 Indicateur termes sources de masse global (ie somme sur les processeurs de ncetsm) More...
 
integer, save nftcdt
 Global indicator of condensation source terms (ie. sum on the processors of nfbpcd) cells associated to the face with condensation phenomenon. More...
 
integer(c_int), pointer, save iporos
 
integer, save iusini
 
integer, save ineedy
 
integer, save imajdy
 
integer, save icdpar
 Specifies the method used to calculate the distance to the wall y and the non-dimensional distance $ y+ $ for all the cells of the calculation domain (when necessary): More...
 
integer, dimension(nscamx), save iscacp
 
integer, dimension(nscamx), save iclvfl
 iclvfl : 0 : clip variances to zero 1 : clip variances to zero and to f(1-f) 2 : clip variances to max(zero,scamin) and scamax for every scalar iscal representing the average of the square of the fluctuations of another scalar ii= iscavr (iscal) (noted $f$), indicator of the clipping method: More...
 
integer, dimension(nscamx), save iscasp
 iscasp(ii) : index of the ii^th species (0 if not a species) More...
 
double precision, dimension(nscamx), save visls0
 reference molecular diffusivity related to the scalar J ( $kg.m^{-1}.s^{-1}$).
More...
 
double precision, dimension(nscamx), save rvarfl
 When iscavr(iscal)>0, rvarfl is the coefficient $R_f$ in the dissipation term $\-\frac{\rho}{R_f}\frac{\varepsilon}{k}$ of the equation concerning the scalar, which represents the root mean square of the fluctuations of the scalar.
Useful if and only if there is 1 $\leqslant$ iscal $\leqslant$ nscal such as iscavr(iscal)>0. More...
 
double precision, dimension(nscamx), save ctheta
 ctheta : coefficient des modeles de flux turbulents GGDH et AFM More...
 
integer drift_scalar_add_drift_flux
 flag for computing the drift mass flux: (for coal classes for instance, only the first scalar of a class compute the drift flux of the class and the other scalars use it without recomputing it) More...
 
integer drift_scalar_thermophoresis
 flag for activating thermophoresis for drift scalars More...
 
integer drift_scalar_turbophoresis
 flag for activating turbophoresis for drift scalars More...
 
integer drift_scalar_electrophoresis
 
integer drift_scalar_centrifugalforce
 flag for activating the centrifugal force for drift scalars More...
 
integer drift_scalar_imposed_mass_flux
 flag for activating imposed mass flux More...
 
integer drift_scalar_zero_bndy_flux
 flag for activating imposed mass flux More...
 
integer isotropic_diffusion
 flag for isotropic diffusion More...
 
integer orthotropic_diffusion
 flag for orthotropic diffusion More...
 
integer anisotropic_left_diffusion
 flag for diffusion by a left-multiplied symmetric 3x3 tensor More...
 
integer anisotropic_right_diffusion
 
integer anisotropic_diffusion
 flag for diffusion by a symmetric 3x3 tensor More...
 
integer(c_int), pointer, save ngazge
 ngazge : number of species for electric arc More...
 
integer(c_int), pointer, save ielcor
 ielcor : 0 : electric arc scaling desactivate 1 : electric arc scaling activate More...
 
real(c_double), pointer, save pot_diff
 pot_diff : potential between electrods More...
 
real(c_double), pointer, save coejou
 coejou : scaling coefficient More...
 
real(c_double), pointer, save elcou
 elcou : current More...
 
real(c_double), pointer, save couimp
 pot_diff : imposed value for current More...
 
integer(c_int), pointer, save irestrike
 irestrike : 0 : restrike mode off 1 : restrike mode on More...
 
real(c_double), pointer, save restrike_point_x
 restrike_point : coordinate of restrike point More...
 
real(c_double), pointer, save restrike_point_y
 
real(c_double), pointer, save restrike_point_z
 
integer(c_int), pointer, save ntdcla
 ntdcla : start iteration for restrike More...
 

Detailed Description

Module for calculation options