19 params.
addClassDescription(
"Multiple smooth superellipsoids with manually specified center " 20 "points; semiaxes a,b,c; and exponents n");
22 "The x-coordinate for each superellipsoid center");
24 "The y-coordinate for each superellipsoid center");
26 "The z-coordinate for each superellipsoid center");
27 params.
addRequiredParam<std::vector<Real>>(
"as",
"Semiaxis a for each superellipsoid");
28 params.
addRequiredParam<std::vector<Real>>(
"bs",
"Semiaxis b for each superellipsoid");
29 params.
addRequiredParam<std::vector<Real>>(
"cs",
"Semiaxis c for each superellipsoid");
30 params.
addRequiredParam<std::vector<Real>>(
"ns",
"Exponent n for each superellipsoid");
37 _x_positions(getParam<
std::vector<
Real>>(
"x_positions")),
38 _y_positions(getParam<
std::vector<
Real>>(
"y_positions")),
39 _z_positions(getParam<
std::vector<
Real>>(
"z_positions")),
40 _input_as(getParam<
std::vector<
Real>>(
"as")),
41 _input_bs(getParam<
std::vector<
Real>>(
"bs")),
42 _input_cs(getParam<
std::vector<
Real>>(
"cs")),
43 _input_ns(getParam<
std::vector<
Real>>(
"ns"))
52 for (
unsigned int circ = 0; circ <
_x_positions.size(); ++circ)
67 for (
unsigned int circ = 0; circ <
_input_as.size(); ++circ)
80 for (
unsigned int circ = 0; circ <
_input_ns.size(); ++circ)
std::vector< Point > _centers
virtual void computeSuperellipsoidSemiaxes()
static InputParameters validParams()
std::vector< Real > _input_ns
registerMooseObject("PhaseFieldApp", SpecifiedSmoothSuperellipsoidIC)
std::vector< Real > _input_bs
static InputParameters validParams()
SmoothSuperellipsoidBaseIC is the base class for all initial conditions that create superellipsoids...
SpecifiedSmoothSuperellipsoidIC creates multiple SmoothSuperellipsoids (number = size of x_positions)...
virtual void computeSuperellipsoidExponents()
std::vector< Real > _input_as
virtual void computeSuperellipsoidCenters()
SpecifiedSmoothSuperellipsoidIC(const InputParameters ¶meters)
std::vector< Real > _y_positions
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::vector< Real > _z_positions
std::vector< Real > _x_positions
std::vector< Real > _input_cs