15#include "libmesh/parsed_function.h"
28 std::unique_ptr<MeshBase>
generate()
override;
33 const unsigned int _nx;
34 const unsigned int _ny;
56 std::vector<Point>
getEdge(
const Point & P1,
58 const unsigned int np,
60 const std::string & parameter,
61 const Point & outward,
62 const std::vector<Real> & param_vec);
64 std::vector<Point>
getParsedEdge(
const std::string & parameter,
65 const std::vector<Real> & param_vec);
69 const std::string & parameter,
70 const Point & outward,
71 const std::vector<Real> & param_vec);
73 std::vector<Point>
getDiscreteEdge(
const unsigned int np,
const std::string & parameter);
76 getLineEdge(
const Point & P1,
const Point & P2,
const std::vector<Real> & param_vec);
80 Real
computeRadius(
const Point & P1,
const Point & P2,
const Point & P3)
const;
84 Point
computeOrigin(
const Point & P1,
const Point & P2,
const Point & P3)
const;
93 computeMidPoint(
const Point & P1,
const Point & P2,
const Real dist,
const Point & outward)
const;
100 Real
getMapInterval(
const Real xab,
const Real a,
const Real b,
const Real c,
const Real d)
const;
std::shared_ptr< SymFunction > SymFunctionPtr
Shorthand for an smart pointer to an autodiff function parser object.
MeshGenerators are objects that can modify or add to an existing mesh.
const InputParameters & parameters() const
Get the parameters of the object.
const std::string & type() const
Get the type of this class.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Generates an quadrilateral given all the parameters.
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
const MooseEnum _bottom_type
std::vector< Point > getEdge(const Point &P1, const Point &P2, const unsigned int np, const MooseEnum &type, const std::string ¶meter, const Point &outward, const std::vector< Real > ¶m_vec)
Real computeRadius(const Point &P1, const Point &P2, const Point &P3) const
std::vector< Point > getCircarcEdge(const Point &P1, const Point &P2, const std::string ¶meter, const Point &outward, const std::vector< Real > ¶m_vec)
usingFunctionParserUtilsMembers(false)
static InputParameters validParams()
Real getMapInterval(const Real xab, const Real a, const Real b, const Real c, const Real d) const
Point computeOrigin(const Point &P1, const Point &P2, const Point &P3) const
const std::string _right_parameter
const std::vector< Point > & _corners
const std::string _left_parameter
const std::string _bottom_parameter
std::vector< Point > getLineEdge(const Point &P1, const Point &P2, const std::vector< Real > ¶m_vec)
Point computeMidPoint(const Point &P1, const Point &P2, const Real dist, const Point &outward) const
std::vector< Point > getParsedEdge(const std::string ¶meter, const std::vector< Real > ¶m_vec)
std::vector< Real > getPointsDistribution(const Real edge_length, const unsigned int np, const Real bias) const
const MooseEnum _top_type
const MooseEnum _left_type
const std::string _top_parameter
const MooseEnum _right_type
SymFunctionPtr _parsed_func
function parser object describing the combinatorial geometry
std::vector< Point > getDiscreteEdge(const unsigned int np, const std::string ¶meter)