[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
PHiLiP::Parameters::AllParameters Class Reference

Main parameter class that contains the various other sub-parameter classes. More...

#include <all_parameters.h>

Collaboration diagram for PHiLiP::Parameters::AllParameters:

Public Types

enum  RunType { integration_test, flow_simulation }
 Run type.
 
enum  MeshType { default_triangulation, triangulation, parallel_shared_triangulation, parallel_distributed_triangulation }
 Mesh type to be used in defining the triangulation.
 
enum  FluxNodes { GL, GLL }
 Flux nodes type.
 
enum  TwoPointNumericalFlux { KG, IR, CH, Ra }
 Two point numerical flux type for split form.
 
enum  TestType {
  run_control, grid_refinement_study, advection_limiter, burgers_limiter,
  burgers_energy_stability, diffusion_exact_adjoint, euler_gaussian_bump, euler_gaussian_bump_enthalpy,
  euler_gaussian_bump_adjoint, euler_cylinder, euler_cylinder_adjoint, euler_vortex,
  euler_entropy_waves, euler_split_taylor_green, taylor_green_scaling, burgers_split_form,
  optimization_inverse_manufactured, euler_bump_optimization, euler_naca_optimization, shock_1d,
  euler_naca0012, reduced_order, unsteady_reduced_order, convection_diffusion_periodicity,
  POD_adaptation, POD_adaptive_sampling_run, adaptive_sampling_testing, finite_difference_sensitivity,
  advection_periodicity, dual_weighted_residual_mesh_adaptation, anisotropic_mesh_adaptation, taylor_green_vortex_energy_check,
  taylor_green_vortex_restart_check, time_refinement_study, time_refinement_study_reference, rrk_numerical_entropy_conservation_check,
  euler_entropy_conserving_split_forms_check, h_refinement_study_isentropic_vortex, khi_robustness, naca0012_unsteady_check_quick,
  homogeneous_isotropic_turbulence_initialization_check, build_NNLS_problem, hyper_reduction_comparison, hyper_adaptive_sampling_run,
  hyper_reduction_post_sampling, ROM_error_post_sampling, HROM_error_post_sampling, hyper_adaptive_sampling_new_error,
  halton_sampling_run, low_density
}
 Possible integration tests to run.
 
enum  PartialDifferentialEquation {
  advection, diffusion, convection_diffusion, advection_vector,
  burgers_inviscid, burgers_viscous, burgers_rewienski, euler,
  mhd, navier_stokes, physics_model
}
 Possible Partial Differential Equations to solve.
 
enum  ModelType { large_eddy_simulation, reynolds_averaged_navier_stokes }
 Types of models available.
 
enum  BoundaryType { manufactured_dirichlet, manufactured_neumann, manufactured_inout_flow }
 Possible boundary types, NOT IMPLEMENTED YET.
 
enum  SourceTerm { zero, manufactured }
 Possible source terms, NOT IMPLEMENTED YET.
 
enum  ConvectiveNumericalFlux {
  lax_friedrichs, roe, l2roe, central_flux,
  two_point_flux, two_point_flux_with_lax_friedrichs_dissipation, two_point_flux_with_roe_dissipation, two_point_flux_with_l2roe_dissipation
}
 Possible convective numerical flux types.
 
enum  DissipativeNumericalFlux { symm_internal_penalty, bassi_rebay_2, central_visc_flux }
 Possible dissipative numerical flux types.
 
enum  Flux_Reconstruction {
  cDG, cSD, cHU, cNegative,
  cNegative2, cPlus, c10Thousand, cHULumped
}
 Type of correction in Flux Reconstruction.
 
enum  Flux_Reconstruction_Aux {
  kDG, kSD, kHU, kNegative,
  kNegative2, kPlus, k10Thousand
}
 Type of correction in Flux Reconstruction for the auxiliary variables.
 
enum  NonPhysicalBehaviorEnum { return_big_number, abort_run, print_warning }
 Enum of nonphysical behavior.
 
enum  RenumberDofsType { CuthillMckee }
 Renumber dofs type.
 

Public Member Functions

 AllParameters ()
 Constructor.
 
void parse_parameters (dealii::ParameterHandler &prm)
 Retrieve parameters from dealii::ParameterHandler. More...
 

Static Public Member Functions

static void declare_parameters (dealii::ParameterHandler &prm)
 Declare parameters that can be set as inputs and set up the default options. More...
 

Public Attributes

ManufacturedConvergenceStudyParam manufactured_convergence_study_param
 Contains parameters for manufactured convergence study.
 
ODESolverParam ode_solver_param
 Contains parameters for ODE solver.
 
LinearSolverParam linear_solver_param
 Contains parameters for linear solver.
 
EulerParam euler_param
 Contains parameters for the Euler equations non-dimensionalization.
 
NavierStokesParam navier_stokes_param
 Contains parameters for the Navier-Stokes equations non-dimensionalization.
 
ReducedOrderModelParam reduced_order_param
 Contains parameters for the Reduced-Order model.
 
HyperReductionParam hyper_reduction_param
 Contains parameters for Hyperreduction.
 
BurgersParam burgers_param
 Contains parameters for Burgers equation.
 
PhysicsModelParam physics_model_param
 Contains parameters for Physics Model.
 
GridRefinementStudyParam grid_refinement_study_param
 Contains the parameters for grid refinement study.
 
ArtificialDissipationParam artificial_dissipation_param
 Contains parameters for artificial dissipation.
 
LimiterParam limiter_param
 Contains parameters for limiter.
 
FlowSolverParam flow_solver_param
 Contains the parameters for simulation cases (flow solver test)
 
MeshAdaptationParam mesh_adaptation_param
 Constains parameters for mesh adaptation.
 
FunctionalParam functional_param
 Contains parameters for functional.
 
TimeRefinementStudyParam time_refinement_study_param
 Contains the parameters for time refinement study.
 
unsigned int dimension
 Number of dimensions. Note that it has to match the executable PHiLiP_xD.
 
RunType run_type
 Selected RunType from the input file.
 
MeshType mesh_type
 Store selected MeshType from the input file.
 
int overintegration
 Number of additional quadrature points to use. More...
 
bool use_weak_form
 Flag to use weak or strong form of DG.
 
FluxNodes flux_nodes_type
 Store selected FluxNodes from the input file.
 
bool use_collocated_nodes
 Flag for using collocated nodes; determined based on flux_nodes_type and overintegration input parameters.
 
bool use_split_form
 Flag to use split form.
 
TwoPointNumericalFlux two_point_num_flux_type
 Store selected TwoPointNumericalFlux from the input file.
 
bool use_curvilinear_split_form
 Flag to use curvilinear metric split form.
 
bool use_weight_adjusted_mass
 Flag to use weight-adjusted Mass Matrix for curvilinear elements.
 
bool store_residual_cpu_time
 Flag to store the residual local processor cput time.
 
bool use_periodic_bc
 Flag to use periodic BC. More...
 
bool use_curvilinear_grid
 Flag to use curvilinear grid.
 
bool use_energy
 Flag to use an energy monotonicity test.
 
bool use_L2_norm
 Flag to use an L2 energy monotonicity test (for FR)
 
bool use_classical_FR
 Flag to use a Classical ESFR scheme where only the surface is reconstructed.
 
bool store_global_mass_matrix
 Flag to store global mass matrix.
 
double sipg_penalty_factor
 Scaling of Symmetric Interior Penalty term to ensure coercivity.
 
bool use_invariant_curl_form
 Flag to use invariant curl form for metric cofactor operator.
 
bool use_inverse_mass_on_the_fly
 Flag to use inverse mass matrix on-the-fly for explicit solves.
 
bool check_valid_metric_Jacobian
 Flag to check if the metric Jacobian is valid when high-order grid is constructed.
 
std::string energy_file
 Energy file.
 
int nstate
 Number of state variables. Will depend on PDE.
 
TestType test_type
 Store selected TestType from the input file.
 
PartialDifferentialEquation pde_type
 Store the PDE type to be solved.
 
ModelType model_type
 Store the model type.
 
ConvectiveNumericalFlux conv_num_flux_type
 Store convective flux type.
 
DissipativeNumericalFlux diss_num_flux_type
 Store diffusive flux type.
 
Flux_Reconstruction flux_reconstruction_type
 Store flux reconstruction type.
 
Flux_Reconstruction_Aux flux_reconstruction_aux_type
 Store flux reconstruction type for the auxiliary variables.
 
NonPhysicalBehaviorEnum non_physical_behavior_type
 Specify behavior on nonphysical results.
 
std::string solution_vtk_files_directory_name
 Name of directory for writing solution vtk files.
 
bool output_high_order_grid
 Flag for outputting the high-order grid vtk files.
 
bool enable_higher_order_vtk_output
 Enable writing of higher-order vtk results.
 
bool output_face_results_vtk
 Flag for outputting the surface solution vtk files.
 
bool do_renumber_dofs
 Flag for renumbering DOFs.
 
RenumberDofsType renumber_dofs_type
 Store selected RenumberDofsType from the input file.
 
double matching_surface_jac_det_tolerance
 

Protected Attributes

dealii::ConditionalOStream pcout
 Parallel std::cout that only outputs on mpi_rank==0.
 

Detailed Description

Main parameter class that contains the various other sub-parameter classes.

Definition at line 33 of file all_parameters.h.

Member Function Documentation

◆ declare_parameters()

void PHiLiP::Parameters::AllParameters::declare_parameters ( dealii::ParameterHandler &  prm)
static

Declare parameters that can be set as inputs and set up the default options.

This subroutine should call the sub-parameter classes static declare_parameters() such that each sub-parameter class is responsible to declare their own parameters.

Definition at line 34 of file all_parameters.cpp.

◆ parse_parameters()

void PHiLiP::Parameters::AllParameters::parse_parameters ( dealii::ParameterHandler &  prm)

Retrieve parameters from dealii::ParameterHandler.

This subroutine should call the sub-parameter classes static parse_parameters() such that each sub-parameter class is responsible to parse their own parameters.

Definition at line 377 of file all_parameters.cpp.

Member Data Documentation

◆ matching_surface_jac_det_tolerance

double PHiLiP::Parameters::AllParameters::matching_surface_jac_det_tolerance

Tolerance for checking that the determinant of surface jacobians at element faces matches. Note: Currently only used in weak dg.

Definition at line 314 of file all_parameters.h.

◆ overintegration

int PHiLiP::Parameters::AllParameters::overintegration

Number of additional quadrature points to use.

overintegration = 0 leads to number_quad_points = dg_solution_degree + 1

Definition at line 95 of file all_parameters.h.

◆ use_periodic_bc

bool PHiLiP::Parameters::AllParameters::use_periodic_bc

Flag to use periodic BC.

Not fully tested.

Definition at line 128 of file all_parameters.h.


The documentation for this class was generated from the following files: