![]() |
AlmaBTE
1.3
A solver of the space- and time-dependent Boltzmann transport equation for phonons
|
Objects of this class allow us to simulate completely diffusive interfaces between two media. More...
#include <sampling.hpp>
Public Member Functions | |
| Elastic_interface_distribution (const Gamma_grid &gridA, const Gamma_grid &gridB, double scalebroad, randutils::mt19937_rng &_rng) | |
| Constructor. More... | |
| char | reemit (char incidence, const Eigen::Ref< const Eigen::Vector3d > &normal, D_particle &particle) |
| Draw a final state for a particle incident from A or B or viceversa. More... | |
Objects of this class allow us to simulate completely diffusive interfaces between two media.
An incident phonon undergoes elastic diffusion and exits the interface in a mode chosen at random.
In contrast with Diffuse_mismatch_distribution, in this case the normal vector is not fixed at construction time.
| alma::Elastic_interface_distribution::Elastic_interface_distribution | ( | const Gamma_grid & | gridA, |
| const Gamma_grid & | gridB, | ||
| double | scalebroad, | ||
| randutils::mt19937_rng & | _rng | ||
| ) |
Constructor.
| [in] | gridA | - phonon spectrum of material A |
| [in] | gridB | - phonon spectrum of material B |
| [in] | scalebroad | - factor modulating all the broadenings |
| [in,out] | _rng | - a random number generator |
| char alma::Elastic_interface_distribution::reemit | ( | char | incidence, |
| const Eigen::Ref< const Eigen::Vector3d > & | normal, | ||
| D_particle & | particle | ||
| ) |
Draw a final state for a particle incident from A or B or viceversa.
| [in] | incidence | - 'A' or 'B' |
| [in] | normal | - normal to the interface, pointing from A to B. |
| [in,out] | particle | - information about the particle, before and after the interaction. |