Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемЕгор Нежданов
1 Моделирование Детектора КМД-3 на основе GEANT4 26 Декабря 2006 Интеграция моделирования и реконструкции
2 Моделирование GenEvent HepMC::GenEvent Geant4 SimHits De/dx Time Space TrackID G4Hit SimDigits channel Amplitude Time G4Digi Digitizer ROOT Files Cmd3Fwk Oflline Generator RawHits Logical Id Value cmd3::CmdRawHit MCtruth HepMC::GenEvent traced tracks G4Event Converter with filter
3 Persistency SimHits 364. kbytes = 140. kb SimDigits 5.3 kbytes = 1.2 kb RawHits 3. kbytes = 0.5 kb GenEvent 0.5 kbytes = 0.04kb MCtruth kbytes = kb 1GeV Photon size/event = ziped CmdEvent::ObjectInfo: CmdEvent Number of collections = 22 List of keys: 'CmdEventGen' 'CmdEventTruth' 'BGOHitsCollection''BGODigitsCollection''BGORawCollection' 'CsIHitsCollection''CsIDigitsCollection''CsIRawCollection' 'DCHitsCollection''DCDigitsCollection''DCRawCollection' 'LxeHitsCollection''LxeDigitsCollection''LXeRawCollection' 'MuHitsCollection''MuDigitsCollection''MuRawCollection' 'ZCHitsCollection''ZCSectorsDigitsCollection''ZCSectorsRawCollection' 'ZCStripsDigitsCollection''ZCStripsRawCollection' 'AnTHitsCollection'
4 Persistency HepMC::GenEvent SimHits G4VHit SimDigits G4VDigi CmdRawHits libCmdEvent_Core.so libCLHEPdict.so Cmd3Sim libraries Geant4, CLHEP libraries (72 libraries = 68 Mb) 108 = 113M with ROOT and system надо убрать зависимости сохраняемых классов от Geant4 Зависимость от библиотек libG4Dict.so libCmd3Pers.so libCLHEP.so ROOT CmdPtrScalar CmdScalar CmdPtrVector CmdVector (надо перевести на standalone версию HepMC libHepMC.so )
5 First Strategy G4run0001e.root Cmd3Sim]$ cmd3sim -n 100 -c config.xml root [1].ls TFile** G4run0001e.root TFile* G4run0001e.root KEY: TTree Geant4;1 Geant4 output tree KEY: TTree run_header_tree;1 Run header { gSystem->Load(libG4Dict.so); TFile f("G4run0001e.root"); TTree *tree=(TTree*)f.Get("Geant4"); cmd3::CmdEvent *ev=0; tree->SetBranchAddress("events_branch",&ev); for(int i=0;i GetEntries();i++){ tree->GetEvent(i); cmd3::CmdScalar *genevnt= dynamic_cast *> ev->Get("CmdEventGen"); HepMC::GenEvent* hepev=genevnt->Get(); hepev->print(); }; } by macro by framework IO]$ cmd3fwk fwkcfg.xml void CmdYourModule::Event() _throw_stdset{ const HepMC::GenEvent* hepevt=0; try{ hepevt=GetProxyIData *> ("CmdEventGen") ->Get(); }catch(...){}; if(hepevt) hepevt->print(); } SetBranchAddress("events_branch",&ev); for(int i=0;i GetEntries();i++){ tree->GetEvent(i); cmd3::CmdScalar *genevnt= dynamic_cast *> ev->Get("CmdEventGen"); HepMC::GenEvent* hepev=genevnt->Get(); hepev->print(); }; } by macro by framework.............................. .............. [ignatov@sl2cmd IO]$ cmd3fwk fwkcfg.xml void CmdYourModule::Event() _throw_stdset{ const HepMC::GenEvent* hepevt=0; try{ hepevt=GetProxyIData *> ("CmdEventGen") ->Get(); }catch(...){}; if(hepevt) hepevt->print(); }">
6 CmdG4Module HepMC::GenEvent to G4Event G4Event to HepMC::GenEvent Core G4Event Run Manager OFFLINE modules (2nd way) G4Event to HepMC::GenEvent converter-filter HepMC::GenEvent selector HepMC::GenEv ent CmdGeneratorIModule CmdVector FOR EACH SUBSYSTEM CmdVector FOR EACH SUBSYSTEM CmdList FOR EACH SUBSYSTEM MCtruth CmdScalar CmdEvent HepMC::GenEvent filter G4Event standart Modules n-3 nn-1 n-2 in cvs: Cmd3FwkModules/G4 конфигурация таже из config.xml для Cmd3Sim
7 Реконструкция моделирования ДК успешно использует (нету в CVS) ZC использует (нету в CVS) BGO успешно использует (RecoEngine в CVS, модуля в CVS нету) CsI востанавливает (нету в CVS) LXe начала использывать – треки востанавливает (разработка ведется в CVS) Trigger – использует моделирование (разработка ведется в CVS) Muon – реконструкции нету
8 mente infirmus Persistency library G4Event to HepMC::GenEvent convertor Соответсвие БД по плохим каналам и шумам в моделирование и реальной жизни (реконструкции) Визуализация событий моделирования (траектории, соответсвие хитов и частиц)
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.