Home » PANDA » PandaRoot » General » Analysis for Material Radiation length
Analysis for Material Radiation length [message #14219] |
Wed, 21 November 2012 15:20 |
|
Hi All,
I have to do radiation length analysis as a part of my work,for that I have followed following link which is suggested by Artem Basalaev in the forum.
https://forum.gsi.de/index.php?t=msg&goto=13440&rid=1765&S=5 3e3e1de6f2611aad37bcc2a6e0ddda2#msg_13440
Initially I had some error related TGeoManager looked like as
Error: illegal pointer to class object geoman 0x0 2423
Than I read some discussion on similar topic at link:-
https://forum.gsi.de/index.php?t=msg&goto=10664&rid=1765&S=5 3e3e1de6f2611aad37bcc2a6e0ddda2&srch=geoMan#msg_10664
And added parameter file in ana macro as instructed in discusssion. but after this I have another problem which I could not solve.
Error msg is like as:-
ajay@iitind01-Vostro-1014:~/pandaroot/macro/mvd/ana$ root -l radanaduplicate.C
root [0]
Processing radanaduplicate.C...
Warning in <TClassTable::Add>: class PndSdsTask already in TClassTable
Warning in <TClassTable::Add>: class PndSdsMCPoint already in TClassTable
Warning in <TClassTable::Add>: class PndSdsDigi already in TClassTable
Warning in <TClassTable::Add>: class PndSdsStrip already in TClassTable
Warning in <TClassTable::Add>: class PndSdsDetector already in TClassTable
Info in <TGeoManager::CloseGeometry>: Geometry loaded from file...
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::Voxelize>: Voxelizing...
Info in <TGeoManager::CountLevels>: max level = 12, max placements = 504
Info in <TGeoManager::CloseGeometry>: 111370 nodes/ 1976 volume UID's in FAIR geometry
Info in <TGeoManager::CloseGeometry>: ----------------modeler ready----------------
Warning in <TGeoManager::Init>: Deleting previous geometry: FAIRGeom/FAIR geometry
Info in <TGeoManager::CloseGeometry>: Geometry loaded from file...
Info in <TGeoManager::SetTopVolume>: Top volume is cave. Master volume is cave
Info in <TGeoManager::Voxelize>: Voxelizing...
Info in <TGeoManager::CountLevels>: max level = 12, max placements = 504
Info in <TGeoManager::CloseGeometry>: 111370 nodes/ 1976 volume UID's in FAIR geometry
Info in <TGeoManager::CloseGeometry>: ----------------modeler ready----------------
*** Break *** segmentation violation
===========================================================
There was a crash.
This is the entire stack trace of all threads:
===========================================================
#0 0x00007f38c015b0ee in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007f38c00ede8e in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#2 0x00007f38c100b1a7 in TUnixSystem::StackTrace() () from /home/ajay/fairsoft/lib/root/libCore.so.5.34
#3 0x00007f38c100d303 in TUnixSystem::DispatchSignals(ESignals) () from /home/ajay/fairsoft/lib/root/libCore.so.5.34
#4 <signal handler called>
#5 0x00007f38baa6b6dd in TGeoNavigator::FindNode(double, double, double) () from /home/ajay/fairsoft/lib/root/libGeom.so
#6 0x00007f38bab2fc7f in G__G__Geom1_198_0_159(G__value*, char const*, G__param*, int) () from /home/ajay/fairsoft/lib/root/libGeom.so
#7 0x00007f38bf3266a6 in Cint::G__ExceptionWrapper(int (*)(G__value*, char const*, G__param*, int), G__value*, char*, G__param*, int) () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#8 0x00007f38bf3c9d31 in G__execute_call () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#9 0x00007f38bf3ca130 in G__call_cppfunc () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#10 0x00007f38bf3aa7f2 in G__interpret_func () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#11 0x00007f38bf396d28 in G__getfunction () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#12 0x00007f38bf47ef93 in G__getstructmem(int, G__FastAllocString&, char*, int, char*, int*, G__var_array*, int) () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#13 0x00007f38bf4789e0 in G__getvariable () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#14 0x00007f38bf372a32 in G__getitem () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#15 0x00007f38bf37940f in G__getexpr () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#16 0x00007f38bf3649bb in G__define_var () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#17 0x00007f38bf3f7036 in G__exec_statement () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#18 0x00007f38bf400542 in G__exec_loop () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#19 0x00007f38bf3fcd7a in G__exec_statement () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#20 0x00007f38bf400542 in G__exec_loop () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#21 0x00007f38bf3fcd7a in G__exec_statement () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#22 0x00007f38bf400542 in G__exec_loop () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#23 0x00007f38bf3fcd7a in G__exec_statement () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#24 0x00007f38bf3a8d09 in G__interpret_func () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#25 0x00007f38bf396fba in G__getfunction () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#26 0x00007f38bf3731a1 in G__getitem () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#27 0x00007f38bf37940f in G__getexpr () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#28 0x00007f38bf382e4c in G__calc_internal () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#29 0x00007f38bf406b69 in G__process_cmd () from /home/ajay/fairsoft/lib/root/libCint.so.5.34
#30 0x00007f38c0fd6a7d in TCint::ProcessLine(char const*, TInterpreter::EErrorCode*) () from /home/ajay/fairsoft/lib/root/libCore.so.5.34
#31 0x00007f38c0fcd463 in TCint::ProcessLineSynch(char const*, TInterpreter::EErrorCode*) () from /home/ajay/fairsoft/lib/root/libCore.so.5.34
#32 0x00007f38c0f39998 in TApplication::ExecuteFile(char const*, int*, bool) () from /home/ajay/fairsoft/lib/root/libCore.so.5.34
#33 0x00007f38c0f386db in TApplication::ProcessLine(char const*, bool, int*) () from /home/ajay/fairsoft/lib/root/libCore.so.5.34
#34 0x00007f38c0b8f60a in TRint::Run(bool) () from /home/ajay/fairsoft/lib/root/libRint.so.5.34
#35 0x000000000040105c in main ()
===========================================================
The lines below might hint at the cause of the crash.
If they do not help you then please submit a bug report at
http://root.cern.ch/bugs. Please post the ENTIRE stack trace
from above as an attachment in addition to anything else
that might help us fixing this issue.
===========================================================
#5 0x00007f38baa6b6dd in TGeoNavigator::FindNode(double, double, double) () from /home/ajay/fairsoft/lib/root/libGeom.so
===========================================================
Root > Function radanaduplicate() busy flag cleared
Can anybody tell me what I should do to correct it?
I have attached my analysis macro here.
Thanks in advanse
AJAY KUMAR
Research scholar
Indian Institute of Technology Indore,Indore
Madhya Pradesh
India
|
|
|
Re: Analysis for Material Radiation length [message #14220 is a reply to message #14219] |
Wed, 21 November 2012 15:40 |
Mohammad Al-Turany
Messages: 518 Registered: April 2004 Location: GSI, Germany
|
first-grade participant |
From: *gsi.de
|
|
Hallo Ajay,
In your macro you have:
....
Quote: | TFile* f = new TFile(inFile.c_str()); // the sim file you want to analyse
TTree *t=(TTree *) f->Get("cbmsim") ;
TFile* file = new TFile("Simulation_par.root");
file->Get("FairBaseParSet");
TClonesArray* mc_array=new TClonesArray("PndMCTrack");
t->SetBranchAddress("MCTrack",&mc_array);//Branch names
TClonesArray* rad_array=new TClonesArray("FairRadLenPoint");
t->SetBranchAddress("RadLen",&rad_array);
// TGeoManager *geoMan = (TGeoManager*) gDirectory->Get("FAIRGeom");
TGeoManager *geoMan = (TGeoManager*) gDirectory->Get("FairBaseParSet");
// PndGeoHandling* fGeoH = new PndGeoHandling();
...
|
You do not need to call the line in RED it is even wrong, when you call
file->Get("FairBaseParSet");
the geometry is read in memory and the "gGeoManager" global pointer is valid, just use it and it should work! Simply remove the line in RED and use directly gGeoManager, i.e:
TGeoNode* node = gGeoManager->FindNode(point.x(),point.y(),point.z());
regards,
Mohammad
[Updated on: Wed, 21 November 2012 15:41] Report message to a moderator
|
|
|
|
Goto Forum:
Current Time: Fri Nov 22 21:19:04 CET 2024
Total time taken to generate the page: 0.00927 seconds
|