15 #ifndef BORNAGAIN_SAMPLE_HARDPARTICLE_PRISM3_H
16 #define BORNAGAIN_SAMPLE_HARDPARTICLE_PRISM3_H
27 Prism3(std::vector<double> P);
30 std::string
className() const final {
return "Prism3"; }
32 std::vector<ParaMeta>
parDefs() const final
34 return {{
"BaseEdge",
"nm",
"edge length of trigonal base", 0, +
INF, 0},
35 {
"Height",
"nm",
"height", 0, +
INF, 0}};
A prism based on an equilateral triangle.
std::vector< ParaMeta > parDefs() const final
Returns the parameter definitions, to be hard-coded in each leaf class.
Prism3 * clone() const override
Returns a clone of this ISampleNode object.
const double & m_base_edge
Prism3(double base_edge, double height)
double height() const override
std::string className() const final
Returns the class name, to be hard-coded in each leaf class that inherits from INode.