Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:14:54

0001 # ==========================================================================
0002 #  AIDA Detector description implementation
0003 # --------------------------------------------------------------------------
0004 # Copyright (C) Organisation europeenne pour la Recherche nucleaire (CERN)
0005 # All rights reserved.
0006 #
0007 # For the licensing terms see $DD4hepINSTALL/LICENSE.
0008 # For the list of contributors see $DD4hepINSTALL/doc/CREDITS.
0009 #
0010 # ==========================================================================
0011 from __future__ import absolute_import
0012 from g4units import ns
0013 
0014 
0015 def run():
0016   import DigiTest
0017   digi = DigiTest.Test(geometry=None)
0018   attenuation = digi.attenuation
0019 
0020   in_seq = digi.input_action('DigiParallelActionSequence/READER')
0021   # ========================================================================================================
0022   spillover = in_seq.adopt_action('DigiSequentialActionSequence/Spillover-25')
0023   evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader-25ns', mask=0x1, input=[digi.next_input()], keep_raw=False)
0024   attenuate = spillover.adopt_action('DigiAttenuatorSequence/Att-25ns',
0025                                      t0=-25 * ns,
0026                                      signal_decay='exponential',
0027                                      processor_type='DigiAttenuator',
0028                                      input_mask=evtreader.mask,
0029                                      input_segment='inputs',
0030                                      containers=attenuation)
0031   hist_drop = spillover.adopt_action('DigiHitHistoryDrop/Drop-25ns', masks=[evtreader.mask])
0032   digi.check_creation([spillover, evtreader, attenuate, hist_drop])
0033   digi.info('Created input.spillover-25')
0034   # ========================================================================================================
0035   event = digi.event_action('DigiSequentialActionSequence/EventAction')
0036   combine = event.adopt_action('DigiContainerCombine/Combine',
0037                                input_masks=[0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6],
0038                                input_segment='inputs',
0039                                output_mask=0xFEED,
0040                                output_segment='deposits')
0041   evtdump = event.adopt_action('DigiStoreDump/StoreDump')
0042   digi.check_creation([evtdump, combine])
0043   digi.info('Created event.dump')
0044   # ========================================================================================================
0045   digi.run_checked(num_events=5, num_threads=5, parallel=3)
0046 
0047 
0048 if __name__ == '__main__':
0049   run()