21 #ifndef __mast__pressure_function_h__ 22 #define __mast__pressure_function_h__ 30 #include "libmesh/system.h" 31 #include "libmesh/mesh_function.h" 37 class FrequencyFunction;
38 class SystemInitialization;
39 class FlightCondition;
78 void init(
const libMesh::NumericVector<Real>& steady_sol,
79 const libMesh::NumericVector<Real>* small_dist_sol =
nullptr);
130 std::unique_ptr<libMesh::MeshFunction>
137 std::unique_ptr<libMesh::NumericVector<Real> >
_sol;
142 std::unique_ptr<libMesh::NumericVector<Real> >
_dsol;
147 #endif // __mast__pressure_function_h__ std::unique_ptr< libMesh::MeshFunction > _sol_function
mesh function that interpolates the solution
PressureFunction(MAST::SystemInitialization &sys, MAST::FlightCondition &flt)
void init(const libMesh::NumericVector< Real > &steady_sol, const libMesh::NumericVector< Real > *small_dist_sol=nullptr)
initiate the mesh function for this solution
Real _ref_pressure
the function will return pressure differential with respect to reference pressue defined in the fligh...
MAST::FlightCondition & _flt_cond
flight condition
virtual void operator()(const libMesh::Point &p, const Real t, Real &press) const
provides the value of the pressure at the specified point and time
std::unique_ptr< libMesh::NumericVector< Real > > _sol
steady part of solution
virtual void perturbation(const libMesh::Point &p, const Real t, Real &dpress) const
provides the pressure perturbation.
void use_reference_pressure(Real ref_press)
sets the mode of the pressure value return
This creates the base class for functions that have a saptial and temporal dependence, and provide sensitivity operations with respect to the functions and parameters.
std::unique_ptr< libMesh::NumericVector< Real > > _dsol
small-disturbance solution
std::unique_ptr< libMesh::MeshFunction > _dsol_function
void set_calculate_cp(bool if_cp)
sets the mode of the pressure value return
virtual ~PressureFunction()
MAST::SystemInitialization & _system
system associated with the mesh and solution vector
bool _if_cp
the function will return cp instead of pressure if this option is true.