#include <BremsstrahlungFunc.H>
|
| AMREX_GPU_DEVICE AMREX_INLINE void | operator() (index_type const I1s, index_type const I1e, index_type const I2s, index_type const I2e, index_type const *AMREX_RESTRICT I1, index_type const *AMREX_RESTRICT I2, SoaData_type const &soa_1, const SoaData_type &soa_2, GetParticlePosition< PIdx >, GetParticlePosition< PIdx >, amrex::ParticleReal const n1, amrex::ParticleReal const n2, amrex::ParticleReal const, amrex::ParticleReal const, amrex::Real const, amrex::ParticleReal const, amrex::ParticleReal const, amrex::ParticleReal const m1, amrex::ParticleReal const m2, amrex::Real const dt, amrex::Real const, index_type coll_idx, index_type const cell_start_pair, index_type *AMREX_RESTRICT p_mask, index_type *AMREX_RESTRICT p_pair_indices_1, index_type *AMREX_RESTRICT p_pair_indices_2, amrex::ParticleReal *AMREX_RESTRICT p_pair_reaction_weight, amrex::ParticleReal *AMREX_RESTRICT p_product_data, amrex::RandomEngine const &engine) const |
| | Executor of the BremsstrahlungFunc class. Produces Bremsstrahlung photons at the cell level. Note that this function does not yet create the resulting photons, but instead sets p_mask and calculates the weight and energy.
|
| |
| AMREX_GPU_DEVICE AMREX_INLINE amrex::ParticleReal | CalculateCrossSection (amrex::ParticleReal KErel_eV, amrex::ParticleReal wpe, int &index, int &i0_cut, amrex::ParticleReal &koT1_cut, amrex::ParticleReal &kdsigdk_cut, amrex::ParticleReal &w0) const |
| |
| AMREX_GPU_DEVICE AMREX_INLINE amrex::ParticleReal | Photon_energy (int index, int i0_cut, amrex::ParticleReal koT1_cut, amrex::ParticleReal kdsigdk_cut, amrex::ParticleReal w0, amrex::ParticleReal sigma_total, amrex::ParticleReal random_number) const |
| |
| AMREX_GPU_DEVICE AMREX_INLINE void | BremsstrahlungEvent (amrex::ParticleReal &u1x, amrex::ParticleReal &u1y, amrex::ParticleReal &u1z, amrex::ParticleReal &u2x, amrex::ParticleReal &u2y, amrex::ParticleReal &u2z, amrex::ParticleReal m1, amrex::ParticleReal m2, amrex::ParticleReal weight1, amrex::ParticleReal weight2, amrex::ParticleReal n1, amrex::ParticleReal n2, amrex::Real dt, int pair_index, index_type *AMREX_RESTRICT p_mask, amrex::ParticleReal *AMREX_RESTRICT p_pair_reaction_weight, amrex::ParticleReal *AMREX_RESTRICT p_product_data, amrex::RandomEngine const &engine) const |
| |
◆ BremsstrahlungEvent()
| AMREX_GPU_DEVICE AMREX_INLINE void BremsstrahlungFunc::Executor::BremsstrahlungEvent |
( |
amrex::ParticleReal & | u1x, |
|
|
amrex::ParticleReal & | u1y, |
|
|
amrex::ParticleReal & | u1z, |
|
|
amrex::ParticleReal & | u2x, |
|
|
amrex::ParticleReal & | u2y, |
|
|
amrex::ParticleReal & | u2z, |
|
|
amrex::ParticleReal | m1, |
|
|
amrex::ParticleReal | m2, |
|
|
amrex::ParticleReal | weight1, |
|
|
amrex::ParticleReal | weight2, |
|
|
amrex::ParticleReal | n1, |
|
|
amrex::ParticleReal | n2, |
|
|
amrex::Real | dt, |
|
|
int | pair_index, |
|
|
index_type *AMREX_RESTRICT | p_mask, |
|
|
amrex::ParticleReal *AMREX_RESTRICT | p_pair_reaction_weight, |
|
|
amrex::ParticleReal *AMREX_RESTRICT | p_product_data, |
|
|
amrex::RandomEngine const & | engine ) const |
|
inline |
◆ CalculateCrossSection()
◆ operator()()
| AMREX_GPU_DEVICE AMREX_INLINE void BremsstrahlungFunc::Executor::operator() |
( |
index_type const | I1s, |
|
|
index_type const | I1e, |
|
|
index_type const | I2s, |
|
|
index_type const | I2e, |
|
|
index_type const *AMREX_RESTRICT | I1, |
|
|
index_type const *AMREX_RESTRICT | I2, |
|
|
SoaData_type const & | soa_1, |
|
|
const SoaData_type & | soa_2, |
|
|
GetParticlePosition< PIdx > | , |
|
|
GetParticlePosition< PIdx > | , |
|
|
amrex::ParticleReal const | n1, |
|
|
amrex::ParticleReal const | n2, |
|
|
amrex::ParticleReal const | , |
|
|
amrex::ParticleReal const | , |
|
|
amrex::Real const | , |
|
|
amrex::ParticleReal const | , |
|
|
amrex::ParticleReal const | , |
|
|
amrex::ParticleReal const | m1, |
|
|
amrex::ParticleReal const | m2, |
|
|
amrex::Real const | dt, |
|
|
amrex::Real const | , |
|
|
index_type | coll_idx, |
|
|
index_type const | cell_start_pair, |
|
|
index_type *AMREX_RESTRICT | p_mask, |
|
|
index_type *AMREX_RESTRICT | p_pair_indices_1, |
|
|
index_type *AMREX_RESTRICT | p_pair_indices_2, |
|
|
amrex::ParticleReal *AMREX_RESTRICT | p_pair_reaction_weight, |
|
|
amrex::ParticleReal *AMREX_RESTRICT | p_product_data, |
|
|
amrex::RandomEngine const & | engine ) const |
|
inline |
Executor of the BremsstrahlungFunc class. Produces Bremsstrahlung photons at the cell level. Note that this function does not yet create the resulting photons, but instead sets p_mask and calculates the weight and energy.
- Parameters
-
| [in] | I1s,I1e | is the start and step index for I1 (start inclusive, step exclusive) |
| [in] | I2s,I2e | is the start and step index for I2 (start inclusive, step exclusive) |
| [in] | I1,I2 | index arrays. They determine all elements that will be used |
| [in] | soa_1,soa_2 | contain the struct of array data of the two species |
| [in] | n1,n2 | the species number densities |
| [in] | m1,m2 | the species masses |
| [in] | dt | is the time step length between two collision calls |
| [in] | coll_idx | is the collision index offset |
| [in] | cell_start_pair | is the start index of the pairs in that cell |
| [out] | p_mask | is a mask that will be set to true for all pairs |
| [out] | p_pair_indices_1,p_pair_indices_2 | arrays that store the indices of the particles of a given pair. Only p_pair_indices_1 will be used when creating photons |
| [out] | p_pair_reaction_weight | stores the weight of the resulting photons |
| [out] | p_product_data | stores the energy of the resulting photons |
| [in] | engine | the random engine |
◆ Photon_energy()
◆ m_computeSpeciesDensities
| bool BremsstrahlungFunc::Executor::m_computeSpeciesDensities = true |
◆ m_computeSpeciesTemperatures
| bool BremsstrahlungFunc::Executor::m_computeSpeciesTemperatures = false |
◆ m_kdsigdk
◆ m_KEgrid_eV
◆ m_koT1_cut_default
◆ m_koT1_grid
◆ m_multiplier
◆ m_need_product_data
| bool BremsstrahlungFunc::Executor::m_need_product_data = true |
◆ m_sigma_total
◆ nKE
| int BremsstrahlungFunc::Executor::nKE |
◆ nkoT1
| int BremsstrahlungFunc::Executor::nkoT1 |
The documentation for this struct was generated from the following file:
- /home/docs/checkouts/readthedocs.org/user_builds/warpx/checkouts/6368/Source/Particles/Collision/BinaryCollision/Bremsstrahlung/BremsstrahlungFunc.H