![]() |
AlmaBTE
1.3
A solver of the space- and time-dependent Boltzmann transport equation for phonons
|
Definitions corresponding to processes.hpp. More...
#include <cmath>#include <complex>#include <constants.hpp>#include <periodic_table.hpp>#include <utilities.hpp>#include <processes.hpp>
Functions | |
| std::vector< Threeph_process > | alma::find_allowed_threeph (const Gamma_grid &grid, const boost::mpi::communicator &communicator, double scalebroad=1.0) |
| Look for allowed three-phonon processes in a regular grid. More... | |
| Eigen::ArrayXXd | alma::calc_w0_threeph (const alma::Gamma_grid &grid, std::vector< alma::Threeph_process > &processes, double T, const boost::mpi::communicator &comm) |
| Compute and store the three-phonon contribution to the RTA scattering rates for all vibrational modes on a grid. More... | |
| Eigen::ArrayXXd | alma::calc_w0_threeph (const alma::Gamma_grid &grid, std::vector< alma::Threeph_process > &processes, double T, std::function< bool(const Threeph_process &)> filter, const boost::mpi::communicator &comm) |
| Compute and store the three-phonon contribution to the RTA scattering rates for all vibrational modes on a grid. More... | |
Definitions corresponding to processes.hpp.
| Eigen::ArrayXXd alma::calc_w0_threeph | ( | const alma::Gamma_grid & | grid, |
| std::vector< alma::Threeph_process > & | processes, | ||
| double | T, | ||
| const boost::mpi::communicator & | comm | ||
| ) |
Compute and store the three-phonon contribution to the RTA scattering rates for all vibrational modes on a grid.
| [in] | grid | - phonon spectrum on a regular grid |
| [in] | processes | - a vector of allowed three-phonon processes |
| [in] | T | - the temperature in K |
| [in] | comm | - an mpi communicator |
| Eigen::ArrayXXd alma::calc_w0_threeph | ( | const alma::Gamma_grid & | grid, |
| std::vector< alma::Threeph_process > & | processes, | ||
| double | T, | ||
| std::function< bool(const Threeph_process &)> | filter, | ||
| const boost::mpi::communicator & | comm | ||
| ) |
Compute and store the three-phonon contribution to the RTA scattering rates for all vibrational modes on a grid.
Take into account only those processes fullfilling a criterion.
| [in] | grid | - phonon spectrum on a regular grid |
| [in] | processes | - a vector of allowed three-phonon processes |
| [in] | T | - the temperature in K |
| [in] | filter | - boolean function returning true if a process must be taken into account |
| [in] | comm | - an mpi communicator |
| std::vector< Threeph_process > alma::find_allowed_threeph | ( | const Gamma_grid & | grid, |
| const boost::mpi::communicator & | communicator, | ||
| double | scalebroad = 1.0 |
||
| ) |
Look for allowed three-phonon processes in a regular grid.
Iterate over part of the irreducible q points in the grid (trying to evenly split the equivalence classes over processes) and look for allowed three-phonon processes involving one phonon from that part and two other phonons from anywhere in the grid.
| [in] | grid | - a regular grid containing Gamma |
| [in] | communicator | - MPI communicator to use |
| [in] | scalebroad | - factor modulating all the broadenings |