/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Public Member Functions | Public Attributes | Static Public Attributes
DetSim::Default::Configure Class Reference

List of all members.

Public Member Functions

def __init__
def historian
def unobserver

Public Attributes

 physics_list
 giga
 gigageo
 giga_items
 giga_sequence
 detsim_push_kine
 detsim_pull_event

Static Public Attributes

list giga_far_items
list giga_dayabay_items
list giga_lingao_items

Detailed Description

Do default DetSim configuration.

Definition at line 16 of file Default.py.


Constructor & Destructor Documentation

def DetSim::Default::Configure::__init__ (   self,
  site = "far,
  dayabay,
  lingao,
  physlist = physics_list_basic+physics_list_nuclear,
  use_push_algs = True,
  use_sim_subseq = False 
)
Configure DetSim.  

"site" can be "far", "dayabay" or "lingao".  Default is all three

"physlist" specifies the physics lists.  You can use the
predefined lists in DetSim.configure.: physics_list_basic and
physics_list_nuclear.  Default is to use both.

After creating this object you may want to call historian() or
unobserver() to add to their configuration.

Definition at line 44 of file Default.py.

00048                                        :
00049         '''
00050         Configure DetSim.  
00051 
00052         "site" can be "far", "dayabay" or "lingao".  Default is all three
00053 
00054         "physlist" specifies the physics lists.  You can use the
00055         predefined lists in DetSim.configure.: physics_list_basic and
00056         physics_list_nuclear.  Default is to use both.
00057         
00058         After creating this object you may want to call historian() or
00059         unobserver() to add to their configuration.
00060 
00061         '''
00062 
00063         from GaussTools.GaussToolsConf import GiGaPhysListModular
00064         import GaudiKernel.SystemOfUnits as units
00065 
00066         # Note: we must name this with "GiGa." as it is assumed later when the
00067         # properties are looked up.  Really the action of giving it to GiGa
00068         # should take care of this.  More bugs in Configurables
00069         physics_list = GiGaPhysListModular("GiGa.GiGaPhysListModular")
00070         physics_list.CutForElectron = 100*units.micrometer
00071         physics_list.CutForPositron = 100*units.micrometer
00072         physics_list.CutForGamma = 1*units.millimeter
00073         physics_list.PhysicsConstructors = physlist
00074         self.physics_list = physics_list
00075 
00076         from GiGa.GiGaConf import GiGa
00077         giga = GiGa()
00078         giga.PhysicsList = physics_list
00079 
00080         # Start empty step action sequence to hold historian/unobserver
00081         from GaussTools.GaussToolsConf import GiGaStepActionSequence
00082         sa = GiGaStepActionSequence('GiGa.GiGaStepActionSequence')
00083         giga.SteppingAction = sa
00084 
00085         self.giga = giga
00086 
00087         # Tell GiGa the size of the world.
00088         # Set default world material to be vacuum to speed propagation of
00089         # particles in regions of little interest.
00090         from GiGaCnv.GiGaCnvConf import GiGaGeo
00091         giga_geom = GiGaGeo()
00092         giga_geom.XsizeOfWorldVolume = 2.4*units.kilometer
00093         giga_geom.YsizeOfWorldVolume = 2.4*units.kilometer
00094         giga_geom.ZsizeOfWorldVolume = 2.4*units.kilometer
00095         giga_geom.WorldMaterial = "/dd/Materials/Vacuum"
00096         self.gigageo = giga_geom
00097 
00098         # Set up for telling GiGa what geometry to use, but don't
00099         # actually set that.
00100         from GaussTools.GaussToolsConf import GiGaInputStream
00101         giga_items = GiGaInputStream()
00102         giga_items.ExecuteOnce = True
00103         giga_items.ConversionSvcName = "GiGaGeo"
00104         giga_items.DataProviderSvcName = "DetectorDataSvc"
00105         giga_items.StreamItems = [ ]
00106         site = site.lower()
00107         if "far" in site: 
00108             giga_items.StreamItems += self.giga_far_items
00109         if "dayabay" in site: 
00110             giga_items.StreamItems += self.giga_dayabay_items
00111         if "lingao" in site: 
00112             giga_items.StreamItems += self.giga_lingao_items
00113         self.giga_items = giga_items
00114 
00115         # Make sequencer alg to run all this stuff as subalgs
00116         from GaudiAlg.GaudiAlgConf import GaudiSequencer
00117         giga_sequence = GaudiSequencer()
00118         giga_sequence.Members = [ self.giga_items ]
00119         self.giga_sequence=giga_sequence
00120         if use_push_algs:
00121             # DetSim's algs
00122             from DetSim.DetSimConf import DsPushKine, DsPullEvent
00123             self.detsim_push_kine = DsPushKine()
00124             self.detsim_pull_event = DsPullEvent()
00125             giga_sequence.Members += [self.detsim_push_kine,
00126                                       self.detsim_pull_event]
00127             pass
00128         
00129         if not use_sim_subseq:
00130             from Gaudi.Configuration import ApplicationMgr
00131             theApp = ApplicationMgr()
00132             theApp.TopAlg.append(giga_sequence)
00133         
00134         return


Member Function Documentation

def DetSim::Default::Configure::historian (   self,
  trackSelection = "",
  vertexSelection = "",
  useFastMuEnergyCut = False 
)
Add the Historian to the simulation and configure its
default track and vertex selection, default is empty.  Its
configurable is returned in order to allow further, direct
modification.

Definition at line 135 of file Default.py.

00136                                                                                      :
00137         ''' Add the Historian to the simulation and configure its
00138         default track and vertex selection, default is empty.  Its
00139         configurable is returned in order to allow further, direct
00140         modification.
00141         '''
00142         from Historian.HistorianConf import HistorianStepAction
00143         # Must name stepping action with anticipation of its final ownership.
00144         # This works around some inconsistency with configurable tools
00145         hist = HistorianStepAction('GiGa.GiGaStepActionSequence.HistorianStepAction')
00146         hist.TrackSelection = trackSelection
00147         hist.VertexSelection = vertexSelection
00148         hist.UseFastMuEnergyCut = useFastMuEnergyCut
00149 
00150         self.giga.SteppingAction.Members.append(hist)
00151         return hist

def DetSim::Default::Configure::unobserver (   self,
  stats = [] 
)
Add the Unobserver to the simulation and configure it with
a set of stats (default is empty).  Its configurable is
returned in order to allow further, direct modification.

Definition at line 152 of file Default.py.

00153                                    :
00154         ''' Add the Unobserver to the simulation and configure it with
00155         a set of stats (default is empty).  Its configurable is
00156         returned in order to allow further, direct modification.
00157         '''
00158         from Historian.HistorianConf import UnObserverStepAction
00159         # Must name stepping action with anticipation of its final ownership.
00160         # This works around some inconsistency with configurable tools
00161         unobs = UnObserverStepAction('GiGa.GiGaStepActionSequence.UnObserverStepAction')
00162         unobs.Stats = stats
00163         self.giga.SteppingAction.Members.append(unobs)
00164         return unobs
        

Member Data Documentation

Initial value:
[
        "/dd/Structure/Sites/far-rock",
        "/dd/Geometry/AdDetails/AdSurfacesAll",
        "/dd/Geometry/AdDetails/AdSurfacesFar",
        "/dd/Geometry/PoolDetails/FarPoolSurfaces",
        "/dd/Geometry/PoolDetails/PoolSurfacesAll",
        ]

Definition at line 22 of file Default.py.

Initial value:
[
        "/dd/Structure/Sites/db-rock",
        "/dd/Geometry/AdDetails/AdSurfacesAll",
        "/dd/Geometry/AdDetails/AdSurfacesNear",
        "/dd/Geometry/PoolDetails/NearPoolSurfaces",
        "/dd/Geometry/PoolDetails/PoolSurfacesAll",
        ]

Definition at line 29 of file Default.py.

Initial value:
[
        "/dd/Structure/Sites/la-rock",
        "/dd/Geometry/AdDetails/AdSurfacesAll",
        "/dd/Geometry/AdDetails/AdSurfacesNear",
        "/dd/Geometry/PoolDetails/NearPoolSurfaces",
        "/dd/Geometry/PoolDetails/PoolSurfacesAll",
        ]

Definition at line 36 of file Default.py.

Definition at line 56 of file Default.py.

Definition at line 56 of file Default.py.

Definition at line 56 of file Default.py.

Definition at line 56 of file Default.py.

Definition at line 56 of file Default.py.

Definition at line 56 of file Default.py.

Definition at line 56 of file Default.py.


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

Generated on Fri May 16 2014 10:17:58 for DetSim by doxygen 1.7.4