#include <G4INCLStore.hh>
정적 Public 멤버 함수 | |
static G4bool | avatarComparisonPredicate (IAvatar *lhs, IAvatar *rhs) |
Comparison predicate for avatars. 더 자세히 ... | |
Private 타입 | |
typedef std::multimap < Particle *, IAvatar * > ::value_type | PAPair |
typedef std::multimap < Particle *, IAvatar * > ::iterator | PAIter |
typedef std::pair< PAIter, PAIter > | PAIterPair |
typedef std::set< IAvatar * > ::const_iterator | ASIter |
Private 멤버 함수 | |
Store (const Store &rhs) | |
Dummy copy constructor to shut up Coverity warnings. 더 자세히 ... | |
Store & | operator= (Store const &rhs) |
Dummy assignment operator to shut up Coverity warnings. 더 자세히 ... | |
void | connectAvatarToParticle (IAvatar *const a, Particle *const p) |
Connect an avatar to a particle. 더 자세히 ... | |
void | disconnectAvatarFromParticle (IAvatar *const a, Particle *const p) |
Disconnect an avatar from a particle. 더 자세히 ... | |
void | removeAvatar (IAvatar *const a) |
Remove an avatar from the list of avatars. 더 자세히 ... | |
Private 속성 | |
std::multimap< Particle *, IAvatar * > | particleAvatarConnections |
std::set< IAvatar * > | avatarsToBeRemoved |
Set of avatars to be removed. 더 자세히 ... | |
IAvatarList | avatarList |
ParticleList | incoming |
ParticleList | inside |
ParticleList | outgoing |
ParticleList | geomSpectators |
G4double | currentTime |
Book | theBook |
G4int | loadedA |
G4int | loadedZ |
G4double | loadedStoppingTime |
Config const * | theConfig |
The purpose of the Store object is to act as a "particle manager" that keeps track ofall the particles in our simulation. It also tracks the avatars and their connections to particles.
G4INCLStore.hh 파일의 73 번째 라인에서 정의되었습니다.
|
private |
G4INCLStore.hh 파일의 406 번째 라인에서 정의되었습니다.
|
private |
G4INCLStore.hh 파일의 401 번째 라인에서 정의되었습니다.
|
private |
G4INCLStore.hh 파일의 402 번째 라인에서 정의되었습니다.
|
private |
G4INCLStore.hh 파일의 400 번째 라인에서 정의되었습니다.
G4INCL::Store::Store | ( | Config const *const | config | ) |
Store constructor
G4INCLStore.cc 파일의 45 번째 라인에서 정의되었습니다.
G4INCL::Store::~Store | ( | ) |
Store destructor
G4INCLStore.cc 파일의 53 번째 라인에서 정의되었습니다.
다음을 참조함 : clear(), G4INCL::Book::reset(), theBook.
|
private |
Dummy copy constructor to shut up Coverity warnings.
Add one particle to the store.
Particle objects don't know anything about avatars so this method will only do two things:
G4INCLStore.cc 파일의 58 번째 라인에서 정의되었습니다.
다음을 참조함 : inside.
다음에 의해서 참조됨 : G4INCL::Nucleus::applyFinalState(), G4INCL::Nucleus::initializeParticles(), loadParticles(), particleHasEntered(), G4INCL::StandardPropagationModel::registerAvatar().
void G4INCL::Store::add | ( | ParticleList const & | pL | ) |
Add a list of particles to the Store.
This acts as if add(Particle *) was called on each element of the list.
G4INCLStore.cc 파일의 62 번째 라인에서 정의되었습니다.
다음을 참조함 : inside.
Add one avatar to the store
Avatars know about the particles they are associated with. Adding an avatar consists of the following steps:
G4INCLStore.cc 파일의 83 번째 라인에서 정의되었습니다.
다음을 참조함 : avatarList, connectAvatarToParticle(), e, G4INCL::IAvatar::getParticles().
Add a particle to the incoming list.
p | particle to add |
G4INCLStore.cc 파일의 95 번째 라인에서 정의되었습니다.
다음을 참조함 : incoming.
다음에 의해서 참조됨 : addParticleEntryAvatar().
Add one ParticleEntry avatar.
G4INCLStore.cc 파일의 66 번째 라인에서 정의되었습니다.
다음을 참조함 : addIncomingParticle(), avatarList, connectAvatarToParticle(), e, G4INCL::IAvatar::getParticles().
다음에 의해서 참조됨 : addParticleEntryAvatars(), G4INCL::INCL::makeCompoundNucleus(), G4INCL::StandardPropagationModel::shootParticle().
void G4INCL::Store::addParticleEntryAvatars | ( | IAvatarList const & | al | ) |
Add one ParticleEntry avatar.
G4INCLStore.cc 파일의 78 번째 라인에서 정의되었습니다.
다음을 참조함 : a, addParticleEntryAvatar(), e.
다음에 의해서 참조됨 : G4INCL::StandardPropagationModel::shootComposite().
add the particle to the outgoing particle list.
p | pointer to the particle to be added |
G4INCLStore.hh 파일의 190 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4INCL::Nucleus::applyFinalState(), G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::Nucleus::decayMe(), G4INCL::Nucleus::decayOutgoingClusters(), G4INCL::Nucleus::decayOutgoingDeltas(), G4INCL::Nucleus::decayOutgoingPionResonances(), G4INCL::Nucleus::decayOutgoingSigmaZero(), G4INCL::Nucleus::emitInsideKaon(), G4INCL::Nucleus::emitInsideLambda(), G4INCL::Nucleus::emitInsidePions(), G4INCL::Nucleus::emitInsideStrangeParticles(), G4INCL::INCL::makeProjectileRemnant().
|
inline |
Add a list of particles to the outgoing particle list.
pl | list of particles to be added |
G4INCLStore.hh 파일의 196 번째 라인에서 정의되었습니다.
다음을 참조함 : e.
|
inlinestatic |
Comparison predicate for avatars.
avatarComparisonPredicate is used by the std::sort or std::min_element functions to compare the avatar objects according to their time.
lhs | pointer to the first avatar |
rhs | pointer to the second avatar |
G4INCLStore.hh 파일의 352 번째 라인에서 정의되었습니다.
다음을 참조함 : G4INCL::IAvatar::getTime().
다음에 의해서 참조됨 : findSmallestTime().
Clear all avatars and particles from the store.
Warning! This actually deletes the objects as well!
G4INCLStore.cc 파일의 203 번째 라인에서 정의되었습니다.
다음을 참조함 : clearAvatars(), clearInside(), clearOutgoing(), INCL_WARN, incoming.
다음에 의해서 참조됨 : loadParticles(), ~Store().
void G4INCL::Store::clearAvatars | ( | ) |
Clear avatars only.
G4INCLStore.cc 파일의 193 번째 라인에서 정의되었습니다.
다음을 참조함 : avatarList, avatarsToBeRemoved, e, particleAvatarConnections.
다음에 의해서 참조됨 : clear(), G4INCL::StandardPropagationModel::propagate().
|
inline |
Clear the incoming list.
G4INCLStore.hh 파일의 145 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4INCL::INCL::makeCompoundNucleus(), G4INCL::INCL::postCascade().
void G4INCL::Store::clearInside | ( | ) |
Clear all inside particles from the store.
Warning! This actually deletes the objects as well!
G4INCLStore.cc 파일의 216 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : clear().
void G4INCL::Store::clearOutgoing | ( | ) |
Clear all outgoing particles from the store.
Warning! This actually deletes the objects as well!
G4INCLStore.cc 파일의 223 번째 라인에서 정의되었습니다.
다음을 참조함 : G4INCL::Cluster::deleteParticles(), e, outgoing.
다음에 의해서 참조됨 : clear(), G4INCL::INCL::makeCompoundNucleus().
Connect an avatar to a particle.
Adds the avatar to the list of avatars where the particle appears. This is typically called when the avatar is created.
p | the particle |
a | the avatar |
G4INCLStore.cc 파일의 99 번째 라인에서 정의되었습니다.
다음을 참조함 : particleAvatarConnections.
다음에 의해서 참조됨 : add(), addParticleEntryAvatar().
G4bool G4INCL::Store::containsCollisions | ( | ) | const |
G4INCLStore.cc 파일의 351 번째 라인에서 정의되었습니다.
다음을 참조함 : avatarList, G4INCL::CollisionAvatarType, e.
|
inline |
G4INCLStore.hh 파일의 261 번째 라인에서 정의되었습니다.
|
inline |
Clear the incoming list and delete the particles.
G4INCLStore.hh 파일의 150 번째 라인에서 정의되었습니다.
다음을 참조함 : e.
다음에 의해서 참조됨 : G4INCL::INCL::postCascade().
Disconnect an avatar from a particle.
Removes the avatar from the list of avatars where the particle appears. This is typically called when the avatar has been invalidated or realised.
p | the particle |
a | the avatar |
G4INCLStore.cc 파일의 103 번째 라인에서 정의되었습니다.
다음을 참조함 : INCL_WARN, particleAvatarConnections.
다음에 의해서 참조됨 : removeAvatar().
|
inline |
Returns a list of dynamical spectators.
Looks in the outgoing list for particles without collisions and decays, removes them from outgoing and returns them in a list.
G4INCLStore.hh 파일의 232 번째 라인에서 정의되었습니다.
다음을 참조함 : e, G4INCL::UnorderedVector< T >::remove().
다음에 의해서 참조됨 : G4INCL::INCL::makeProjectileRemnant().
IAvatar * G4INCL::Store::findSmallestTime | ( | ) |
Find the avatar that has the smallest time.
G4INCLStore.cc 파일의 142 번째 라인에서 정의되었습니다.
다음을 참조함 : avatarComparisonPredicate(), avatarList, removeAvatar().
다음에 의해서 참조됨 : G4INCL::StandardPropagationModel::propagate().
|
inline |
Return the list of avatars
G4INCLStore.hh 파일의 126 번째 라인에서 정의되었습니다.
|
inline |
Return the pointer to the Book object which keeps track of various counters.
G4INCLStore.hh 파일의 259 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4INCL::Nucleus::applyFinalState(), G4INCL::CascadeAction::beforeAvatarDefaultAction(), G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::INCL::continueCascade(), G4INCL::Nucleus::emitInsideKaon(), G4INCL::Nucleus::emitInsideLambda(), G4INCL::Nucleus::emitInsidePions(), G4INCL::Nucleus::emitInsideStrangeParticles(), G4INCL::InteractionAvatar::enforceEnergyConservation(), G4INCL::Nucleus::fillEventInfo(), G4INCL::StandardPropagationModel::generateBinaryCollisionAvatar(), G4INCL::BinaryCollisionAvatar::getChannel(), G4INCL::SurfaceAvatar::getChannel(), G4INCL::INCL::initializeTarget(), G4INCL::Nucleus::insertParticle(), G4INCL::PauliStrictStandard::isBlocked(), G4INCL::Nucleus::isEventTransparent(), G4INCL::DecayAvatar::postInteraction(), G4INCL::BinaryCollisionAvatar::postInteraction(), G4INCL::SurfaceAvatar::postInteraction(), G4INCL::InteractionAvatar::postInteraction(), G4INCL::StandardPropagationModel::propagate(), G4INCL::InteractionAvatar::shouldUseLocalEnergy().
|
inline |
Get the config object
G4INCLStore.hh 파일의 273 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4INCL::SurfaceAvatar::getChannel(), G4INCL::ClusteringModelIntercomparison::getCluster(), G4INCL::SurfaceAvatar::getTransmissionProbability(), G4INCL::ParticleEntryChannel::particleEnters(), G4INCL::InteractionAvatar::postInteraction(), G4INCL::InteractionAvatar::shouldUseLocalEnergy().
|
inline |
Return the list of incoming particles (i.e. particles that have yet to enter the cascade).
G4INCLStore.hh 파일의 217 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4INCL::INCL::continueCascade().
|
inline |
Get the value of the nucleus mass number that we read from file with loadParticles.
G4INCLStore.hh 파일의 311 번째 라인에서 정의되었습니다.
|
inline |
Get the value of the stopping time that we read from file with loadParticles.
G4INCLStore.hh 파일의 323 번째 라인에서 정의되었습니다.
|
inline |
Get the value of the nucleus charge number that we read from file with loadParticles.
G4INCLStore.hh 파일의 317 번째 라인에서 정의되었습니다.
|
inline |
Return the list of outgoing particles (i.e. particles that have left the cascade).
G4INCLStore.hh 파일의 223 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::Nucleus::computeRecoilKinematics(), G4INCL::Nucleus::computeSeparationEnergyBalance(), G4INCL::Nucleus::decayOutgoingClusters(), G4INCL::Nucleus::decayOutgoingDeltas(), G4INCL::Nucleus::decayOutgoingNeutralKaon(), G4INCL::Nucleus::decayOutgoingPionResonances(), G4INCL::Nucleus::decayOutgoingSigmaZero(), G4INCL::Nucleus::fillEventInfo(), G4INCL::Nucleus::getConservationBalance(), G4INCL::INCL::postCascade(), G4INCL::Nucleus::print().
|
inline |
Return the list of "active" particles (i.e. particles that can participate in collisions).
G4INCLStore.hh 파일의 253 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : G4INCL::AvatarDumpAction::afterAvatarUserAction(), G4INCL::Nucleus::computeCenterOfMass(), G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::Nucleus::computeTotalEnergy(), G4INCL::Nucleus::containsAntiKaon(), G4INCL::Nucleus::containsDeltas(), G4INCL::Nucleus::containsEtas(), G4INCL::Nucleus::containsKaon(), G4INCL::Nucleus::containsLambda(), G4INCL::Nucleus::containsOmegas(), G4INCL::Nucleus::containsSigma(), G4INCL::Nucleus::decayInsideDeltas(), G4INCL::Nucleus::decayInsideStrangeParticles(), G4INCL::Nucleus::emitInsideKaon(), G4INCL::Nucleus::emitInsideLambda(), G4INCL::Nucleus::emitInsidePions(), G4INCL::Nucleus::emitInsideStrangeParticles(), G4INCL::StandardPropagationModel::generateAllAvatars(), G4INCL::PauliStandard::getBlockingProbability(), G4INCL::ClusteringModelIntercomparison::getCluster(), G4INCL::PauliGlobal::isBlocked(), G4INCL::CDPP::isBlocked(), G4INCL::Nucleus::print(), G4INCL::StandardPropagationModel::updateAvatars().
void G4INCL::Store::loadParticles | ( | std::string const & | filename | ) |
Load particle configuration from ASCII file (see avatarPredictionTest).
G4INCLStore.cc 파일의 239 번째 라인에서 정의되었습니다.
다음을 참조함 : A(), add(), clear(), E, in, INCL_FATAL, G4INCL::Book::incrementCascading(), loadedA, loadedStoppingTime, loadedZ, G4INCL::Particle::makeParticipant(), G4INCL::Neutron, G4INCL::Proton, G4INCL::Particle::setPotentialEnergy(), theBook, G4INCL::UnknownParticle, x, y, Z, z.
Dummy assignment operator to shut up Coverity warnings.
Remove the particle from the system. This also removes all avatars related to this particle.
G4INCLStore.cc 파일의 181 번째 라인에서 정의되었습니다.
다음을 참조함 : inside, particleHasBeenUpdated(), G4INCL::UnorderedVector< T >::remove().
다음에 의해서 참조됨 : G4INCL::Nucleus::applyFinalState().
Mark the particle as ejected. This removes it from the list of inside particles and removes all avatars related to this particle.
G4INCLStore.cc 파일의 175 번째 라인에서 정의되었습니다.
다음을 참조함 : inside, particleHasBeenUpdated(), G4INCL::UnorderedVector< T >::remove().
다음에 의해서 참조됨 : G4INCL::Nucleus::applyFinalState(), G4INCL::Nucleus::computeOneNucleonRecoilKinematics(), G4INCL::Nucleus::emitInsideKaon(), G4INCL::Nucleus::emitInsideLambda(), G4INCL::Nucleus::emitInsidePions(), G4INCL::Nucleus::emitInsideStrangeParticles().
Notify the Store about a particle update.
Notify the Store that a particle has been updated. This schedules the removal of obsolete avatars and their disconnection from the particle.
G4INCLStore.cc 파일의 127 번째 라인에서 정의되었습니다.
다음을 참조함 : avatarsToBeRemoved, particleAvatarConnections.
다음에 의해서 참조됨 : G4INCL::Nucleus::applyFinalState(), particleHasBeenDestroyed(), particleHasBeenEjected().
Move a particle from incoming to inside.
particle | pointer to a particle |
G4INCLStore.cc 파일의 188 번째 라인에서 정의되었습니다.
다음을 참조함 : add(), removeFromIncoming().
다음에 의해서 참조됨 : G4INCL::Nucleus::insertParticle().
std::string G4INCL::Store::printAvatars | ( | ) |
std::string G4INCL::Store::printParticleConfiguration | ( | ) |
Print the nucleon configuration of the nucleus.
G4INCLStore.cc 파일의 286 번째 라인에서 정의되었습니다.
다음을 참조함 : A(), E, e, inside, G4INCL::Neutron, G4INCL::Proton, ss, x, y, Z, z.
다음에 의해서 참조됨 : writeParticles().
Remove an avatar from the list of avatars.
Removes an avatar from the list of all avatars. The avatar is not deleted.
a | the avatar to remove |
G4INCLStore.cc 파일의 115 번째 라인에서 정의되었습니다.
다음을 참조함 : avatarList, disconnectAvatarFromParticle(), e, G4INCL::IAvatar::getParticles(), G4INCL::UnorderedVector< T >::remove().
다음에 의해서 참조됨 : findSmallestTime(), removeScheduledAvatars().
Add a particle to the incoming list.
p | particle to add |
G4INCLStore.hh 파일의 142 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : particleHasEntered().
void G4INCL::Store::removeScheduledAvatars | ( | ) |
Remove avatars that have been scheduled.
G4INCLStore.cc 파일의 134 번째 라인에서 정의되었습니다.
다음을 참조함 : a, avatarsToBeRemoved, e, removeAvatar().
다음에 의해서 참조됨 : G4INCL::Nucleus::applyFinalState().
Make one time step: propagate particles and subtract the length of the step from the avatar times.
G4INCLStore.cc 파일의 168 번째 라인에서 정의되었습니다.
다음을 참조함 : inside.
다음에 의해서 참조됨 : G4INCL::StandardPropagationModel::propagate().
void G4INCL::Store::writeParticles | ( | std::string const & | filename | ) |
Print the nucleon configuration of the nucleus.
G4INCLStore.cc 파일의 337 번째 라인에서 정의되었습니다.
다음을 참조함 : printParticleConfiguration().
|
private |
List of all avatars
G4INCLStore.hh 파일의 412 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : add(), addParticleEntryAvatar(), clearAvatars(), containsCollisions(), findSmallestTime(), printAvatars(), removeAvatar().
|
private |
Set of avatars to be removed.
G4INCLStore.hh 파일의 405 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : clearAvatars(), particleHasBeenUpdated(), removeScheduledAvatars().
|
private |
The current time in the simulation
G4INCLStore.hh 파일의 437 번째 라인에서 정의되었습니다.
|
private |
List of geometrical spectators
G4INCLStore.hh 파일의 432 번째 라인에서 정의되었습니다.
|
private |
List of incoming particles
G4INCLStore.hh 파일의 417 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : addIncomingParticle(), clear().
|
private |
List of particles that are inside the nucleus
G4INCLStore.hh 파일의 422 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : add(), clearInside(), particleHasBeenDestroyed(), particleHasBeenEjected(), printParticleConfiguration(), timeStep().
|
private |
The target nucleus mass number that was loaded from a particle file
G4INCLStore.hh 파일의 447 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : loadParticles().
|
private |
The stopping time that was loaded from a particle file
G4INCLStore.hh 파일의 457 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : loadParticles().
|
private |
The target nucleus charge number that was loaded from a particle file
G4INCLStore.hh 파일의 452 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : loadParticles().
|
private |
Map particle -> [avatar]
G4INCLStore.hh 파일의 399 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : clearAvatars(), connectAvatarToParticle(), disconnectAvatarFromParticle(), particleHasBeenUpdated().
|
private |
The Book object keeps track of global counters
G4INCLStore.hh 파일의 442 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : loadParticles(), ~Store().
|
private |
Pointer to the Config object
G4INCLStore.hh 파일의 462 번째 라인에서 정의되었습니다.