1 #ifndef PSIM_PHONONBUILDER_H
2 #define PSIM_PHONONBUILDER_H
27 [[nodiscard]] virtual
Phonon operator()(
double t_eq) noexcept = 0;
28 [[nodiscard]] virtual
bool hasPhonons() const noexcept = 0;
43 [[nodiscard]]
bool hasPhonons() const noexcept
override {
44 return !cells_.empty();
50 std::stack<std::pair<Cell*, std::size_t>> cells_;
58 [[nodiscard]]
bool hasPhonons() const noexcept
override {
Definition: phononBuilder.h:38
bool hasPhonons() const noexcept override
Definition: phononBuilder.h:43
void addCellPhonons(Cell *cell, std::size_t num_phonons) noexcept
Definition: phononBuilder.cpp:24
CellOriginBuilder()=default
Phonon operator()(double t_eq) noexcept override
Definition: phononBuilder.cpp:12
Definition: phononBuilder.h:69
Phonon operator()(double t_eq) noexcept override
Definition: phononBuilder.cpp:48
Definition: phononBuilder.h:13
std::size_t totalPhonons() const noexcept
Definition: phononBuilder.h:30
virtual bool hasPhonons() const noexcept=0
std::size_t total_phonons_
Definition: phononBuilder.h:35
constexpr PhononBuilder() noexcept=default
Definition: phononBuilder.h:53
bool hasPhonons() const noexcept override
Definition: phononBuilder.h:58
Phonon operator()(double t_eq) noexcept override
Definition: phononBuilder.cpp:37
SurfaceOriginBuilder(Cell &cell, const EmitSurface &surface, std::size_t num_phonons)
Definition: phononBuilder.cpp:31
const EmitSurface & surface_
Definition: phononBuilder.h:66