Time-based EMC simulation [message #15408] |
Mon, 02 September 2013 22:09 |
Dima Melnychuk
Messages: 213 Registered: April 2004 Location: National Centre for Nucle...
|
first-grade participant |
From: *play-internet.pl
|
|
Dear all,
I want to let everybody know that I've committed today the code for time-based EMC digitization by Jifeng Hu.
From my side I would like to comment that he changed the algorithm used for pulseshape analysis used by default to PndEmcPSAFPGADigitalFilterAnalyser and as a result the energy calibration for EMC cluster is not so good anymore
which affects in turn PndPidCandidate::GetEmcCalEnergy()
and calibration still should be redone.
Dima
P.S. The warning about shadow declaration appeared in initial commit is already fixed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: Time-based EMC simulation [message #15495 is a reply to message #15493] |
Fri, 13 September 2013 17:06 |
StefanoSpataro
Messages: 2736 Registered: June 2005 Location: Torino
|
first-grade participant |
From: 88.128.80*
|
|
Done! Now with the emc macro:
MacBook-Pro-di-Stefano:emc spataro$ pwd
/Users/spataro/apr13/pandaroot/macro/emc
MacBook-Pro-di-Stefano:emc spataro$ svn info
Path: .
URL: https://subversion.gsi.de/fairroot/pandaroot/trunk/macro/emc
Repository Root: https://subversion.gsi.de/fairroot
Repository UUID: 0381ead4-6506-0410-b988-94b70fbc4730
Revision: 21697
Node Kind: directory
Schedule: normal
Last Changed Author: dimam
Last Changed Rev: 21680
Last Changed Date: 2013-09-11 14:50:34 +0200 (Mer, 11 Set 2013)
MacBook-Pro-di-Stefano:emc spataro$ root -l sim_emc.C
root [0]
Processing sim_emc.C...
Error in <TClonesArray::SetClass>: called with a null pointer
FairRootManager::OpenOutFile("sim_emc.root")
[INFO ] Media file used : /Users/spataro/apr13/pandaroot/geometry/media_pnd.geo
-I container name PndEmcGeoPar
[INFO ] ============== FairRunSim: Initialising simulation run ==============
Info in <TGeoManager::TGeoManager>: Geometry FAIRGeom, FAIR geometry created
-I- FairGeoMedia Read media
-I container name PndEmcDigiPar
-I container name PndEmcDigiNonuniformityPar
*************************************************************
initialisation for run id 1379084142
*************************************************************
-I- FairRunTimeDB::InitContainer() PndEmcGeoPar
[ERROR ] init() PndEmcGeoPar not initialized
-I- FairRunTimeDB::InitContainer() PndEmcDigiPar
PndEmcDigiPar initialized from Ascii file
-I- FairRunTimeDB::InitContainer() PndEmcDigiNonuniformityPar
[ERROR ] init() PndEmcDigiNonuniformityPar not initialized
Error in <FairRuntimeDb::initContainers()>: Error occured during initialization
[INFO ] PndFieldMap: Reading field map from ROOT file /Users/spataro/apr13/pandaroot/input/TransMap.1500.root
[INFO ] PndFieldMap: Reading field map from ROOT file /Users/spataro/apr13/pandaroot/input/DipoleMap1.1500.root
[INFO ] PndFieldMap: Reading field map from ROOT file /Users/spataro/apr13/pandaroot/input/DipoleMap2.1500.root
[INFO ] PndFieldMap: Reading field map from ROOT file /Users/spataro/apr13/pandaroot/input/SolenoidMap1.root
[INFO ] PndFieldMap: Reading field map from ROOT file /Users/spataro/apr13/pandaroot/input/SolenoidMap2.root
[INFO ] PndFieldMap: Reading field map from ROOT file /Users/spataro/apr13/pandaroot/input/SolenoidMap3.root
[INFO ] PndFieldMap: Reading field map from ROOT file /Users/spataro/apr13/pandaroot/input/SolenoidMap4.root
[INFO ] -------------- Standard Config is called ------------------------------------
Loading Geant3 libraries ...
Loading Geant3 libraries ... finished
MZSTOR. ZEBRA table base TAB(0) in /MZCC/ at adr 88041159 53F66C7 HEX
MZSTOR. Initialize Store 0 in /GCBANK/
with Store/Table at absolute adrs 88191925 88041159
HEX 541B3B5 53F66C7
HEX 24B32 0
relative adrs 150322 0
with 1 Str. in 2 Links in 5300 Low words in 4999970 words.
This store has a fence of 16 words.
MZLOGL. Set Log Level 0 for store 0
1***** GEANT Version 3.21/11 Released on 100298
0***** Correction Cradle Version 0.1100
MZDIV. Initialize Division Constant in Store 0
NW/NWMAX= 20004000000, MODE/KIND= 1 2
Division 20 initialized.
MZLINK. Initialize Link Area /GCLINK/ for Store 0 NL/NS= 20 20
MZLINK. Initialize Link Area /GCSLNK/ for Store 0 NL/NS= 100 100
-I- G3Config: Geant3 with TGeo has been created.
SetCuts Macro: Setting Processes..
SetCuts Macro: Setting cuts..
Info in <TGeoManager::SetTopVolume>: Top volume is cave. Master volume is cave
Info in <TGeoNavigator::BuildCache>: --- Maximum geometry depth set to 100
fwendcap & bwendcap flags == 1 / 1
====== EMC 2):: ConstructASCIIGeometry() ===
=============================================
PndEmcReader: EMC geometry file == /Users/spataro/apr13/pandaroot/geometry/emc_module12.dat
Emc module = 1
********
Emc module = 2
********
====== EMC:: ConstructRootGeometry() m3a ===
=============================================
File name = /Users/spataro/apr13/pandaroot/geometry/emc_module3_2012_new.root
====== EMC:: ConstructRootGeometry() m4a ===
=============================================
fgeoName3:: /Users/spataro/apr13/pandaroot/geometry/emc_module4_StraightGeo24.4.root
File name Bw1= /Users/spataro/apr13/pandaroot/geometry/emc_module4_StraightGeo24.4.root
====== EMC:: ConstructRootGeometry() m5a ===
=============================================
fgeoName4:: /Users/spataro/apr13/pandaroot/geometry/emc_module5_fsc.root
File name Fsc= /Users/spataro/apr13/pandaroot/geometry/emc_module5_fsc.root
Info in <TGeoManager::CheckGeometry>: Fixing runtime shapes...
Info in <TGeoManager::CheckGeometry>: ...Nothing to fix
Info in <TGeoManager::CloseGeometry>: Counting nodes...
Info in <TGeoManager::Voxelize>: Voxelizing...
Info in <TGeoManager::CloseGeometry>: Building cache...
Info in <TGeoManager::CountLevels>: max level = 5, max placements = 1496
Info in <TGeoManager::CloseGeometry>: 1833818 nodes/ 761 volume UID's in FAIR geometry
Info in <TGeoManager::CloseGeometry>: ----------------modeler ready----------------
************************************************************
PndEmc::SetSpecialPhysicsCuts():
using special physics cuts ...
************************************************************
[INFO ] Initialize Tasks--------------------------
INITIALIZATION *********************
HitProducer has EnergyHitThreshold of 0.000001 GeV and Use_nonuniformity 0
-I- PndEmcHitProducer: Intialization successfull
[INFO ] Simulation RunID: 1379084142
Calculating cross section tables, see gphysi.dat for more information
Cross section calculation concluded successfully
[INFO ] Monte carlo Engine Initialisation with : TGeant3TGeo
[INFO ] *** PndEmcGeoPar written to ROOT file version: 1
[INFO ] *** PndEmcDigiPar written to ROOT file version: 1
[INFO ] *** PndEmcDigiNonuniformityPar written to ROOT file version: 1
[INFO ] *** FairBaseParSet written to ROOT file version: 1
[INFO ] *** PndMultiFieldPar written to ROOT file version: 1
[INFO ] *** PndGeoPassivePar written to ROOT file version: 1
--------------------------------------------------------------------------------
-------------- actual containers in runtime database -------------------------
PndEmcGeoPar Emc Geometry Parameters
PndEmcDigiPar Emc Digitalization Parameters
PndEmcDigiNonuniformityPar Emc Nonuniformity Parameters
FairBaseParSet class for parameter io
PndMultiFieldPar Multiple Field parameter container
PndTransPar Trans. Field parameter container
PndDipole1Par Dipole Field parameter container
PndDipole2Par Dipole Field parameter container
PndSolenoid1Par Solenoid 1st region parameter container
PndSolenoid2Par Solenoid 2nd region parameter container
PndSolenoid3Par Solenoid 3rd region parameter container
PndSolenoid4Par Solenoid 4th region parameter container
PndGeoPassivePar Passive Geometry Parameters
-------------- runs, versions ------------------------------------------------
run id
container 1st-inp 2nd-inp output
run: 1379084142
PndEmcGeoPar 1379084142 -1 1
PndEmcDigiPar 1 -1 1
PndEmcDigiNonuniformityPar 1379084142 -1 1
FairBaseParSet 1379084142 -1 1
PndMultiFieldPar 1379084142 -1 1
PndTransPar 1379084142 -1 0
PndDipole1Par 1379084142 -1 0
PndDipole2Par 1379084142 -1 0
PndSolenoid1Par 1379084142 -1 0
PndSolenoid2Par 1379084142 -1 0
PndSolenoid3Par 1379084142 -1 0
PndSolenoid4Par 1379084142 -1 0
PndGeoPassivePar 1379084142 -1 1
-------------- input/output --------------------------------------------------
first Input:
Ascii I/O /Users/spataro/apr13/pandaroot/macro/params/emc.par is open
detector I/Os: FairGenericParIo
second input: none
output:
OBJ: FairParRootFile simparams.root : 0 at: 0x7fabe99ba3b0
Root file I/O simparams.root is open
detector I/Os: FairGenericParIo
**** GTRIGI: IEVENT= 1 IDEVT= 1 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 1) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 2 IDEVT= 2 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 2) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 3 IDEVT= 3 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 3) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 4 IDEVT= 4 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 4) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 5 IDEVT= 5 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 5) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 6 IDEVT= 6 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 6) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 7 IDEVT= 7 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 7) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 8 IDEVT= 8 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 8) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 9 IDEVT= 9 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 9) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
**** GTRIGI: IEVENT= 10 IDEVT= 10 Random Seeds = 4357 0
[INFO ] FairPrimaryGenerator: (Event 10) 1 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 0.000000 (ns)
POINT EXECUTION *********************
=========================================================
PndEmcHitProducer::FinishTask
*********************************************************
Read points # 6067
Produc hits# 265, threshold# 1e-06
Hits above threshhod#192
*********************************************************
RealTime=8.087632 seconds, CpuTime=5.430000 seconds
(int)52
root [1]
The same with Linux.
In reality before I had commented out PndEmc. This is the reason why I was not seeing such effect from PndEmc but from PndEmcHitProducer.
|
|
|
Re: Time-based EMC simulation [message #15496 is a reply to message #15495] |
Sat, 14 September 2013 12:10 |
StefanoSpataro
Messages: 2736 Registered: June 2005 Location: Torino
|
first-grade participant |
From: 2.235.190*
|
|
Hi Dima,
I did a minimal macro (attached) to see which one produce the error. You can see that it is only the PndEmc constructor... very strange.
And putting some cout inside the PndEmc.cxx, it seems it is the cosntructor call, before the fEmcCollection = new TConesArray("PndEmcPoint"); I removed this line, and I can see still the error.
Toggle Spoiler
root [0]
Processing sim_complete.C...
FairRootManager::OpenOutFile("sim_complete.root")
[INFO ] Media file used : /home/spataro/apr13/trunk/geometry/media_pnd.geo
1
Error in <TClonesArray::SetClass>: called with a null pointer
pippo
2
[INFO ] ============== FairRunSim: Initialising simulation run ==============
Info in <TGeoManager::TGeoManager>: Geometry FAIRGeom, FAIR geometry created
-I- FairGeoMedia Read media
*************************************************************
initialisation for run id 1379152900
*************************************************************
[INFO ] PndFieldMap: Reading field map from ROOT file /home/spataro/apr13/trunk/input/TransMap.1500.root
[INFO ] PndFieldMap: Reading field map from ROOT file /home/spataro/apr13/trunk/input/DipoleMap1.1500.root
[INFO ] PndFieldMap: Reading field map from ROOT file /home/spataro/apr13/trunk/input/DipoleMap2.1500.root
[INFO ] PndFieldMap: Reading field map from ROOT file /home/spataro/apr13/trunk/input/SolenoidMap1.root
[INFO ] PndFieldMap: Reading field map from ROOT file /home/spataro/apr13/trunk/input/SolenoidMap2.root
[INFO ] PndFieldMap: Reading field map from ROOT file /home/spataro/apr13/trunk/input/SolenoidMap3.root
[INFO ] PndFieldMap: Reading field map from ROOT file /home/spataro/apr13/trunk/input/SolenoidMap4.root
[INFO ] -------------- Standard Config is called ------------------------------------
Loading Geant3 libraries ...
Loading Geant3 libraries ... finished
MZSTOR. ZEBRA table base TAB(0) in /MZCC/ at adr 9486391 90C037 HEX
MZSTOR. Initialize Store 0 in /GCBANK/
with Store/Table at absolute adrs 9595637 9486391
HEX 926AF5 90C037
HEX 1AB22 0
relative adrs 109346 0
with 1 Str. in 2 Links in 5300 Low words in 4999970 words.
This store has a fence of 16 words.
MZLOGL. Set Log Level 0 for store 0
1***** GEANT Version 3.21/11 Released on 100298
0***** Correction Cradle Version 0.1100
MZDIV. Initialize Division Constant in Store 0
NW/NWMAX= 20004000000, MODE/KIND= 1 2
Division 20 initialized.
MZLINK. Initialize Link Area /GCLINK/ for Store 0 NL/NS= 20 20
MZLINK. Initialize Link Area /GCSLNK/ for Store 0 NL/NS= 100 100
-I- G3Config: Geant3 with TGeo has been created.
SetCuts Macro: Setting Processes..
SetCuts Macro: Setting cuts..
Info in <TGeoManager::SetTopVolume>: Top volume is cave. Master volume is cave
Info in <TGeoNavigator::BuildCache>: --- Maximum geometry depth set to 100
Info in <TGeoManager::CheckGeometry>: Fixing runtime shapes...
Info in <TGeoManager::CheckGeometry>: ...Nothing to fix
Info in <TGeoManager::CloseGeometry>: Counting nodes...
Info in <TGeoManager::Voxelize>: Voxelizing...
Info in <TGeoManager::CloseGeometry>: Building cache...
Info in <TGeoManager::CountLevels>: max level = 1, max placements = 0
Info in <TGeoManager::CloseGeometry>: 1 nodes/ 1 volume UID's in FAIR geometry
Info in <TGeoManager::CloseGeometry>: ----------------modeler ready----------------
[INFO ] Simulation RunID: 1379152900
Calculating cross section tables, see gphysi.dat for more information
Cross section calculation concluded successfully
[INFO ] Monte carlo Engine Initialisation with : TGeant3TGeo
**** GTRIGI: IEVENT= 1 IDEVT= 1 Random Seeds = ********** 0
[INFO ] FairPrimaryGenerator: (Event 1) 5 primary tracks from vertex (0.000000, 0.000000, 0.000000 ) with beam gradiant (0.000000, 0.000000) Event Time = 11.700584 (ns)
[INFO ] *** FairBaseParSet written to ROOT file version: 1
[INFO ] *** PndMultiFieldPar written to ROOT file version: 1
[INFO ] *** PndGeoPassivePar written to ROOT file version: 1
RealTime=4.609885 seconds, CpuTime=1.120000 seconds
Test passed
All ok
(int)243514496
I did something simpler, calling the cosnteructor from the root prompt:
spataro@briareos:~/apr13/trunk/macro$ root -l
root [0] PndEmc *pippo1
Error in <TClonesArray::SetClass>: called with a null pointer
root [1] PndEmc *pippo2
root [2] PndEmc *pippo3
root [3]
The first constructor gives the error, the second not. But I cannot see anything in PndEmc which access to global stuff.
|
|
|
|
Re: Time-based EMC simulation [message #15506 is a reply to message #15408] |
Thu, 19 September 2013 10:31 |
Jifeng Hu
Messages: 31 Registered: October 2012
|
continuous participant |
From: *wlan.uni-giessen.de
|
|
this static pointer PndEmcDigi::fDigiArrayTBD; is used in time-based reconstruction as a shared buffer which hold the digis not belong to current event in order to be reused in reconstruction in next event.
if all would like to remove that error message, I agree remove this pointer and use another solution.
By the way, I made no any changes on PndEmc for MC simulation, the results should be completely same as results simulated in previous version when random seeds are same.
[Updated on: Thu, 19 September 2013 10:32] Report message to a moderator
|
|
|
|