[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
PHiLiP::FlowSolver::FlowSolverCaseBase< dim, nstate > Class Template Referenceabstract
Inheritance diagram for PHiLiP::FlowSolver::FlowSolverCaseBase< dim, nstate >:
Collaboration diagram for PHiLiP::FlowSolver::FlowSolverCaseBase< dim, nstate >:

Public Member Functions

 FlowSolverCaseBase (const Parameters::AllParameters *const parameters_input)
 Constructor.
 
virtual ~FlowSolverCaseBase ()=default
 Destructor.
 
void display_flow_solver_setup (std::shared_ptr< DGBase< dim, double >> dg) const
 Displays the flow setup parameters.
 
virtual std::shared_ptr< Triangulation > generate_grid () const =0
 Pure Virtual function to generate the grid.
 
virtual void set_higher_order_grid (std::shared_ptr< DGBase< dim, double >> dg) const
 Set higher order grid.
 
virtual void compute_unsteady_data_and_write_to_table (const std::shared_ptr< ODE::ODESolverBase< dim, double >> ode_solver, const std::shared_ptr< DGBase< dim, double >> dg, const std::shared_ptr< dealii::TableHandler > unsteady_data_table)
 
virtual void compute_unsteady_data_and_write_to_table (const unsigned int current_iteration, const double current_time, const std::shared_ptr< DGBase< dim, double >> dg, const std::shared_ptr< dealii::TableHandler > unsteady_data_table)
 Virtual function to write unsteady snapshot data to table.
 
virtual double get_constant_time_step (std::shared_ptr< DGBase< dim, double >> dg) const
 Virtual function to compute the constant time step.
 
virtual double get_adaptive_time_step (std::shared_ptr< DGBase< dim, double >> dg) const
 Virtual function to compute the adaptive time step.
 
virtual double get_adaptive_time_step_initial (std::shared_ptr< DGBase< dim, double >> dg)
 Virtual function to compute the initial adaptive time step.
 
virtual void steady_state_postprocessing (std::shared_ptr< DGBase< dim, double >> dg) const
 Virtual function for postprocessing when solving for steady state.
 
void set_time_step (const double time_step_input)
 Setter for time step.
 

Public Attributes

std::shared_ptr< InitialConditionFunction< dim, nstate, double > > initial_condition_function
 Initial condition function.
 

Protected Member Functions

void add_value_to_data_table (const double value, const std::string value_string, const std::shared_ptr< dealii::TableHandler > data_table) const
 Add a value to a given data table with scientific format.
 
virtual void display_additional_flow_case_specific_parameters () const =0
 Display additional more specific flow case parameters.
 
double get_time_step () const
 Getter for time step.
 

Protected Attributes

const Parameters::AllParameters all_param
 All parameters.
 
const MPI_Comm mpi_communicator
 MPI communicator.
 
const int mpi_rank
 MPI rank.
 
const int n_mpi
 Number of MPI processes.
 
dealii::ConditionalOStream pcout
 ConditionalOStream. More...
 

Private Member Functions

std::string get_pde_string () const
 Returns the pde type string from the all_param class member.
 
std::string get_flow_case_string () const
 Returns the flow case type string from the all_param class member.
 

Private Attributes

double time_step
 Current time step.
 

Detailed Description

template<int dim, int nstate>
class PHiLiP::FlowSolver::FlowSolverCaseBase< dim, nstate >

Definition at line 24 of file flow_solver_case_base.h.

Member Function Documentation

◆ compute_unsteady_data_and_write_to_table()

template<int dim, int nstate>
void PHiLiP::FlowSolver::FlowSolverCaseBase< dim, nstate >::compute_unsteady_data_and_write_to_table ( const std::shared_ptr< ODE::ODESolverBase< dim, double >>  ode_solver,
const std::shared_ptr< DGBase< dim, double >>  dg,
const std::shared_ptr< dealii::TableHandler >  unsteady_data_table 
)
virtual

Virtual function to write unsteady snapshot data to table Defaults to passing only ode_solver->current_iteration and ode_solver->current_time to the second definition

Reimplemented in PHiLiP::FlowSolver::PeriodicTurbulence< dim, nstate >, and PHiLiP::FlowSolver::PeriodicEntropyTests< dim, nstate >.

Definition at line 189 of file flow_solver_case_base.cpp.

Member Data Documentation

◆ pcout

template<int dim, int nstate>
dealii::ConditionalOStream PHiLiP::FlowSolver::FlowSolverCaseBase< dim, nstate >::pcout
protected

ConditionalOStream.

Used as std::cout, but only prints if mpi_rank == 0

Definition at line 82 of file flow_solver_case_base.h.


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