14 #include "libmesh/point.h" 20 params.
addRequiredParam<Point>(
"axis_point",
"A point on the axis of RZ symmetry.");
22 params.
addParam<
Real>(
"offset", 0.,
"Radial offset of the axis of RZ symmetry.");
27 : _axis_point(0., 0., 0.),
29 _offset(parameters.
get<
Real>(
"offset"))
35 if (fe_problem !=
nullptr)
43 if (blk_restr !=
nullptr)
45 const std::set<SubdomainID> & blks = blk_restr->
meshBlockIDs();
52 ": This is a THM-specific object can be applied only on subdomains with Cartesian " 53 "coordinate system. If your domain has RZ cooridnate system associated with it, you " 54 "need to use the object without the RZ suffix to obtain the desired result.");
57 if (bnd_restr !=
nullptr)
59 std::set<SubdomainID> blks;
60 const std::set<BoundaryID> & bnds = bnd_restr->
boundaryIDs();
61 for (
auto & bid : bnds)
63 std::set<SubdomainID> conn_blks =
mesh.getBoundaryConnectedBlocks(bid);
64 for (
auto & cb : conn_blks)
73 ": This is a THM-specific object can be applied only on subdomains with Cartesian " 74 "coordinate system. If your domain has RZ cooridnate system associated with it, you " 75 "need to use the object without the RZ suffix to obtain the desired result.");
80 const Point pt = parameters.
get<Point>(
"axis_point");
auto norm() const -> decltype(std::norm(Real()))
const Real & _offset
Radial offset of the axis of symmetry.
void mooseError(Args &&... args)
virtual const std::string & name() const
bool isParamValid(const std::string &name) const
RealVectorValue _axis_point
A point on the axis of symmetry.
const T & getParam(const std::string &name) const
const RealVectorValue & _axis_dir
The direction of the axis of symmetry.
RZSymmetry(const MooseObject *moose_object, const InputParameters ¶meters)
virtual Real computeCircumference(const RealVectorValue &pt)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string v
const std::set< SubdomainID > & meshBlockIDs() const
virtual MooseMesh & mesh() override
Moose::CoordinateSystemType getCoordSystem(SubdomainID sid) const
virtual const std::set< BoundaryID > & boundaryIDs() const
const Elem & get(const ElemType type_in)
static InputParameters validParams()