1 #ifndef PHILIP_DG_STRONG_LES_HPP 2 #define PHILIP_DG_STRONG_LES_HPP 4 #include "strong_dg.hpp" 5 #include "physics/large_eddy_simulation.h" 6 #include "physics/navier_stokes_model.h" 13 #if PHILIP_DIM==1 // dealii::parallel::distributed::Triangulation<dim> does not work for 1D 14 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::Triangulation<dim>>
16 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::parallel::distributed::Triangulation<dim>>
28 const unsigned int degree,
29 const unsigned int max_degree_input,
30 const unsigned int grid_degree_input,
31 const std::shared_ptr<Triangulation> triangulation_input);
59 #if PHILIP_DIM==1 // dealii::parallel::distributed::Triangulation<dim> does not work for 1D 60 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::Triangulation<dim>>
62 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::parallel::distributed::Triangulation<dim>>
74 const unsigned int degree,
75 const unsigned int max_degree_input,
76 const unsigned int grid_degree_input,
77 const std::shared_ptr<Triangulation> triangulation_input);
96 #if PHILIP_DIM==1 // dealii::parallel::distributed::Triangulation<dim> does not work for 1D 97 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::Triangulation<dim>>
99 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::parallel::distributed::Triangulation<dim>>
111 const unsigned int degree,
112 const unsigned int max_degree_input,
113 const unsigned int grid_degree_input,
114 const std::shared_ptr<Triangulation> triangulation_input);
136 #if PHILIP_DIM==1 // dealii::parallel::distributed::Triangulation<dim> does not work for 1D 137 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::Triangulation<dim>>
139 template <
int dim,
int nspecies,
int nstate,
typename real,
typename MeshType = dealii::parallel::distributed::Triangulation<dim>>
151 const unsigned int degree,
152 const unsigned int max_degree_input,
153 const unsigned int grid_degree_input,
154 const std::shared_ptr<Triangulation> triangulation_input);
204 void set_bulk_flow_quantities();
205 double get_average_wall_shear_stress()
const;
~DGStrongLES()
Destructor.
virtual void update_cellwise_mean_quantities()
Update the cellwise mean quantities.
const double channel_friction_velocity_reynolds_number
Channel Reynolds number based on wall friction velocity.
DGStrongLES_DynamicSmagorinsky class templated on the number of state variables.
typename DGBaseState< dim, nspecies, nstate, real, MeshType >::Triangulation Triangulation
Alias to base class Triangulation.
typename DGStrong< dim, nspecies, nstate, real, MeshType >::Triangulation Triangulation
Alias to base class Triangulation.
const double domain_volume
Domain volume.
std::shared_ptr< Physics::NavierStokesWithModelSourceTerms< dim, nspecies, nstate, real > > pde_model_navier_stokes_double
Contains the Navier-Stokes with model source terms object.
Files for the baseline physics.
DGStrong_ChannelFlow class templated on the number of state variables.
const double channel_centerline_velocity_reynolds_number
const double channel_bulk_velocity_reynolds_number
Main parameter class that contains the various other sub-parameter classes.
const double domain_length_y
Domain length in y-direction.
DGStrong class templated on the number of state variables.
DGStrongLES class templated on the number of state variables.
const double domain_length_z
Domain length in z-direction.
const double domain_length_x
Domain length in x-direction.
DGStrongLES_ShearImproved class templated on the number of state variables.
const double dynamic_smagorinsky_model_constant_clipping_limit
Clipping limit for the Dynamic Smagorinsky model constant.
const double half_channel_height
Half channel height.
const double total_wall_area
Total wall area.
const int number_of_cells_z_direction
Number of cells in z-direction.
void update_model_variables() override
Update the necessary variables declared in src/physics/model.h.
DGStrongLES(const Parameters::AllParameters *const parameters_input, const unsigned int degree, const unsigned int max_degree_input, const unsigned int grid_degree_input, const std::shared_ptr< Triangulation > triangulation_input)
Constructor.
virtual void allocate_model_variables() override
Allocate the necessary variables declared in src/physics/model.h.
void update_cellwise_volume_and_poly_degree()
Update the cellwise volume and polynomial degree.
const int number_of_cells_x_direction
Number of cells in x-direction.
DGBase is independent of the number of state variables.
const double channel_height
Channel height.
const double pi_val
Value of pi.
std::shared_ptr< Physics::LargeEddySimulationBase< dim, nspecies, nstate, real > > pde_model_les_double
Contains the large eddy simulation object.
const int number_of_cells_y_direction
Number of cells in y-direction.