BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Member Functions | |
Polyhedron ()=delete | |
Polyhedron (const Polyhedron &)=delete | |
Polyhedron (const PolyhedralTopology &topology, double z_bottom, const std::vector< kvector_t > &vertices) | |
~Polyhedron () | |
void | assert_platonic () const |
double | volume () const |
double | radius () const |
const std::vector< kvector_t > & | vertices () |
complex_t | evaluate_for_q (const cvector_t &q) const |
complex_t | evaluate_centered (const cvector_t &q) const |
Private Attributes | |
double | m_z_bottom |
bool | m_sym_Ci |
std::vector< PolyhedralFace > | m_faces |
double | m_radius |
double | m_volume |
std::vector< kvector_t > | m_vertices |
A polyhedron, implementation class for use in IFormFactorPolyhedron.
Definition at line 24 of file Polyhedron.h.
|
delete |
|
delete |
Polyhedron::Polyhedron | ( | const PolyhedralTopology & | topology, |
double | z_bottom, | ||
const std::vector< kvector_t > & | vertices | ||
) |
Definition at line 32 of file Polyhedron.cpp.
References PolyhedralFace::diameter(), PolyhedralTopology::faces, m_faces, m_radius, m_sym_Ci, m_vertices, m_volume, m_z_bottom, PolyhedralTopology::symmetry_Ci, PolygonalTopology::symmetry_S2, PolygonalTopology::vertexIndices, and vertices().
|
default |
void Polyhedron::assert_platonic | ( | ) | const |
Definition at line 91 of file Polyhedron.cpp.
References anonymous_namespace{Polyhedron.cpp}::eps, and m_faces.
double Polyhedron::volume | ( | ) | const |
Definition at line 107 of file Polyhedron.cpp.
References m_volume.
double Polyhedron::radius | ( | ) | const |
Definition at line 111 of file Polyhedron.cpp.
References m_radius.
const std::vector< kvector_t > & Polyhedron::vertices | ( | ) |
needed for topZ, bottomZ computation
Returns the form factor F(q) of this polyhedron, respecting the offset z_bottom.
Definition at line 123 of file Polyhedron.cpp.
References evaluate_centered(), exp_I(), m_z_bottom, and BasicVector3D< T >::z().
Returns the form factor F(q) of this polyhedron, with origin at z=0.
Definition at line 141 of file Polyhedron.cpp.
References anonymous_namespace{Polyhedron.cpp}::eps, I, m_faces, m_radius, m_sym_Ci, m_volume, BasicVector3D< T >::mag(), BasicVector3D< T >::mag2(), mul_I(), anonymous_namespace{Polyhedron.cpp}::n_limit_series, anonymous_namespace{Polyhedron.cpp}::q_limit_series, and StringUtils::scientific().
Referenced by evaluate_for_q().
|
private |
Definition at line 40 of file Polyhedron.h.
Referenced by evaluate_for_q(), and Polyhedron().
|
private |
if true, then faces obtainable by inversion are not provided
Definition at line 41 of file Polyhedron.h.
Referenced by evaluate_centered(), and Polyhedron().
|
private |
Definition at line 43 of file Polyhedron.h.
Referenced by assert_platonic(), evaluate_centered(), and Polyhedron().
|
private |
Definition at line 44 of file Polyhedron.h.
Referenced by evaluate_centered(), Polyhedron(), and radius().
|
private |
Definition at line 45 of file Polyhedron.h.
Referenced by evaluate_centered(), Polyhedron(), and volume().
|
private |
Definition at line 46 of file Polyhedron.h.
Referenced by Polyhedron(), and vertices().