15 #ifndef BORNAGAIN_SAMPLE_HARDPARTICLE_ELLIPSOIDALCYLINDER_H
16 #define BORNAGAIN_SAMPLE_HARDPARTICLE_ELLIPSOIDALCYLINDER_H
33 std::string
className() const final {
return "EllipsoidalCylinder"; }
35 std::vector<ParaMeta>
parDefs() const final
37 return {{
"RadiusX",
"nm",
"radius in x direction", 0, +
INF, 0},
38 {
"RadiusY",
"nm",
"radius in y direction", 0, +
INF, 0},
39 {
"Height",
"nm",
"height", 0, +
INF, 0}};
A cylinder with elliptical base.
const double & m_radius_y
EllipsoidalCylinder * clone() const override
Returns a clone of this ISampleNode object.
double radialExtension() const override
Returns the (approximate in some cases) radial size of the particle of this form factor's shape....
const double & m_radius_x
EllipsoidalCylinder(double radius_x, double radius_y, double height)
std::string className() const final
Returns the class name, to be hard-coded in each leaf class that inherits from INode.
complex_t formfactor_at_bottom(C3 q) const override
std::vector< ParaMeta > parDefs() const final
Returns the parameter definitions, to be hard-coded in each leaf class.