version 0.6.0
variables_energy Module Reference

Declaration of scalar variables associated to the Energy equation.

Variables

logical energy_has_linearized_enthalpy_explicit_advection = .false.
 Has explicit advection terms for the linearized enthalpy method?
 
Variables associated to the time discretization
double precision energy_time_step = 0d0
 Current Time step.
 
double precision energy_time_step_n = 0d0
 Previous time step.
 
double precision energy_time_step_nm1 = 0d0
 Previous -1 time step.
 
integer energy_time_order_discretization = time_order_1
 Time order discretization.
 
integer energy_explicit_time_order_discretization = time_order_nssp32
 Explicit time order discretization.
 
logical energy_use_explicit_terms_accumulator = .false.
 A switch for when to use explicit accumulator.
 
Boundary condition variables
type(t_boundary_conditionenergy_boundary_condition
 Boundary condition.
 
Initializer
class(t_scalar_initializer), pointer energy_initializer => null()
 Initial condition initializer.
 
class(t_cell_bc_initializer), pointer energy_bc_initializer => null()
 Boundary conditions initializer.
 
class(t_energy_ibc_initializer_item), dimension(:), allocatable energy_ibc_initializer
 Immersed boundary conditions initializers.
 
class(t_scalar_initializer), pointer energy_source_term_initializer => null()
 Source term initializer.
 
class(t_scalar_initializer), pointer energy_linear_term_initializer => null()
 Linear term initializer.
 
Logical list to activate terms of the equation
integer energy_equation_formulation = energy_equation_formulation_cp
 Has source term?
 
logical energy_has_source_term = .false.
 Has source term?
 
logical energy_has_advection_term = .true.
 Has advection term?
 
logical energy_has_diffusion_term = .true.
 Has diffusion term?
 
logical energy_has_viscous_dissipation_term = .false.
 Has viscous dissipation term?
 
logical energy_has_div_u_advection_term = .true.
 Has \( div(\mathbf{u}) \) advection term?
 
logical energy_has_temporal_term = .true.
 Has temporal term?
 
logical energy_has_linear_term = .false.
 Has linear term?
 
logical energy_has_phase_change = .false.
 Has phase change?
 
logical energy_has_phase_thermal_resistance = .false.
 Has phase resistance?
 
logical energy_has_immersed_boundaries = .false.
 Flag to enable immersed boundaries for the energy equation.
 
Variables related to immersed boundaries
integer, dimension(:), allocatable energy_isd_target
 List of enabled immersed boundaries for the energy equation.
 
integer n_ibc_temperature = 0
 Number of immersed boundaries enabled for the energy equation.
 
logical energy_ib_has_one_sided_inner_discretization
 One sided discretization close to immersed boundaries.
 
integer, dimension(:), allocatable energy_ib_inner_discretization_order
 
Variables associated to the discretization of the advection term
integer energy_diffusion_term_discretization_type = implicit_discretization
 Diffusion term discretization type (implicit or explicit)
 
integer energy_diffusion_term_scheme = cell_centered_o2_diffusion_scheme
 Diffusion term scheme.
 
integer energy_diffusion_explicit_time_order_discretization = time_order_1
 Diffusion term discretization (temporal discretization)
 
integer energy_advection_term_discretization_type = implicit_discretization
 Advection term discretization type (implicit or explicit)
 
integer energy_advection_term_scheme = cell_centered_o2_advection_scheme
 Advection term scheme.
 
integer energy_advection_term_splitting_scheme = lie_trotter_splitting
 Advection term: Splitting Method for Lax-Wendroff TVD Superbee.
 
double precision, dimension(3) energy_splitting_time_coeff =1d0
 
logical energy_advection_term_dir_split = .false.
 Advection term: directional splitting option.
 
type(t_fv_flux), parameter default_energy_advection_explicit_flux = default_flux_godunov
 Fluxes type The default explicit cell advection flux.
 
type(t_fv_fluxenergy_advection_explicit_flux = default_energy_advection_explicit_flux
 Fluxes type The effective explicit cell advection flux.
 
logical is_energy_fully_explicit = .false.
 Energy Equations Fully Explicit.
 
Miscellaneous variables
logical energy_has_ghost_boundary_cells = .false.
 Ghost boudary cell choice.
 
type(t_cell_stencilenergy_stencil
 Stencil of the energy equation.
 
integer energy_enforced_stencil = -1
 Enforced stencil.
 
logical energy_has_imposed_value = .false.
 Has imposed value (temperature)?
 
double precision, dimension(3) temperature_imposed_point = [0d0, 0d0, COORD_Z_2D]
 Imposed value.
 
double precision temperature_imposed_value = huge(0d0)
 
Linear system solver variables
type(t_ls_mapenergy_ls_map
 Mapping variables.
 
class(t_base_solver), allocatable energy_solver
 Linear system solver.
 
Phase thermal resistance variables
integer, dimension(:,:), allocatable energy_phase_thermal_resistance_index
 Interface index.
 
double precision, dimension(:), allocatable energy_phase_thermal_resistance
 Resistance values.
 
Phase field variables
double precision phase_field_mobility
 Mobility parameter in Allen-Cahn equation.
 
double precision phase_field_energy_wall
 Energy wall parameter in Allen-Cahn equation.
 
double precision phase_field_thickness
 Thickness parameter in Allen-Cahn equation.
 
logical phase_field_is_isothermal = .false.
 Activate manual setting of the undercooling energy.
 
Phase field linear system solver
type(t_ls_mapphase_field_ls_map
 Mapping variables.
 
class(t_base_solver), allocatable phase_field_solver
 Linear system solver.
 
class(t_scalar_initializer), allocatable phase_field_initializer
 Phase field initializer.
 

Phase change variables

enum  {
  phase_change_iterative , phase_change_mof , phase_change_apparent_heat_capacity , phase_change_linearized_enthalpy ,
  phase_change_phase_field
}
 
integer energy_phase_change_method = phase_change_iterative
 Phase change method.
 
integer energy_phase_change_liquid_phase = 1
 Phase number of the liquid.
 
integer energy_phase_change_solid_phase = 2
 Phase number of the solid.
 
integer energy_phase_change_inert = 0
 Phase number of the inert phase (do not modify this value)
 
integer energy_phase_change_max_iter = 1
 Phase change max iteration.
 
double precision energy_melting_temperature = 0d0
 Melting temperature.
 
double precision energy_latent_heat = 0d0
 Latent heat.
 
double precision energy_phase_change_relaxation = 1d0
 Phase change relaxation factor (> 0.0)
 
double precision energy_phase_change_tolerance = epsilon(energy_phase_change_tolerance)
 Phase change tolerance value.
 
double precision energy_phase_change_smoother = 1d0
 Phase change tolerance value.