Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
GIDI::Transporting::Settings Class Reference

#include <GIDI.hpp>

Inheritance diagram for GIDI::Transporting::Settings:

Public Member Functions

 Settings (std::string const &a_projectileID, DelayedNeutrons a_delayedNeutrons)
 ~Settings ()
std::string const & projectileID () const
DelayedNeutrons delayedNeutrons () const
void setDelayedNeutrons (DelayedNeutrons a_delayedNeutrons)
bool nuclearPlusCoulombInterferenceOnly () const
void setNuclearPlusCoulombInterferenceOnly (bool a_nuclearPlusCoulombInterferenceOnly)
bool zeroDepositionIfAllProductsTracked () const
void setZeroDepositionIfAllProductsTracked (bool a_zeroDepositionIfAllProductsTracked)
bool throwOnError () const
void setThrowOnError (bool a_throwOnError)
Vector multiGroupZeroVector (Particles const &a_particles, bool a_collapse=true) const
Matrix multiGroupZeroMatrix (Particles const &a_particles, std::string const &a_particleID, bool a_collapse=true) const

Detailed Description

This class is used to instruct deterministic methods and the Monte Carlo API MCGIDI on what data are being requested.

Definition at line 3712 of file GIDI.hpp.

Constructor & Destructor Documentation

◆ Settings()

GIDI::Transporting::Settings::Settings ( std::string const & a_projectileID,
DelayedNeutrons a_delayedNeutrons )
Parameters
a_projectileID[in] The PoPs id for the projectile.
a_delayedNeutrons[in] Flag indicating whether or not delayed neutron data are to be include in the requested data.

Definition at line 25 of file GIDI_settings.cc.

25 :
26 m_projectileID( a_projectileID ),
27 m_delayedNeutrons( a_delayedNeutrons ),
28 m_nuclearPlusCoulombInterferenceOnly( false ),
29 m_throwOnError( true ),
30 m_zeroDepositionIfAllProductsTracked( true ) {
31
32}

Referenced by GIDI::Transporting::MG::MG().

◆ ~Settings()

GIDI::Transporting::Settings::~Settings ( )

Definition at line 37 of file GIDI_settings.cc.

37 {
38
39}

Member Function Documentation

◆ delayedNeutrons()

◆ multiGroupZeroMatrix()

Matrix GIDI::Transporting::Settings::multiGroupZeroMatrix ( Particles const & a_particles,
std::string const & a_pid,
bool a_collapse = true ) const

Returns a Matrix of 0.0's of the proper length for the projectile's and product's multi-group data.

Parameters
a_particles[in] The list of particles to be transported.
a_pid[in] The PoPs index for the product.
a_collapse[in] If true, the length of the returned vector is for the collapsed multi-group, otherwise, it is for the uncollapsed multi-group.
Returns
The Matrix of 0.0.

Definition at line 71 of file GIDI_settings.cc.

71 {
72
73 Particle const *projectile( a_particles.particle( projectileID( ) ) );
74 Particle const *product( a_particles.particle( a_pid ) );
75
76 std::size_t n1 = projectile->fineMultiGroup( ).numberOfGroups( );
77 std::size_t n2 = product->fineMultiGroup( ).numberOfGroups( );
78 if( a_collapse ) {
79 n1 = projectile->numberOfGroups( );
80 n2 = product->numberOfGroups( );
81 }
82
83 Matrix matrix( n1, n2 );
84 return( matrix );
85}
std::string const & projectileID() const
Definition GIDI.hpp:3725

Referenced by GIDI::collapse().

◆ multiGroupZeroVector()

Vector GIDI::Transporting::Settings::multiGroupZeroVector ( Particles const & a_particles,
bool a_collapse = true ) const

Returns a Vector of 0.0's of the proper length for the projectile's multi-group data.

Parameters
a_particles[in] The list of particles to be transported.
a_collapse[in] If true, the length of the returned vector is for the collapsed multi-group, otherwise, it is for the uncollapsed multi-group.
Returns
The Vector of 0.0.

Definition at line 50 of file GIDI_settings.cc.

50 {
51
52 Particle const *projectile( a_particles.particle( projectileID( ) ) );
53
54 std::size_t n1 = projectile->fineMultiGroup( ).numberOfGroups( );
55 if( a_collapse ) n1 = projectile->numberOfGroups( );
56
57 Vector vector( n1 );
58 return( vector );
59}

◆ nuclearPlusCoulombInterferenceOnly()

bool GIDI::Transporting::Settings::nuclearPlusCoulombInterferenceOnly ( ) const
inline

Returns the value of the m_nuclearPlusCoulombInterferenceOnly member.

Definition at line 3730 of file GIDI.hpp.

Referenced by GIDI::ProtareSingle::checkIf_nuclearPlusCoulombInterferenceWanted().

◆ projectileID()

std::string const & GIDI::Transporting::Settings::projectileID ( ) const
inline

Returns the value of the m_projectileID member.

Definition at line 3725 of file GIDI.hpp.

Referenced by GIDI::collapse(), GIDI::collapse(), multiGroupZeroMatrix(), and multiGroupZeroVector().

◆ setDelayedNeutrons()

void GIDI::Transporting::Settings::setDelayedNeutrons ( DelayedNeutrons a_delayedNeutrons)
inline

Sets the m_delayedNeutrons member to a_delayedNeutrons.

Definition at line 3728 of file GIDI.hpp.

◆ setNuclearPlusCoulombInterferenceOnly()

void GIDI::Transporting::Settings::setNuclearPlusCoulombInterferenceOnly ( bool a_nuclearPlusCoulombInterferenceOnly)
inline

Sets the m_nuclearPlusCoulombInterferenceOnly to a_nuclearPlusCoulombInterferenceOnly.

Definition at line 3731 of file GIDI.hpp.

◆ setThrowOnError()

void GIDI::Transporting::Settings::setThrowOnError ( bool a_throwOnError)
inline

Definition at line 3739 of file GIDI.hpp.

3739{ m_throwOnError = a_throwOnError; }

Referenced by G4GIDI::readTarget().

◆ setZeroDepositionIfAllProductsTracked()

void GIDI::Transporting::Settings::setZeroDepositionIfAllProductsTracked ( bool a_zeroDepositionIfAllProductsTracked)
inline

Sets the m_zeroDepositionIfAllProductsTracked to a_zeroDepositionIfAllProductsTracked.

Definition at line 3735 of file GIDI.hpp.

◆ throwOnError()

bool GIDI::Transporting::Settings::throwOnError ( ) const
inline

Definition at line 3738 of file GIDI.hpp.

3738{ return( m_throwOnError ); }

Referenced by GIDI::Transporting::MG::form().

◆ zeroDepositionIfAllProductsTracked()

bool GIDI::Transporting::Settings::zeroDepositionIfAllProductsTracked ( ) const
inline

Returns the value of the m_zeroDepositionIfAllProductsTracked member.

Definition at line 3734 of file GIDI.hpp.

Referenced by GIDI::ProtareSingle::multiGroupDepositionEnergy(), and GIDI::Reaction::multiGroupDepositionEnergy().


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