BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
A lattice with three basis vectors. More...
Public Member Functions | |
Lattice (const kvector_t a1, const kvector_t a2, const kvector_t a3) | |
Lattice (const Lattice &lattice) | |
void | accept (INodeVisitor *visitor) const override |
Calls the INodeVisitor's visit method. | |
Lattice | createTransformedLattice (const Transform3D &transform) const |
Creates transformed lattice. | |
void | initialize () const |
Initializes cached data. | |
kvector_t | getBasisVectorA () const |
Returns basis vector a. | |
kvector_t | getBasisVectorB () const |
Returns basis vector b. | |
kvector_t | getBasisVectorC () const |
Returns basis vector c. | |
void | resetBasis (const kvector_t a1, const kvector_t a2, const kvector_t a3) |
Resets the basis vectors. | |
kvector_t | getMillerDirection (double h, double k, double l) const |
Returns normalized direction corresponding to the given Miller indices. | |
double | volume () const |
Returns the volume of the unit cell. | |
void | getReciprocalLatticeBasis (kvector_t &b1, kvector_t &b2, kvector_t &b3) const |
Returns the reciprocal basis vectors. | |
ivector_t | getNearestLatticeVectorCoordinates (const kvector_t vector_in) const |
Returns the nearest lattice point from a given vector. | |
ivector_t | getNearestReciprocalLatticeVectorCoordinates (const kvector_t vector_in) const |
Returns the nearest reciprocal lattice point from a given vector. | |
std::vector< kvector_t > | reciprocalLatticeVectorsWithinRadius (const kvector_t input_vector, double radius) const |
Computes a list of reciprocal lattice vectors within a specified distance of a given vector. | |
void | setSelectionRule (const ISelectionRule &p_selection_rule) |
Sets a selection rule for the reciprocal vectors. | |
void | onChange () override |
Action to be taken in inherited class when a parameter has changed. | |
![]() | |
INode (const NodeMeta &meta, const std::vector< double > &PValues) | |
virtual std::string | treeToString () const |
Returns multiline string representing tree structure below the node. | |
void | registerChild (INode *node) |
virtual std::vector< const INode * > | getChildren () const |
Returns a vector of children (const). | |
virtual void | setParent (const INode *newParent) |
const INode * | parent () const |
INode * | parent () |
int | copyNumber (const INode *node) const |
Returns copyNumber of child, which takes into account existence of children with same name. | |
std::string | displayName () const |
Returns display name, composed from the name of node and it's copy number. | |
ParameterPool * | createParameterTree () const |
Creates new parameter pool, with all local parameters and those of its children. | |
![]() | |
IParameterized (const std::string &name="") | |
IParameterized (const IParameterized &other) | |
IParameterized & | operator= (const IParameterized &other)=delete |
ParameterPool * | parameterPool () const |
Returns pointer to the parameter pool. | |
std::string | parametersToString () const |
Returns multiline string representing available parameters. | |
RealParameter & | registerParameter (const std::string &name, double *parpointer) |
void | registerVector (const std::string &base_name, kvector_t *p_vec, const std::string &units="nm") |
void | setParameterValue (const std::string &name, double value) |
void | setVectorValue (const std::string &base_name, kvector_t value) |
RealParameter * | parameter (const std::string &name) const |
Returns parameter with given 'name'. | |
void | removeParameter (const std::string &name) |
void | removeVector (const std::string &base_name) |
void | setName (const std::string &name) |
const std::string & | getName () const |
Static Public Member Functions | |
static Lattice | createCubicLattice (double a) |
Returns a primitive cubic (cP) lattice with edge length a. | |
static Lattice | createFCCLattice (double a) |
Returns a face-centered cubic (cF) lattice with edge length a. | |
static Lattice | createHexagonalLattice (double a, double c) |
Returns a primitive hexagonal (hP) lattice with hexagonal edge a and height c. | |
static Lattice | createHCPLattice (double a, double c) |
TODO: Clarify how this is meant: HCP is not a Bravais lattice. | |
static Lattice | createTetragonalLattice (double a, double c) |
Returns a primitive tetragonal (tP) lattice with square base edge a and height c. | |
static Lattice | createBCTLattice (double a, double c) |
Returns a body-centered cubic (cI) lattice with edge length a. More... | |
![]() | |
static std::string | XComponentName (const std::string &base_name) |
static std::string | YComponentName (const std::string &base_name) |
static std::string | ZComponentName (const std::string &base_name) |
Additional Inherited Members | |
![]() | |
const size_t | m_NP |
std::vector< double > | m_P |
|
static |
Returns a body-centered cubic (cI) lattice with edge length a.
TODO: Clarify meaning of c
Definition at line 177 of file Lattice.cpp.