21 "Functions defining the surfaces to measure distance to; each must be a ParsedFunction " 22 "level set or an UnsignedDistanceToSurfaceMesh.");
24 "Computes the shortest distance vector and true normal to one or more surfaces defined by " 25 "parsed level-set functions and/or mesh-based distance functions.");
32 const auto function_names = getParam<std::vector<FunctionName>>(
"surfaces");
RealVectorValue trueNormalByFunc(const Point &pt, Real t, const Function *func) const
Compute true normal using a specific distance function.
RealVectorValue distanceVectorFromFunction(const Function *func, const libMesh::Point &pt, Real t)
Compute the distance vector induced by a distance function.
RealVectorValue trueNormalFromFunction(const Function *func, const libMesh::Point &pt, Real t)
Compute the true boundary surface normal using a distance function.
registerMooseObject("ShiftedBoundaryMethodApp", ShortestDistanceToSurface)
RealVectorValue closestDistanceVector(const std::vector< const Function *> &funcs, const libMesh::Point &pt, Real t)
Scan all distance functions and return the closest distance vector.
std::vector< const Function * > _distance_functions
Optional signed-distance function.
User object that computes the shortest distance to one or more surfaces defined by function- and/or m...
RealVectorValue distanceVectorByIndex(unsigned int idx, const Point &pt) const
A distance vector from a point pt to a specific surface specified by index idx in the 'surfaces' para...
RealVectorValue trueNormal(const Point &pt) const
Return the true normal vector at the closest point on the boundaries.
RealVectorValue closestTrueNormalVector(const std::vector< const Function *> &funcs, const libMesh::Point &pt, Real t)
Scan all distance functions and return the corresponding normal vector.
static InputParameters validParams()
RealVectorValue distanceVectorByFunc(const Point &pt, Real t, const Function *func) const
Compute distance vector using a specific distance function.
RealVectorValue trueNormalByIndex(unsigned int idx, const Point &pt) const
A true normal vector at the projected point of pt onto a specific surface specified by index idx in t...
ShortestDistanceToSurface(const InputParameters ¶meters)
static InputParameters validParams()
std::vector< const Function * > buildDistanceFunctions(const std::vector< FunctionName > &function_names, const FunctionInterface &function_provider)
Build a list of distance functions based on names specified in input.
RealVectorValue distanceVector(const Point &pt) const
Return the closest distance vector from point pt to the boundaries.