16#include "libmesh/mesh_tools.h"
26 "variable",
"The names of the variables that this VectorPostprocessor operates on");
28 "scaling", 1.0,
"The postprocessor that the variables are multiplied with");
30 "warn_discontinuous_face_values",
32 "Whether to return a warning if a discontinuous variable is sampled on a face");
43 Moose::VarKindType::VAR_ANY,
44 Moose::VarFieldType::VAR_FIELD_STANDARD),
45 _var_slns(_coupled_moose_vars.size(), nullptr)
54 var_names[i] = var->name();
56 _var_slns[i] = &libMesh::cast_ptr<const MooseVariableField<Real> *>(var)->sln();
83 std::vector<Point> point_vec(1);
std::array< Real, 2 > values
const FEBase *const & getFE(FEType type, unsigned int dim) const
Get a reference to a pointer that will contain the current volume FE.
std::vector< MooseVariableFieldBase * > _coupled_moose_vars
Vector of all coupled variables.
static InputParameters validParams()
libMesh::BoundingBox getInflatedProcessorBoundingBox(Real inflation_multiplier=0.01) const
Get a (slightly inflated) processor bounding box.
virtual unsigned int dimension() const
Returns MeshBase::mesh_dimension(), (not MeshBase::spatial_dimension()!) of the underlying libMesh me...
void addMooseVariableDependency(MooseVariableFieldBase *var)
Call this function to add the passed in MooseVariableFieldBase as a variable that this object depends...
Interface for objects that need to get values of MooseVariables.
MooseVariableField< Real > & mooseVariableField()
Return the MooseVariableField object that this interface acts on.
Base class for sampling objects (variables, functors etc) at points.
std::vector< Point > _points
The points to evaluate at.
const Elem * getLocalElemContainingPoint(const Point &p)
Find the local element that contains the point.
std::vector< std::vector< Real > > _point_values
Vector of values per point.
const Real & _pp_value
Postprocessor multiplying the variables.
std::vector< short > _found_points
Whether or not the Point was found on this processor (short because bool and char don't work with MPI...
MooseMesh & _mesh
The Mesh we're using.
bool _discontinuous_at_faces
Whether values are requested for objects that are discontinuous on faces.
virtual void initialize()
Called before execute() is ever called so that data can be cleared.
static InputParameters validParams()
void setPointsVector(const std::vector< Point > &points)
virtual void initialize()
Called before execute() is ever called so that data can be cleared.
void transferPointsVector(std::vector< Point > &&points)
std::vector< const MooseArray< Real > * > _var_slns
Variable solutions with inner indexing corresponding to quadrature points.
virtual void execute()
Execute method.
PointVariableSamplerBase(const InputParameters ¶meters)
void setupVariables(const std::vector< std::string > &variable_names)
You MUST call this in the constructor of the child class and pass down the name of the variables.
void checkForStandardFieldVariableType(const MooseVariableFieldBase *const var_ptr, const std::string &var_param_name="variable") const
Checks whether the passed variable pointer corresponds to a regular single-valued field variable.
static InputParameters validParams()
virtual void reinitElemPhys(const Elem *elem, const std::vector< Point > &phys_points_in_elem, const THREAD_ID tid)=0
virtual void setCurrentSubdomainID(const Elem *elem, const THREAD_ID tid)=0
SubProblem & _subproblem
Reference to the Subproblem for this user object.
Assembly & _assembly
Reference to the assembly object for this user object.
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...