21std::unordered_map<std::string, Real>
24 std::unordered_map<std::string, Real> coeffs = {{
"y0",
_y0}, {
"z0",
_z0}, {
"r",
_r}};
33 const Real dist_sq = Utility::pow<2>((p(1) -
_y0)) + Utility::pow<2>((p(2) -
_z0));
35 return dist_sq - Utility::pow<2>(
_r);
42 mooseError(
"Radius of x-cylinder must be positive.");
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application.
CSGSurface creates an internal representation of a Constructive Solid Geometry (CSG) surface,...
virtual std::unordered_map< std::string, Real > getCoeffs() const override
Get the coefficients (y0, z0, and r) that define the cylindrical surface with the equation: (y - y0)^...
virtual Real evaluateSurfaceEquationAtPoint(const Point &p) const override
given a point, determine its evaluation based on the equation of the cylinder
Real _y0
Value of y0 in equation of an x-axis aligned cylinder.
Real _z0
Value of z0 in equation of an x-axis aligned cylinder.
CSGXCylinder(const std::string &name, const Real y0, const Real z0, const Real r)
Construct a cylinder surface aligned with the x axis.
Real _r
Value of r in equation of an x-axis aligned cylinder.