This VectorPostprocessor is intended to be used to calculate accurate volumes from the FeatureFloodCo...
VectorPostprocessorValue & _var_num
const QBase *const & _qrule_face
const MooseArray< Real > & _JxW
std::vector< const VariableValue * > _coupled_sln
virtual void execute() override
void accumulateVolumes(const Elem *elem, const std::vector< unsigned int > &var_to_features, std::size_t num_features)
Add volume contributions to one or entries in the feature volume vector.
const MooseArray< Real > & _coord
virtual void initialize() override
Real computeFaceIntegral(std::size_t var_index) const
Calculate the integral on the face if boundary is supplied as input.
Real computeIntegral(std::size_t var_index) const
Calculate the integral value of the passed in variable (index)
virtual void finalize() override
VectorPostprocessorValue & _percolated
VectorPostprocessorValue & _feature_volumes
const std::vector< MooseVariableFEBase * > & _vars
const MooseArray< Point > & _q_point
std::array< VectorPostprocessorValue *, 3 > _centroid
static InputParameters validParams()
bool _is_boundary_restricted
Indicates whether the calculation should be run on volumes or area of a boundary.
const bool _single_feature_per_elem
A Boolean indicating how the volume is calculated.
const QBase *const & _qrule
VectorPostprocessorValue & _intersects_bounds
void accumulateBoundaryFaces(const Elem *elem, const std::vector< unsigned int > &var_to_features, std::size_t num_features, unsigned int side)
When boundary is supplied as input, compute coverage of that boundary by each feature.
const MooseArray< Real > & _JxW_face
const FeatureFloodCount & _feature_counter
A reference to the feature flood count object.
VectorPostprocessorValue & _intersects_specified_bounds
Real getFeatureVolume(unsigned int feature_id) const
Returns the volume for the given grain number.