30 #include "libmesh/parallel.h" 36 _heaviside_smooth_delta (0.1) {
179 libmesh_assert(
false);
MAST::NonlinearSystem & system()
virtual void init(const MAST::GeomElem &elem)
initializes the object for calculation of element quantities for the specified elem.
virtual void evaluate()
this is the abstract interface to be implemented by derived classes.
virtual bool if_evaluate_for_element(const MAST::GeomElem &elem) const
checks to see if the object has been told about the subset of elements and if the specified element i...
virtual void evaluate_topology_sensitivity(const MAST::FunctionBase &f)
this evaluates all relevant topological sensitivity components on the element.
This provides the base class for definitin of element level contribution of output quantity in an ana...
virtual void zero_for_analysis()
zeroes the output quantity values stored inside this object so that assembly process can begin...
bool if_elem_has_level_set_boundary() const
MAST::ElementBase * _physics_elem
virtual Real output_sensitivity_total(const MAST::FunctionBase &p)
virtual bool is_topology_parameter() const
virtual Real output_sensitivity_for_elem(const MAST::FunctionBase &p)
bool _skip_comm_sum
If an output has contrinutions only from local processor then the user can request that the global co...
This class inherits from MAST::GeomElem and provides an interface to initialize FE objects on sub-ele...
virtual void evaluate_sensitivity(const MAST::FunctionBase &f)
this evaluates all relevant sensitivity components on the element.
virtual Real output_for_elem()
Real perimeter(Real delta=0.1)
Approximates the integral of the Dirac delta function to approximate the perimeter.
This class acts as a wrapper around libMesh::Elem for the purpose of providing a uniform interface fo...
MAST::AssemblyBase * _assembly
const MAST::GeomElem & elem() const
virtual void zero_for_sensitivity()
zeroes the output quantity values stored inside this object so that assembly process can begin...
bool if_subelem_has_side_on_level_set_boundary() const
Real _heaviside_smooth_delta
virtual ~LevelSetPerimeter()
Real perimeter_sensitivity(Real delta=0.1)
computes the partial derivative of the integral of the Dirac delta function using the solution and se...
virtual Real output_total()
MAST::SystemInitialization * _system