|
| integer | variables_navier::navier_contact_line_model = navier_contact_line_model_none |
| | The contact line model.
|
| |
| logical | variables_navier::navier_has_slip_velocity = .false. |
| |
| logical | variables_navier::velocity_is_enforced = .false. |
| |
| logical | variables_navier::is_pressure_increment_matrix_not_invertible = .false. |
| | Boolean to check if pressure increment matrix is invertible.
|
| |
| integer | variables_navier::pressure_increment_invertible_matrix_method = penalization |
| | If matrix is not invertible, 2 methods can be used to solve the linear system.
|
| |
| integer | variables_navier::pressure_increment_penalized_cell = back_bottom_left_corner |
| | If matrix is not invertible, next integer sets the corner that will be penalized to 0.
|
| |
|
| logical | variables_navier::is_compressible = .false. |
| | Compressible flow.
|
| |
| logical | variables_navier::compressible_has_predict_density = .true. |
| |
| logical | variables_navier::compressible_has_update_density_eos = .true. |
| |
| logical | variables_navier::compressible_has_speed_of_sound_formulation = .true. |
| |
| logical | variables_navier::compressible_has_speed_of_sound_wood_model = .true. |
| |
| logical | variables_navier::compressible_has_predict_density_eos_initialization = .false. |
| |
| logical | variables_navier::is_boussinesq_approximation = .false. |
| | Boussinesq approximation.
|
| |
| logical | variables_navier::momentum_has_source_term = .false. |
| | Has momentum source term?
|
| |
| logical | variables_navier::pressure_has_source_term = .false. |
| | Has pressure source term.
|
| |
| logical | variables_navier::continuity_has_source_term = .false. |
| | Has continuity source term.
|
| |
| logical | variables_navier::momentum_has_linear_term = .false. |
| | Has momentum linear term?
|
| |
| logical | variables_navier::navier_has_nonlinear_momentum_term = .true. |
| | Has non linear momentum term?
|
| |
| logical | variables_navier::navier_has_stress_term = .true. |
| | Has stress (diffusion) term?
|
| |
| logical | variables_navier::navier_has_momentum_equation = .true. |
| | Has momentum equation.
|
| |
| logical | variables_navier::navier_has_div_u_advection_term = .true. |
| | Substract \( u \cdot div(u) \) for pure advection (incompressible flows)
|
| |
| logical | variables_navier::navier_has_brinkman_term = .false. |
| | Has Brinkman term?
|
| |
| logical | variables_navier::navier_has_carman_kozeny_term = .false. |
| | Has Carman-Kozeny term?
|
| |
| logical | variables_navier::navier_has_gravity_term = .false. |
| | Has gravity term?
|
| |
| logical | variables_navier::navier_has_surface_tension_term = .false. |
| | Has surface tension term?
|
| |
| logical | variables_navier::navier_has_grad_div_term = .false. |
| | Has \( \nabla(\nabla \cdot \mathbf{u}) \) term?
|
| |
| logical | variables_navier::navier_has_temporal_term = .true. |
| | Has temporal term?
|
| |
| logical | variables_navier::navier_has_immersed_boundaries = .false. |
| | Flag to enable immersed boundaries for the Navier-Stokes equation.
|
| |
| logical | variables_navier::density_has_immersed_boundaries = .false. |
| | Flag to enable density immersed boundaries for the Navier-Stokes equation.
|
| |
| logical | variables_navier::navier_has_pressure_term = .true. |
| | Flag to disable pressure term.
|
| |
| logical | variables_navier::navier_has_viscous_term = .true. |
| | Flag to disable viscous term.
|
| |
|
| integer, dimension(:), allocatable | variables_navier::navier_isd_target |
| | List of enabled immersed boundaries for the Νavier-Stokes equation.
|
| |
| integer, dimension(:), allocatable | variables_navier::density_isd_target |
| | List of enabled immersed boundaries for the density Νavier-Stokes equation.
|
| |
| integer | variables_navier::n_ibc_velocity = 0 |
| | Number of immersed boundaries enabled for the Navier-Stokes equation.
|
| |
| integer | variables_navier::n_ibc_density = 0 |
| | Number of density immersed boundaries enabled for the Navier-Stokes equation.
|
| |
| logical | variables_navier::navier_ib_has_one_sided_inner_discretization |
| | One sided discretization close to immersed boundaries.
|
| |
| integer, dimension(:), allocatable | variables_navier::navier_ib_inner_discretization_order |
| |
| integer, dimension(:), allocatable | variables_navier::density_ib_inner_discretization_order |
| |
|
| double precision, dimension(3) | variables_navier::gravity_vector = 0d0 |
| | Gravity vector.
|
| |
| logical | variables_navier::navier_enable_driving_pressure = .false. |
| | Driving pressure (for single phase flows)
|
| |
| integer | variables_navier::navier_gravity_temporal_method = time_method_explicit |
| | Gravity temporal method,.
|
| |
| double precision | variables_navier::surface_tension_coeff = 0d0 |
| | Surface tension.
|
| |
| integer | variables_navier::navier_surface_tension_temporal_method = time_method_implicit |
| | Surface tension temporal method,.
|
| |
| logical | variables_navier::navier_surface_tension_is_sharp = .false. |
| |
| logical | variables_navier::navier_enable_surface_tension_grid_rotation = .true. |
| | Option to consider grid rotation for surface tension.
|
| |
| logical | variables_navier::navier_has_compute_bulk_pressure_for_eos = .false. |
| | Option to use bulk pressure for EOS (compressible multiphase flow)
|
| |
| integer | variables_navier::navier_bulk_pressure_for_eos_method =bulk_pressure_for_eos_method_curvature |
| |
|
| double precision | variables_navier::navier_time_step = 0d0 |
| | Current Time step Current Time step.
|
| |
| double precision | variables_navier::navier_time_step_n = 0d0 |
| | Previous time step.
|
| |
| integer | variables_navier::navier_time_order_discretization = time_order_1 |
| | Time order discretization.
|
| |
| integer | variables_navier::navier_nonlinear_explicit_time_order_discretization = time_order_1 |
| | Time order discretization for explicit schemes.
|
| |
| logical | variables_navier::navier_use_explicit_terms_accumulator = .false. |
| | A switch for when to use explicit accumulator.
|
| |
|
| type(t_boundary_condition_face) | variables_navier::navier_boundary_condition |
| | Boundary condition.
|
| |
| type(t_boundary_condition) | variables_navier::pressure_increment_boundary_condition |
| |
| type(t_boundary_condition) | variables_navier::pressure_boundary_condition |
| |
| type(t_boundary_condition) | variables_navier::density_boundary_condition |
| |
|
| class(t_density_ibc_initializer_item), dimension(:), allocatable | variables_navier::density_ibc_initializer |
| | density immersed boundary conditions initializers
|
| |
| class(t_vector_initializer), pointer | variables_navier::velocity_initializer => null() |
| | Initial condition initializer.
|
| |
| class(t_scalar_initializer), pointer | variables_navier::density_initializer => null() |
| | density initializer
|
| |
| class(t_scalar_initializer), pointer | variables_navier::pressure_initializer => null() |
| | Pressure initializer.
|
| |
| class(t_scalar_initializer), pointer | variables_navier::pressure_source_term_initializer => null() |
| | Pressure source term initializer.
|
| |
| class(t_scalar_initializer), pointer | variables_navier::continuity_source_term_initializer => null() |
| | Continuity source term initializer.
|
| |
| class(t_face_bc_initializer), pointer | variables_navier::velocity_bc_initializer => null() |
| | Boundary conditions initializer.
|
| |
| class(t_cell_bc_initializer), pointer | variables_navier::density_bc_initializer => null() |
| | density Boundary conditions initializer
|
| |
| class(t_navier_ibc_initializer_item), dimension(:), allocatable | variables_navier::velocity_ibc_initializer |
| | Immersed boundary conditions.
|
| |
| class(t_vector_initializer), pointer | variables_navier::momentum_source_term_initializer => null() |
| | Source term initializer.
|
| |
| class(t_vector_initializer), pointer | variables_navier::momentum_linear_term_initializer => null() |
| | Linear term initializer.
|
| |
|
| logical | variables_navier::navier_has_hydrostatic_pressure_initialization = .false. |
| | Flag to enable the initialization of hydrostatic pressure.
|
| |
| double precision | variables_navier::navier_hydrostatic_solver_tolerance = 1d-15 |
| | Tolerance of the hydrostatic pressure solver.
|
| |
| integer | variables_navier::navier_hydrostatic_solver_max_iter = 100 |
| | Maximum number of iterations of the hydrostatic pressure solver.
|
| |
|
| logical | variables_navier::is_navier_momentum_preserving_method = .false. |
| | Enable conservative method.
|
| |
| integer | variables_navier::navier_momentum_preserving_method_prediction = navier_momentum_preserving_method_prediction_on_cells |
| |
|
| logical | variables_navier::navier_is_disable_velocity_pressure_method = .false. |
| | Disable velocity pressure method?
|
| |
| integer | variables_navier::navier_velocity_pressure_method = incremental_pressure_correction |
| | Velocity pressure method choice.
|
| |
| logical | variables_navier::is_pressure_increment_poisson_dodd_approximation = .false. |
| | Pressure increment poisson approximation method choice (Dodd and/or Frantzis)
|
| |
| logical | variables_navier::is_pressure_increment_poisson_frantzis_approximation = .false. |
| |
| logical | variables_navier::is_pressure_increment_poisson_equation_bc_time_dependent = .false. |
| | Boundary condition types for the pressure increment Poisson equation are constant (values can change)
|
| |
| integer | variables_navier::poisson_approximation_iteration_start = 5 |
| | Number of time iterations to skip.
|
| |
| logical | variables_navier::navier_do_project_initial_velocity = .false. |
| | Initial velocity projection.
|
| |
| integer | variables_navier::pressure_scheme = cell_centered_o2_diffusion_scheme |
| | Implicit associated scheme.
|
| |
| integer | variables_navier::pressure_advection_scheme = pressure_advection_scheme_uncentered_o2 |
| | Pressure advection scheme (compressible flow only)
|
| |
| integer | variables_navier::density_advection_scheme = density_advection_scheme_weno5 |
| | density advection scheme (compressible flow only)
|
| |
| logical | variables_navier::subtract_mean_pressure_to_pressure = .false. |
| | Substract integrale of pressure to pressure field.
|
| |
|
| integer | variables_navier::navier_diffusion_term_discretization_type = implicit_discretization |
| | Diffusion term discretization type (implicit or explicit)
|
| |
| integer | variables_navier::navier_diffusion_term_scheme = navier_diffusion_o2_centered_scheme |
| | Diffusion term scheme.
|
| |
| integer | variables_navier::navier_diffusion_explicit_time_order_discretization = time_order_1 |
| | Time order discretization for explicit schemes.
|
| |
|
| integer | variables_navier::navier_nonlinear_term_discretization_type = implicit_discretization |
| | Nonlinear term discretization type (implicit or explicit)
|
| |
| integer | variables_navier::navier_nonlinear_term_scheme = navier_nonlinear_centered_o2_scheme |
| | Nonlinear term scheme.
|
| |
| integer | variables_navier::navier_nonlinear_term_splitting_scheme = navier_lie_trotter_splitting |
| | Nonlinear term: Splitting Method for Lax-Wendroff TVD Superbee.
|
| |
| double precision, dimension(3) | variables_navier::navier_splitting_time_coeff = 1d0 |
| | Operator splitting method time step modifier.
|
| |
| logical | variables_navier::is_navier_specify_nonlinear_term_scheme_tsf = .false. |
| | Specify a CFL factor for explicit sub iterations (tsf stand for temporal_stability_factor)
|
| |
| double precision | variables_navier::navier_nonlinear_term_scheme_temporal_stability_factor = -1d0 |
| | CFL used for explicit sub iterations (if is_navier_specify_nonlinear_term_scheme_temporal_stability_factor, otherwise, using default values)
|
| |
| logical | variables_navier::navier_nonlinear_term_dir_split = .false. |
| | Advection term: directional splitting option.
|
| |
| logical | variables_navier::is_navier_fully_explicit = .false. |
| | Fully explicit.
|
| |
| type(t_fv_flux), parameter | variables_navier::default_navier_nonlinear_explicit_flux = default_flux_godunov |
| | Fluxes type The default explicit nonlinear term flux.
|
| |
| type(t_fv_flux) | variables_navier::navier_nonlinear_explicit_flux = default_navier_nonlinear_explicit_flux |
| | Fluxes type The effective explicit nonlinear term flux.
|
| |
|
| logical | variables_navier::navier_has_ghost_boundary_cells = .false. |
| | Ghost boundary cell choice.
|
| |
| logical | variables_navier::pressure_has_ghost_boundary_cells = .false. |
| |
| type(t_face_stencil) | variables_navier::navier_stencil |
| | Stencils.
|
| |
| type(t_cell_stencil) | variables_navier::pressure_stencil |
| |
| integer | variables_navier::navier_enforced_stencil = -1 |
| | Enforced stencil.
|
| |
| integer | variables_navier::pressure_increment_enforced_stencil = -1 |
| |
| logical | variables_navier::pressure_has_imposed_value = .false. |
| | Has imposed value (pressure)?
|
| |
| logical | variables_navier::pressure_has_imposed_value_reference_value = .false. |
| |
| double precision, dimension(3) | variables_navier::pressure_imposed_point = [0d0, 0d0, COORD_Z_2D] |
| | Imposed value.
|
| |
| double precision | variables_navier::pressure_imposed_value = huge(0d0) |
| |
| logical | variables_navier::pressure_has_time_varying_boundary_condition = .false. |
| | Variable pressure boundary condition.
|
| |
| type(t_boundary_logical) | variables_navier::pressure_boundary_is_time_varying |
| |
| type(t_boundary_double) | variables_navier::pressure_boundary_initial_value |
| |
| type(t_boundary_double) | variables_navier::pressure_boundary_final_value |
| |
| type(t_boundary_double) | variables_navier::pressure_boundary_final_time_reference |
| |
|
| type(t_face_ls_map) | variables_navier::navier_ls_map |
| | Mapping variables.
|
| |
| type(t_ls_map) | variables_navier::pressure_ls_map |
| |
| class(t_linear_solver), allocatable | variables_navier::momentum_solver |
| | Linear system solver.
|
| |
| class(t_linear_solver), allocatable | variables_navier::pressure_solver |
| |
| class(t_linear_solver), allocatable | variables_navier::ibc_velocity_extrapolation_solver |
| | Solver for the extrapolation step of the Navier-Stokes resolution.
|
| |
|
| integer, dimension(:,:), allocatable | variables_navier::navier_speed_of_sound_model_index |
| | Interface index to identify each phase for the Wood speed of sound model.
|
| |
|
| double precision | variables_navier::l2_divergence |
| | Divergence after correction.
|
| |
| double precision | variables_navier::linf_divergence |
| |
| double precision | variables_navier::prediction_l2_divergence |
| | Predicted divergence (before correction)
|
| |
| double precision | variables_navier::prediction_linf_divergence |
| |
|
| integer | variables_navier::ui_refined_grid_velocity_method |
| | Refined grid method for the velocity interpolation/reconstruction.
|
| |