Generic assembly of the scattering operator(s) is implemented here. More...
#include <cmath>
#include "viennagrid/mesh/mesh.hpp"
#include "viennagrid/algorithm/voronoi.hpp"
#include "viennashe/math/constants.hpp"
#include "viennashe/math/spherical_harmonics.hpp"
#include "viennashe/math/integrator.hpp"
#include "viennashe/physics/constants.hpp"
#include "viennashe/physics/dispersion.hpp"
#include "viennashe/physics/physics.hpp"
#include "viennashe/she/harmonics_coupling.hpp"
#include "viennashe/she/assemble_common.hpp"
#include "viennashe/util/block_matrix_writer.hpp"
#include "viennashe/util/checks.hpp"
#include "viennashe/util/misc.hpp"
#include "viennashe/util/filter.hpp"
#include "viennashe/log/log.hpp"
#include "viennashe/she/log_keys.h"
#include "scattering/all.hpp"
Go to the source code of this file.
Namespaces | |
namespace | viennashe |
The main ViennaSHE namespace. All functionality resides inside this namespace. | |
namespace | viennashe::she |
Functions | |
template<typename SHEQuantity , typename ElementType > | |
long | viennashe::she::energy_index_H (SHEQuantity const &quan, ElementType const &elem, long index_H_hint, double kinetic_energy) |
Finds the closest H-index for the provided kinetic energy. More... | |
template<typename ScatterProcessesT , typename DeviceType , typename SHEQuantity , typename MatrixType , typename VectorType , typename ElementType , typename CouplingMatrix > | |
void | viennashe::she::assemble_scattering_operator_on_box (ScatterProcessesT const &scatter_processes, DeviceType const &device, viennashe::config const &conf, SHEQuantity const &quan, MatrixType &A, VectorType &b, ElementType const &elem, std::size_t index_H, CouplingMatrix const &coupling_in_scatter, CouplingMatrix const &coupling_out_scatter) |
Generic assembly of the scattering operator(s) is implemented here.
Definition in file assemble_scattering.hpp.