[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
euler_bump_optimization.h
1 #ifndef __EULER_BUMP_OPTIMIZATION_H__
2 #define __EULER_BUMP_OPTIMIZATION_H__
3 
4 #include <deal.II/grid/manifold_lib.h>
5 
6 #include "dg/dg_base.hpp"
7 #include "parameters/all_parameters.h"
8 #include "physics/physics.h"
9 #include "tests.h"
10 
11 namespace PHiLiP {
12 namespace Tests {
13 
15 class BumpManifold2: public dealii::ChartManifold<2,2,2> {
16 public:
17  virtual dealii::Point<2> pull_back(const dealii::Point<2> &space_point) const override;
18  virtual dealii::Point<2> push_forward(const dealii::Point<2> &chart_point) const override;
19  virtual dealii::DerivativeForm<1,2,2> push_forward_gradient(const dealii::Point<2> &chart_point) const override;
20 
21  virtual std::unique_ptr<dealii::Manifold<2,2> > clone() const override;
22 };
23 
25 template <int dim, int nstate>
27 {
28 public:
30  EulerBumpOptimization () = delete;
32 
34  explicit EulerBumpOptimization(const Parameters::AllParameters *const parameters_input);
35 
37 
47  int run_test () const;
48 
49 private:
51  int optimize_target_bump (const unsigned int nx_ffd, const unsigned int poly_degree) const;
52 
53 protected:
54 
55  // // Integrate entropy over the entire domain to use as a functional.
56  // double integrate_entropy_over_domain(DGBase<dim,double> &dg) const;
57 };
58 
59 
60 // /// Manufactured grid convergence
61 // /** Currently the main function as all my test cases simply
62 // * check for optimal convergence of the solution
63 // */
64 // template<int dim>
65 // int manufactured_grid_convergence (Parameters::AllParameters &parameters);
66 
67 } // Tests namespace
68 } // PHiLiP namespace
69 #endif
70 
virtual dealii::Point< 2 > pull_back(const dealii::Point< 2 > &space_point) const override
See dealii::Manifold.
virtual dealii::Point< 2 > push_forward(const dealii::Point< 2 > &chart_point) const override
See dealii::Manifold.
virtual std::unique_ptr< dealii::Manifold< 2, 2 > > clone() const override
See dealii::Manifold.
Files for the baseline physics.
Definition: ADTypes.hpp:10
Main parameter class that contains the various other sub-parameter classes.
Performs grid convergence for various polynomial degrees.
virtual dealii::DerivativeForm< 1, 2, 2 > push_forward_gradient(const dealii::Point< 2 > &chart_point) const override
See dealii::Manifold.
Base class of all the tests.
Definition: tests.h:17