|
WarpX
|
This class performs generic binary collisions. More...
#include <BinaryCollision.H>
Public Member Functions | |
| BinaryCollision (std::string collision_name, MultiParticleContainer const *const mypc) | |
| Constructor of the BinaryCollision class. | |
| ~BinaryCollision () override=default | |
| BinaryCollision (BinaryCollision const &)=default | |
| BinaryCollision & | operator= (BinaryCollision const &)=default |
| BinaryCollision (BinaryCollision &&)=delete | |
| BinaryCollision & | operator= (BinaryCollision &&)=delete |
| void | doCollisions (amrex::Real cur_time, amrex::Real dt, MultiParticleContainer *mypc) override |
| void | doCollisionsWithinTile (amrex::Real dt, int const lev, amrex::MFIter const &mfi, WarpXParticleContainer &species_1, WarpXParticleContainer &species_2, amrex::Vector< WarpXParticleContainer * > product_species_vector, SmartCopy *copy_species1, SmartCopy *copy_species2) |
Public Member Functions inherited from CollisionBase | |
| CollisionBase (const std::string &collision_name) | |
| CollisionBase (CollisionBase const &)=delete | |
| CollisionBase (CollisionBase &&)=delete | |
| CollisionBase & | operator= (CollisionBase const &)=delete |
| CollisionBase & | operator= (CollisionBase const &&)=delete |
| virtual | ~CollisionBase ()=default |
| int | get_ndt () const |
| bool | use_global_debye_length () const |
Private Types | |
| using | ParticleType = WarpXParticleContainer::ParticleType |
| using | ParticleTileType = WarpXParticleContainer::ParticleTileType |
| using | ParticleTileDataType = ParticleTileType::ParticleTileDataType |
| using | ParticleBins = amrex::DenseBins<ParticleTileDataType> |
| using | index_type = ParticleBins::index_type |
Private Attributes | |
| bool | m_isSameSpecies |
| bool | m_have_product_species |
| bool | m_correct_energy_momentum = false |
| amrex::ParticleReal | m_beta_weight_exponent = 1. |
| amrex::ParticleReal | m_energy_fraction = 0.05 |
| amrex::ParticleReal | m_energy_fraction_max = 0.5 |
| amrex::Vector< std::string > | m_product_species |
| CollisionFunctor | m_binary_collision_functor |
| CopyTransformFunctor | m_copy_transform_functor |
Additional Inherited Members | |
Protected Attributes inherited from CollisionBase | |
| amrex::Vector< std::string > | m_species_names |
| int | m_ndt |
| bool | m_use_global_debye_length = false |
This class performs generic binary collisions.
| CollisionFunctor | the specific binary collision functor that acts on a single cell |
| CopyTransformFunctor | the second functor used in the case of particle creation |
|
private |
|
private |
|
private |
|
private |
|
private |
|
inline |
Constructor of the BinaryCollision class.
| [in] | collision_name | the name of the collision |
| [in] | mypc | Container of species involved |
|
overridedefault |
|
default |
|
delete |
|
inlineoverridevirtual |
Perform the collisions
| cur_time | Current time |
| dt | Time step size |
| mypc | Container of species involved |
Reimplemented from CollisionBase.
|
inline |
Perform all binary collisions within a tile
| [in] | dt | time step size |
| [in] | lev | the mesh-refinement level |
| [in] | mfi | iterator for multifab |
| species_1 | first species container | |
| species_2 | second species container | |
| product_species_vector | vector of pointers to product species containers | |
| copy_species1 | vector of SmartCopy functors used to copy species 1 to product species | |
| copy_species2 | vector of SmartCopy functors used to copy species 2 to product species |
|
delete |
|
default |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |