66 <<
"No nuclear target found - Hadron transporter exits";
75 <<
"*** Intranuclear rescattering has been turned off";
81 LOG(
"HadTransp",
pINFO) <<
"Calling the selected hadron transport MC";
96 <<
"Getting the nucleons out of the nucleus as if it was transparent";
98 TObjArrayIter piter(evrec);
110 if(!had_in_nuc)
continue;
113 <<
"Transporting " << p->
Name() <<
" out of the nuclear target";
138 Registry r(
"HadronTransporter_specific",
false ) ;
140 r.
Set(
"HadronTransp-Enable", algos -> GetBool(
"HadronTransp-Enable") ) ;
141 r.
Set(
"HadronTransp-Model", algos -> GetAlg(
"HadronTransp-Model") ) ;
142 if( algos->
Exists(
"CascadeReweightAlg") ) {
143 r.
Set(
"CascadeReweightAlg", algos -> GetAlg(
"CascadeReweightAlg") ) ;
153 bool good_config = true ;
159 <<
"Hadron transport was " << ((
fEnabled) ?
"" :
"not ") <<
" enabled";
161 RgAlg hadtransp_model ;
162 GetParam(
"HadronTransp-Model", hadtransp_model ) ;
164 <<
"Loading the hadron transport model: " << hadtransp_model;
170 good_config = false ;
171 LOG(
"HadronTransporter",
pERROR) <<
"The SubAlg HadronTransp-Model is not a XSecAlgorithmI";
176 if(
GetConfig().Exists(
"CascadeReweightAlg") ) {
179 good_config = false ;
180 LOG(
"HadronTransporter",
pERROR) <<
"The required CascadeReweightAlg does not exist. AlgID is : " <<
SubAlg(
"CascadeReweightAlg")->
Id() ;
184 if( ! good_config ) {
185 LOG(
"HadronTransporter",
pERROR) <<
"Configuration has failed.";
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE,...
static AlgConfigPool * Instance()
virtual const Registry & GetConfig(void) const
bool GetParam(const RgKey &name, T &p, bool is_top_call=true) const
virtual void Configure(const Registry &config)
const Algorithm * SubAlg(const RgKey ®istry_key) const
virtual const AlgId & Id(void) const
Get algorithm ID.
In this module, the event weight is set depending on the FSI fate. The weights are set depending on t...
STDHEP-like event record entry that can fit a particle or a nucleus.
string Name(void) const
Name that corresponds to the PDG code.
void SetFirstMother(int m)
void SetStatus(GHepStatus_t s)
GHepStatus_t Status(void) const
GENIE's GHEP MC event record.
virtual GHepParticle * TargetNucleus(void) const
virtual void AddParticle(const GHepParticle &p)
const EventRecordVisitorI * fCascadeReweight
Cascade reweight member.
void ProcessEventRecord(GHepRecord *event_rec) const
void Configure(const Registry &config)
void TransportInTransparentNuc(GHepRecord *ev) const
bool fEnabled
hadron transport enabled?
const EventRecordVisitorI * fHadTranspModel
hadron transport MC to use
A registry. Provides the container for algorithm configuration parameters.
bool Exists(RgKey key) const
item with input key exists?
void Set(RgIMapPair entry)
Simple functions for loading and reading nucleus dependent keys from config files.
Root of GENIE utility namespaces.
THE MAIN GENIE PROJECT NAMESPACE