32 #include "libmesh/boundary_info.h" 117 f = RealVectorX::Zero(3);
141 df = RealVectorX::Zero(3);
165 f = RealVectorX::Zero(3);
168 dfdX = RealMatrixX::Zero(3, dq_dX.size());
174 dq_dX +=
_n_vec.transpose() * dfdX;
MAST::NonlinearSystem & system()
This class provides the necessary functionality for spatial discretization of the conservative fluid ...
virtual Real output_sensitivity_total(const MAST::FunctionBase &p)
virtual ~IntegratedForceOutput()
Real _force
integrated value of the force
virtual void side_integrated_force_sensitivity(const MAST::FunctionBase &p, const unsigned int s, RealVectorX &f)
const MAST::GeomElem & elem() const
This provides the base class for definitin of element level contribution of output quantity in an ana...
virtual Real output_total()
MAST::ElementBase * _physics_elem
virtual void side_integrated_force(const unsigned int s, RealVectorX &f, RealMatrixX *dfdX=nullptr)
surface integrated force
virtual void zero_for_sensitivity()
zeroes the output quantity values stored inside this object so that assembly process can begin...
virtual void output_derivative_for_elem(RealVectorX &dq_dX)
returns the output quantity derivative with respect to state vector in dq_dX.
unsigned int n_sides_quadrature_elem() const
number of sides on quadrature element.
Matrix< Real, Dynamic, Dynamic > RealMatrixX
virtual bool if_evaluate_for_boundary(const MAST::GeomElem &elem, const unsigned int s) const
checks to see if the specified side of the element needs evaluation of the output contribution...
Matrix< Real, Dynamic, 1 > RealVectorX
virtual void evaluate_sensitivity(const MAST::FunctionBase &p)
this evaluates all relevant sensitivity components on the element.
This class acts as a wrapper around libMesh::Elem for the purpose of providing a uniform interface fo...
MAST::AssemblyBase * _assembly
virtual void init(const MAST::GeomElem &elem)
initialize for the element.
Real _force_sens
integrated value of the sensitivity of force
IntegratedForceOutput(const RealVectorX &nvec)
RealVectorX _n_vec
vector along which the force is measured
virtual void zero_for_analysis()
zeroes the output quantity values stored inside this object so that assembly process can begin...
virtual void evaluate()
this is the abstract interface to be implemented by derived classes.
MAST::SystemInitialization * _system
const MAST::PhysicsDisciplineBase & discipline() const