32 #include "libmesh/boundary_info.h" 33 #include "libmesh/parallel.h" 124 f = RealVectorX::Zero(3);
148 df = RealVectorX::Zero(3);
172 f = RealVectorX::Zero(3);
175 dfdX = RealMatrixX::Zero(3, dq_dX.size());
181 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)
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...
unsigned int n_sides_quadrature_elem() const
number of sides on quadrature element.
virtual void output_derivative_for_elem(RealVectorX &dq_dX)
returns the output quantity derivative with respect to state vector in dq_dX.
bool _skip_comm_sum
If an output has contrinutions only from local processor then the user can request that the global co...
Matrix< Real, Dynamic, Dynamic > RealMatrixX
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.
const MAST::GeomElem & elem() const
Real _force_sens
integrated value of the sensitivity of force
IntegratedForceOutput(const RealVectorX &nvec)
RealVectorX _n_vec
vector along which the force is measured
const MAST::PhysicsDisciplineBase & discipline() const
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.
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...
MAST::SystemInitialization * _system