Factory of Dynamical_matrix objects.
More...
#include <dynamical_matrix.hpp>
Factory of Dynamical_matrix objects.
◆ build()
std::array< Eigen::MatrixXcd, 4 > alma::Dynamical_matrix_builder::build |
( |
const Eigen::Ref< const Eigen::Vector3d > & |
q | ) |
const |
Return the dynamical matrix and its derivatives at one point.
- Parameters
-
[in] | q | - the q point in Cartesian coordinates |
- Returns
- an array containing the dynamical matrix and the three components of its gradient
◆ get_block()
Eigen::MatrixXd alma::Dynamical_matrix_builder::get_block |
( |
std::size_t |
i | ) |
const |
|
inline |
Obtain a copy of one of the building blocks of the dynamical matrix.
- Parameters
-
- Returns
- a matrix containing a copy of the block
◆ get_nblocks()
std::size_t alma::Dynamical_matrix_builder::get_nblocks |
( |
| ) |
const |
|
inline |
Obtain the number of building blocks of unfolded, mass-reduced interatomic force constants used to build the dynamical matrix.
- Returns
- the number of such blocks
◆ get_pos()
Triple_int alma::Dynamical_matrix_builder::get_pos |
( |
std::size_t |
i | ) |
const |
|
inline |
Obtain the direct coordinates of the lattice point associated to a block.
- Parameters
-
- Returns
- three integers identifying a lattice point.
◆ get_spectrum()
std::unique_ptr< Spectrum_at_point > alma::Dynamical_matrix_builder::get_spectrum |
( |
const Eigen::Ref< const Eigen::Vector3d > & |
q | ) |
const |
Call build() and use the return value to obtain the harmonic properties at one q point.
- Parameters
-
[in] | q | - the q point in Cartesian coordinates |
- Returns
- a Spectrum_at_point object with all relevant information.
The documentation for this class was generated from the following files: