WarpX
Classes | Public Member Functions | Private Types | Private Attributes | List of all members
NuclearFusionFunc Class Reference

This functor does binary nuclear fusions on a single cell. Particles of the two reacting species are paired with each other and for each pair we compute if a fusion event occurs. If so, we fill a mask (input parameter p_mask) with true so that product particles corresponding to a given pair can be effectively created in the particle creation functor. This functor also reads and contains the fusion multiplier. More...

#include <NuclearFusionFunc.H>

Classes

struct  Executor
 

Public Member Functions

 NuclearFusionFunc ()=default
 Default constructor of the NuclearFusionFunc class. More...
 
 NuclearFusionFunc (const std::string &collision_name, MultiParticleContainer const *const mypc, const bool isSameSpecies)
 Constructor of the NuclearFusionFunc class. More...
 
Executor const & executor () 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
 
using SoaData_type = WarpXParticleContainer::ParticleTileType::ParticleTileDataType
 

Private Attributes

amrex::ParticleReal m_fusion_multiplier
 
amrex::ParticleReal m_probability_threshold
 
amrex::ParticleReal m_probability_target_value
 
NuclearFusionType m_fusion_type
 
bool m_isSameSpecies
 
Executor m_exe
 

Detailed Description

This functor does binary nuclear fusions on a single cell. Particles of the two reacting species are paired with each other and for each pair we compute if a fusion event occurs. If so, we fill a mask (input parameter p_mask) with true so that product particles corresponding to a given pair can be effectively created in the particle creation functor. This functor also reads and contains the fusion multiplier.

Member Typedef Documentation

◆ index_type

◆ ParticleBins

◆ ParticleTileDataType

◆ ParticleTileType

◆ ParticleType

◆ SoaData_type

Constructor & Destructor Documentation

◆ NuclearFusionFunc() [1/2]

NuclearFusionFunc::NuclearFusionFunc ( )
default

Default constructor of the NuclearFusionFunc class.

◆ NuclearFusionFunc() [2/2]

NuclearFusionFunc::NuclearFusionFunc ( const std::string &  collision_name,
MultiParticleContainer const *const  mypc,
const bool  isSameSpecies 
)
inline

Constructor of the NuclearFusionFunc class.

Parameters
[in]collision_namethe name of the collision
[in]mypcpointer to the MultiParticleContainer
[in]isSameSpecieswhether the two colliding species are the same

Member Function Documentation

◆ executor()

Executor const& NuclearFusionFunc::executor ( ) const
inline

Member Data Documentation

◆ m_exe

Executor NuclearFusionFunc::m_exe
private

◆ m_fusion_multiplier

amrex::ParticleReal NuclearFusionFunc::m_fusion_multiplier
private

◆ m_fusion_type

NuclearFusionType NuclearFusionFunc::m_fusion_type
private

◆ m_isSameSpecies

bool NuclearFusionFunc::m_isSameSpecies
private

◆ m_probability_target_value

amrex::ParticleReal NuclearFusionFunc::m_probability_target_value
private

◆ m_probability_threshold

amrex::ParticleReal NuclearFusionFunc::m_probability_threshold
private

The documentation for this class was generated from the following file: