1 #include "target_functional.h" 8 template <
int dim,
int nstate,
typename real>
25 const dealii::LinearAlgebra::distributed::Vector<real> &
target_solution,
32 template <
typename real2>
35 const dealii::Point<dim,real2> &,
36 const std::array<real2,nstate> &,
37 const std::array<real,nstate> &,
38 const std::array<dealii::Tensor<1,dim,real2>,nstate> &,
39 const std::array<dealii::Tensor<1,dim,real2>,nstate> &)
const 49 const dealii::Point<dim,real> &phys_coord,
50 const std::array<real,nstate> &soln_at_q,
51 const std::array<real,nstate> &target_soln_at_q,
52 const std::array<dealii::Tensor<1,dim,real>,nstate> &soln_grad_at_q,
53 const std::array<dealii::Tensor<1,dim,real>,nstate> &target_soln_grad_at_q)
const override 55 return evaluate_volume_integrand<>(physics, phys_coord, soln_at_q, target_soln_at_q, soln_grad_at_q, target_soln_grad_at_q);
60 const dealii::Point<dim,FadFadType> &phys_coord,
61 const std::array<FadFadType,nstate> &soln_at_q,
62 const std::array<real,nstate> &target_soln_at_q,
63 const std::array<dealii::Tensor<1,dim,FadFadType>,nstate> &soln_grad_at_q,
64 const std::array<dealii::Tensor<1,dim,FadFadType>,nstate> &target_soln_grad_at_q)
const override 66 return evaluate_volume_integrand<>(physics, phys_coord, soln_at_q, target_soln_at_q, soln_grad_at_q, target_soln_grad_at_q);
Sacado::Fad::DFad< real > FadType
Sacado AD type for first derivatives.
const bool uses_solution_gradient
Will evaluate solution gradient at quadrature points.
real evaluate_volume_integrand(const PHiLiP::Physics::PhysicsBase< dim, nstate, real > &physics, const dealii::Point< dim, real > &phys_coord, const std::array< real, nstate > &soln_at_q, const std::array< real, nstate > &target_soln_at_q, const std::array< dealii::Tensor< 1, dim, real >, nstate > &soln_grad_at_q, const std::array< dealii::Tensor< 1, dim, real >, nstate > &target_soln_grad_at_q) const override
non-template functions to override the template classes
TargetFunctional base class.
const bool uses_solution_values
Will evaluate solution values at quadrature points.
Base class from which Advection, Diffusion, ConvectionDiffusion, and Euler is derived.
Files for the baseline physics.
Sacado::Fad::DFad< FadType > FadFadType
Sacado AD type that allows 2nd derivatives.
const dealii::LinearAlgebra::distributed::Vector< real > target_solution
Solution used to evaluate target functional.
FadFadType evaluate_volume_integrand(const PHiLiP::Physics::PhysicsBase< dim, nstate, FadFadType > &physics, const dealii::Point< dim, FadFadType > &phys_coord, const std::array< FadFadType, nstate > &soln_at_q, const std::array< real, nstate > &target_soln_at_q, const std::array< dealii::Tensor< 1, dim, FadFadType >, nstate > &soln_grad_at_q, const std::array< dealii::Tensor< 1, dim, FadFadType >, nstate > &target_soln_grad_at_q) const override
non-template functions to override the template classes
TargetBoundaryFunctional(std::shared_ptr< DGBase< dim, real >> dg_input, const dealii::LinearAlgebra::distributed::Vector< real > &target_solution, const bool uses_solution_values=true, const bool uses_solution_gradient=false)
Constructor.
DGBase is independent of the number of state variables.
real2 evaluate_volume_integrand(const PHiLiP::Physics::PhysicsBase< dim, nstate, real2 > &, const dealii::Point< dim, real2 > &, const std::array< real2, nstate > &, const std::array< real, nstate > &, const std::array< dealii::Tensor< 1, dim, real2 >, nstate > &, const std::array< dealii::Tensor< 1, dim, real2 >, nstate > &) const
Zero out the default inverse target volume functional.