| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

DsPhysConsElectroNu Class Reference

Electro Nuclear processes. More...

#include <DsPhysConsElectroNu.h>

Inheritance diagram for DsPhysConsElectroNu:

[legend]
Collaboration diagram for DsPhysConsElectroNu:
[legend]
List of all members.

Public Types

 SUCCESS
 NO_INTERFACE
 VERSMISMATCH
 LAST_ERROR
enum  Status
enum  Status
enum  Status

Public Member Functions

 DsPhysConsElectroNu (const std::string &type, const std::string &name, const IInterface *parent)
virtual ~DsPhysConsElectroNu ()
void ConstructParticle ()
void ConstructProcess ()
virtual StatusCode initialize ()
virtual StatusCode finalize ()
virtual G4VPhysicsConstructor * physicsConstructor () const
virtual unsigned long release ()
StatusCode release (const IInterface *interface) const
virtual StatusCode queryInterface (const InterfaceID &riid, void **ppvInterface)=0
virtual StatusCode queryInterface (const InterfaceID &riid, void **ppvInterface)=0
virtual StatusCode queryInterface (const InterfaceID &riid, void **ppvInterface)=0
virtual StatusCode queryInterface (const InterfaceID &riid, void **ppvUnknown)
virtual unsigned long addRef ()=0
virtual unsigned long addRef ()=0
virtual unsigned long addRef ()=0
virtual unsigned long addRef ()
virtual const std::string & type () const =0
virtual const std::string & type () const
virtual const IInterfaceparent () const =0
virtual const IInterfaceparent () const
virtual StatusCode configure ()=0
virtual StatusCode configure ()
virtual StatusCode start ()=0
virtual StatusCode start ()
virtual StatusCode stop ()=0
virtual StatusCode stop ()
virtual StatusCode terminate ()=0
virtual StatusCode terminate ()
virtual StatusCode reinitialize ()=0
virtual StatusCode reinitialize ()
virtual StatusCode restart ()=0
virtual StatusCode restart ()
virtual Gaudi::StateMachine::State FSMState () const =0
virtual Gaudi::StateMachine::State FSMState () const
virtual StatusCode sysInitialize ()=0
virtual StatusCode sysInitialize ()
virtual StatusCode sysStart ()=0
virtual StatusCode sysStart ()
virtual StatusCode sysStop ()=0
virtual StatusCode sysStop ()
virtual StatusCode sysFinalize ()=0
virtual StatusCode sysFinalize ()
virtual StatusCode sysReinitialize ()=0
virtual StatusCode sysReinitialize ()
virtual StatusCode sysRestart ()=0
virtual StatusCode sysRestart ()
virtual unsigned long refCount () const =0
virtual const std::string & name () const =0
virtual const std::string & name () const
virtual void handle (const Incident &i)
IGiGaSvcgigaSvc () const
IGiGaSetUpSvcsetupSvc () const
INTupleSvcntupleSvc () const
INTupleSvcevtColSvc () const
IDataProviderSvcdetSvc () const
IDataProviderSvcevtSvc () const
IIncidentSvcincSvc () const
IChronoStatSvcchronoSvc () const
IHistogramSvchistoSvc () const
IAlgContextSvccontextSvc () const
DataObjectput (IDataProviderSvc *svc, DataObject *object, const std::string &address, const bool useRootInTES=true) const
DataObjectput (DataObject *object, const std::string &address, const bool useRootInTES=true) const
Gaudi::Utils::GetData< TYPE
>::return_type 
get (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const
Gaudi::Utils::GetData< TYPE
>::return_type 
get (const std::string &location, const bool useRootInTES=true) const
TYPE * getDet (IDataProviderSvc *svc, const std::string &location) const
TYPE * getDet (const std::string &location) const
bool exist (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const
bool exist (const std::string &location, const bool useRootInTES=true) const
bool existDet (IDataProviderSvc *svc, const std::string &location) const
bool existDet (const std::string &location) const
TYPE * getOrCreate (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const
TYPE * getOrCreate (const std::string &location, const bool useRootInTES=true) const
TOOL * tool (const std::string &type, const std::string &name, const IInterface *parent=0, bool create=true) const
TOOL * tool (const std::string &type, const IInterface *parent=0, bool create=true) const
SERVICE * svc (const std::string &name, const bool create=true) const
IUpdateManagerSvcupdMgrSvc () const
IDataProviderSvcfastContainersSvc () const
StatusCode Error (const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const
StatusCode Warning (const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const
StatusCode Print (const std::string &msg, const StatusCode st=StatusCode::SUCCESS, const MSG::Level lev=MSG::INFO) const
StatusCode Assert (const bool ok, const std::string &message="", const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Assert (const bool ok, const char *message, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Exception (const std::string &msg, const GaudiException &exc, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Exception (const std::string &msg, const std::exception &exc, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Exception (const std::string &msg="no message", const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
MsgStreammsgStream (const MSG::Level level) const
MsgStreamalways () const
MsgStreamfatal () const
MsgStreamerr () const
MsgStreamerror () const
MsgStreamwarning () const
MsgStreaminfo () const
MsgStreamdebug () const
MsgStreamverbose () const
MsgStreammsg () const
const Statisticscounters () const
StatEntitycounter (const std::string &tag) const
MSG::Level msgLevel () const
bool msgLevel (const MSG::Level level) const
void resetMsgStream () const
bool typePrint () const
bool propsPrint () const
bool statPrint () const
bool errorsPrint () const
long printStat (const MSG::Level level=MSG::ALWAYS) const
long printErrors (const MSG::Level level=MSG::ALWAYS) const
long printProps (const MSG::Level level=MSG::ALWAYS) const
void registerCondition (const std::string &condition, StatusCode(CallerClass::*mf)()=NULL)
void registerCondition (const std::string &condition, CondType *&condPtrDest, StatusCode(CallerClass::*mf)()=NULL)
void registerCondition (char *condition, StatusCode(CallerClass::*mf)()=NULL)
void registerCondition (TargetClass *condition, StatusCode(CallerClass::*mf)()=NULL)
StatusCode runUpdate ()
TransientFastContainer< T > * getFastContainer (const std::string &location, typename TransientFastContainer< T >::size_type initial=0)
const std::string & context () const
const std::string & rootInTES () const
double globalTimeOffset () const
virtual Gaudi::StateMachine::State targetFSMState () const
virtual StatusCode setProperty (const Property &p)
virtual StatusCode setProperty (const std::string &s)
virtual StatusCode setProperty (const std::string &n, const std::string &v)
StatusCode setProperty (const std::string &name, const TYPE &value)
virtual StatusCode getProperty (Property *p) const
virtual const PropertygetProperty (const std::string &name) const
virtual StatusCode getProperty (const std::string &n, std::string &v) const
virtual const std::vector<
Property * > & 
getProperties () const
PropertyMgrgetPropertyMgr ()
ISvcLocatorserviceLocator () const
ISvcLocatorsvcLoc () const
IMessageSvcmsgSvc () const
IToolSvctoolSvc () const
StatusCode setProperties ()
StatusCode service (const std::string &name, T *&svc, bool createIf=true) const
StatusCode service (const std::string &type, const std::string &name, T *&svc) const
void declInterface (const InterfaceID &, void *)
PropertydeclareProperty (const std::string &name, T &property, const std::string &doc="none") const
PropertydeclareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") const
IAuditorSvcauditorSvc () const
IMonitorSvcmonitorSvc () const
void declareInfo (const std::string &name, const T &var, const std::string &desc) const
void declareInfo (const std::string &name, const std::string &format, const void *var, int size, const std::string &desc) const

Static Public Member Functions

static const InterfaceIDinterfaceID ()
static const InterfaceIDinterfaceID ()
static const InterfaceIDinterfaceID ()

Public Attributes

 SUCCESS
 NO_INTERFACE
 VERSMISMATCH
 LAST_ERROR

Protected Types

typedef std::map< std::string,
StatEntity
Statistics
typedef std::map< std::string,
unsigned int > 
Counter
typedef std::vector< IAlgTool * > AlgTools
typedef std::pair< IInterface *,
std::string > 
ServiceEntry
typedef std::vector< ServiceEntryServices

Protected Member Functions

virtual unsigned long refCount () const
StatusCode releaseTool (const IAlgTool *tool) const
StatusCode releaseSvc (const IInterface *svc) const
int outputLevel () const
IntegerPropertyoutputLevelProperty ()
void initOutputLevel (Property &prop)

Static Protected Attributes

static const bool IgnoreRootInTES
static const bool UseRootInTES

Private Attributes

double m_maxGammaReactionEnergy
 MaxGammaReactionEnergy : Maximum gamma nuclear reaction energy.
double m_minFinalStateEnergy
 MinFinalStateEnergy : Min energy for final state hadron production.
double m_maxFinalStateEnergy
 MaxFinalStateEnergy : Max energy for final state hadron production.

Detailed Description

Electro Nuclear processes.

bv@bnl.gov Wed Apr 16 11:33:27 2008

Definition at line 21 of file DsPhysConsElectroNu.h.


Constructor & Destructor Documentation

DsPhysConsElectroNu::DsPhysConsElectroNu ( const std::string &  type,
const std::string &  name,
const IInterface parent 
)

Definition at line 22 of file DsPhysConsElectroNu.cc.

00025     : GiGaPhysConstructorBase(type,name,parent)
00026 {
00027     declareProperty("MaxGammaReactionEnergy",m_maxGammaReactionEnergy=3.5*GeV,
00028                     "Maximum gamma nuclear reaction energy.");
00029     declareProperty("MinFinalStateEnergy",m_minFinalStateEnergy=3.0*GeV,
00030                     "Min energy for final state hadron production.");
00031     declareProperty("MaxFinalStateEnergy",m_maxFinalStateEnergy=100*TeV,
00032                     "Max energy for final state hadron production.");
00033 }

DsPhysConsElectroNu::~DsPhysConsElectroNu (  )  [virtual]

Definition at line 35 of file DsPhysConsElectroNu.cc.

00036 {
00037 }


Member Function Documentation

void DsPhysConsElectroNu::ConstructParticle (  ) 

Definition at line 40 of file DsPhysConsElectroNu.cc.

00041 {
00042 }

void DsPhysConsElectroNu::ConstructProcess (  ) 

Definition at line 43 of file DsPhysConsElectroNu.cc.

00044 {
00045     // gamma
00046     G4ProcessManager* pmanager = G4Gamma::Gamma()->GetProcessManager();
00047 
00048     G4PhotoNuclearProcess * thePhotoNuclearProcess = new G4PhotoNuclearProcess;
00049     G4GammaNuclearReaction * theGammaReaction = new G4GammaNuclearReaction;
00050     G4TheoFSGenerator * theModel = new G4TheoFSGenerator;
00051     G4QGSModel<G4GammaParticipants>* theStringModel = new G4QGSModel<G4GammaParticipants>;
00052     G4ExcitedStringDecay * theStringDecay = new G4ExcitedStringDecay(new G4QGSMFragmentation);
00053     theStringModel->SetFragmentationModel(theStringDecay);
00054     G4GeneratorPrecompoundInterface * theCascade = new G4GeneratorPrecompoundInterface;
00055     theModel->SetTransport(theCascade);
00056     theModel->SetHighEnergyGenerator(theStringModel);
00057     theGammaReaction->SetMaxEnergy(m_maxGammaReactionEnergy);
00058 
00059     thePhotoNuclearProcess->RegisterMe(theGammaReaction);
00060   
00061     theModel->SetMinEnergy(m_minFinalStateEnergy);
00062     theModel->SetMaxEnergy(m_maxFinalStateEnergy);
00063   
00064     thePhotoNuclearProcess->RegisterMe(theModel);
00065   
00066     pmanager->AddDiscreteProcess(thePhotoNuclearProcess);
00067  
00068     // e-
00069     pmanager = G4Electron::Electron()->GetProcessManager();
00070      
00071     G4ElectroNuclearReaction* electroNuclear = new G4ElectroNuclearReaction();
00072     G4ElectronNuclearProcess* theElectroNuclearProcess = new G4ElectronNuclearProcess();
00073 
00074     theElectroNuclearProcess->RegisterMe(electroNuclear);
00075 
00076     pmanager->AddProcess(theElectroNuclearProcess, -1, -1, 5);
00077   
00078     // e+
00079     pmanager = G4Positron::Positron()->GetProcessManager();
00080 
00081     G4PositronNuclearProcess* thePositronNuclearProcess = new G4PositronNuclearProcess();
00082 
00083     thePositronNuclearProcess->RegisterMe(electroNuclear);
00084 
00085     pmanager->AddProcess(thePositronNuclearProcess, -1, -1, 5); 
00086   
00087     // Mu-nuclear reaction
00088     // mu-  
00089     pmanager = G4MuonMinus::MuonMinus()->GetProcessManager();
00090 
00091     G4MuNuclearInteraction* munucProc = new G4MuNuclearInteraction();
00092   
00093     pmanager->AddDiscreteProcess(munucProc);
00094 
00095     // mu+
00096     pmanager = G4MuonPlus::MuonPlus()->GetProcessManager();
00097         
00098     pmanager->AddDiscreteProcess(munucProc);
00099 
00100 }


Member Data Documentation

double DsPhysConsElectroNu::m_maxGammaReactionEnergy [private]

MaxGammaReactionEnergy : Maximum gamma nuclear reaction energy.

Definition at line 38 of file DsPhysConsElectroNu.h.

double DsPhysConsElectroNu::m_minFinalStateEnergy [private]

MinFinalStateEnergy : Min energy for final state hadron production.

Definition at line 41 of file DsPhysConsElectroNu.h.

double DsPhysConsElectroNu::m_maxFinalStateEnergy [private]

MaxFinalStateEnergy : Max energy for final state hadron production.

Definition at line 44 of file DsPhysConsElectroNu.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:53:28 2011 for DetSim by doxygen 1.4.7