![]() |
AlmaBTE
1.3
A solver of the space- and time-dependent Boltzmann transport equation for phonons
|
Objects of this class allow us to sample from a discrete distribution over a q-point grid with a PMF proportional to one component of the group velocity and to each mode's contribution to the specific heat. More...
#include <sampling.hpp>
Public Member Functions | |
Nabla_T_distribution (const Gamma_grid &grid, const Eigen::Ref< const Eigen::Vector3d > &nablaT, double T, randutils::mt19937_rng &_rng) | |
Constructor. More... | |
![]() | |
Grid_distribution (const Gamma_grid &grid, randutils::mt19937_rng &_rng) | |
Constructor. More... | |
virtual | ~Grid_distribution () |
Trivial virtual destructor. | |
void | fill_cumulative (const std::vector< double > &p) |
Fill the 'cumulative' vector. More... | |
std::array< std::size_t, 2 > | sample () |
Draw a sample from the distribution. More... | |
Additional Inherited Members | |
![]() | |
const std::size_t | nqpoints |
Number of q points. | |
const std::size_t | nmodes |
Number of phonon modes at each q point. | |
Objects of this class allow us to sample from a discrete distribution over a q-point grid with a PMF proportional to one component of the group velocity and to each mode's contribution to the specific heat.
Make sure to select the right sign after sampling from this distribution.
alma::Nabla_T_distribution::Nabla_T_distribution | ( | const Gamma_grid & | grid, |
const Eigen::Ref< const Eigen::Vector3d > & | nablaT, | ||
double | T, | ||
randutils::mt19937_rng & | _rng | ||
) |
Constructor.
[in] | grid | - phonon spectrum on a regular grid |
[in] | nablaT | - any vector parallel to the temperature gradient. |
[in] | T | - the temperature in K |
[in,out] | _rng | - a random number generator |