粒子物理與核物理實(shí)驗(yàn)中數(shù)據(jù)分析ppt課件_第1頁
粒子物理與核物理實(shí)驗(yàn)中數(shù)據(jù)分析ppt課件_第2頁
粒子物理與核物理實(shí)驗(yàn)中數(shù)據(jù)分析ppt課件_第3頁
粒子物理與核物理實(shí)驗(yàn)中數(shù)據(jù)分析ppt課件_第4頁
粒子物理與核物理實(shí)驗(yàn)中數(shù)據(jù)分析ppt課件_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、粒子物理與核物理實(shí)驗(yàn)中的數(shù)粒子物理與核物理實(shí)驗(yàn)中的數(shù)據(jù)分析據(jù)分析楊振偉清華大學(xué)第八講:Geant4 的探測器模擬引見(3)上講回想上講回想n粒子定義粒子定義n G4ParticleDefinition G4ParticleDefinitionn 6 6大類粒子:大類粒子:G4LeptonConstructorG4LeptonConstructorn G4BosonConstructor G4BosonConstructorn G4MesonConstructor G4MesonConstructorn G4BaryonConstructor G4BaryonConstructorn G4Ion

2、Constructor G4IonConstructorn G4ShortlivedConstructorG4ShortlivedConstructorn產(chǎn)生主事例:產(chǎn)生主事例:G4ParticleGunG4ParticleGunn物理過程:電磁、強(qiáng)作用、衰變、光輕子物理過程:電磁、強(qiáng)作用、衰變、光輕子- -強(qiáng)強(qiáng)子作用、光學(xué)、參數(shù)化、輸運(yùn)子作用、光學(xué)、參數(shù)化、輸運(yùn)( (必要過程必要過程) )本講要點(diǎn)n產(chǎn)生主事例n G4HEPEvtInterfacen敏感探測器n取出敏感探測器的數(shù)據(jù),并存入ROOT格式文件事例產(chǎn)生子接口nG4HEPEvtInterfacen 很多時(shí)候,事例產(chǎn)生子曾經(jīng)存在,而且是

3、Fortran言語。Geant4并不直接鏈接這些Fortran程序,而是提供了一個(gè)接口:n G4HEPEvtInterface讀取事例產(chǎn)生子生成的ASCII文件中的信息,重新生成G4PrimaryParticle對象,并關(guān)聯(lián)到對應(yīng)的G4PrimaryVertexn也就是說,G4HEPEvtInterface將/HEPEVT/公共塊的信息轉(zhuǎn)換為一個(gè)O-O數(shù)據(jù)構(gòu)造。這個(gè)公共塊在高能物理中被廣泛運(yùn)用。用/HEPEVT/公共塊生成ASCII文件common block將以下量寫入文件中第一行:NHEP,當(dāng)前事例粒子數(shù)(包括中間態(tài))隨后的NHEP行:每個(gè)粒子的ISTHEP,IDHEP,JDAHEP,PH

4、EP信息ISTHEP:粒子形狀;IDHEP:粒子PDG號;JDAHEP:粒子衰變產(chǎn)物位置的指針;PHEP(1-3,5):粒子x,y,z動量,能量,質(zhì)量以HEPEVT格式輸出的ASCII文件 102 3 11 0 0 0.00000000E+00 0.00000000E+00 0.25000000E+03 0.51000000E-03 3 -11 0 0 0.00000000E+00 0.00000000E+00 -0.25000000E+03 0.51000000E-03 3 11 0 0 0.00000000E+00 0.00000000E+00 0.24999999E+03 0.00000

5、000E+00 3 -11 0 0 0.00000000E+00 0.00000000E+00 -0.25000000E+03 0.00000000E+00 3 11 0 0 0.37396914E-02 0.15234913E-02 0.24585E+03 0.00000000E+00 3 -11 0 0 -0.93164320E-02 0.27396574E-01 -0.24687934E+03 0.00000000E+00 3 23 0 0 -0.55767406E-02 0.28920065E-01 -0.54934906E+01 0.48823428E+03 3 2 0 0 0.19

6、070032E+02 0.24337596E+03 -0.48627266E+01 0.33000000E+00 3 -2 0 0 -0.19075609E+02 -0.24334704E+03 -0.63076405E+00 0.33000000E+00 2 23 16 26 -0.55767406E-02 0.28920065E-01 -0.54934906E+01 0.48823428E+03 1 22 0 0 0.93164331E-02 -0.27396573E-01 -0.31205891E+01 0.00000000E+00 1 22 0 0 -0.81046576E-03 -0

7、.82301151E-04 0.14162632E+00 0.00000000E+00 .175 . 比如:下面這個(gè)事例表示該事例共102個(gè)粒子(包括中間態(tài)),隨后的102行分別為這102個(gè)粒子的詳細(xì)信息:第一列為粒子形狀(3:對撞入射粒子或其它;2:衰變了;1:存在的粒子;0:空), 第2列為粒子PDG號,最后4列分別為粒子的x,y,z方向動量和質(zhì)量。運(yùn)用HEPEvtInterface的例子參見例子N04,在ExN04PrimaryGeneratorAction.cc中:ExN04PrimaryGeneratorAction:ExN04PrimaryGeneratorAction() con

8、st char* filename = pythia_event.data; /讀取pythia_event.data HEPEvt = new G4HEPEvtInterface(filename); void ExN04PrimaryGeneratorAction:GeneratePrimaries(G4Event* anEvent) /設(shè)定主頂點(diǎn)位置,產(chǎn)生主頂點(diǎn) HEPEvt-SetParticlePosition(G4ThreeVector(0.*cm,0.*cm,0.*cm); HEPEvt-GeneratePrimaryVertex(anEvent); 其中HEPEvt在頭文件中定

9、義: G4VPrimaryGenerator* HEPEvt;注:main函數(shù)或者mac文件中設(shè)定beamOn事例數(shù)不能超越ASCII中事例數(shù)。敏感探測器(Sensitive Detector)nSD的首要義務(wù)是經(jīng)過粒子“跡(track)上的“步(step)的信息,構(gòu)造“擊中(hit)。n 這些擊中經(jīng)過數(shù)字化,被讀出幾何讀出的信息是真正的模擬結(jié)果。(當(dāng)然在模擬中我們也可以忽略數(shù)字化而直接讀出hit的信息)n用戶敏感探測器承繼于籠統(tǒng)基類G4VSensitiveDetector,用戶需求完成3個(gè)主要函數(shù):nProcessHits(G4Step* aStep, G4TouchableHistory*

10、)n 構(gòu)造“擊中,被G4SteppingManager調(diào)用nInitialize(G4HCofThisEvent* HCE)n 初始化,事例開場時(shí)調(diào)用,指定構(gòu)造的“集中與當(dāng)前事例關(guān)聯(lián)起來nEndOfEvent(G4HCofThisEvent*)n 事例終了時(shí)調(diào)用 參見例子N02/src/ExN02TrackerSD.cc定義和添加敏感探測器 在探測器構(gòu)造中添加敏感探測器,比如:/SDManagerG4SDManager* SDman = G4SDManager:GetSDMpointer();/創(chuàng)建敏感探測器G4String trackerChamberSDname = ExN02/Track

11、erChamberSD;ExN02TrackerSD* aTrackerSD = new ExN02TrackerSD( trackerChamberSDname );/添加到SDManagerSDman-AddNewDetector( aTrackerSD ); /為logical體積設(shè)定敏感探測器!logicChamber-SetSensitiveDetector( aTrackerSD ); 參見例子N02/src/ExN02DetectorConstruction.cc1.定義Hits,如ExN02TrakcerHit.cc2.定義SD,如ExN02TrackerSD.cc3.在Det

12、ectorConstruction()中添加SD讀取敏感探測器的信息在EventAction類的EndOfEventAction()函數(shù)中,可以讀取該事例中存儲的Hits。比如可以在ExN02EventAction.cc中參與下面代碼,查看每個(gè)事例中的Hits數(shù)目:/獲得該事例的HitsCollection(能夠不止一個(gè))G4HCofThisEvent* hc = evt-GetHCofThisEvent();G4int NbOfColl = hc-GetNumberOfCollections();/獲得第0個(gè)HitsCollection,即ExN02TrackerHitsCollection

13、/也可以經(jīng)過CollectionID獲得ExN02TrackerHitsCollection *hitsC = hc-GetHC(0);/該Collection中Hits數(shù)目G4int sizehits = hitsC-entries();.當(dāng)然,他也可以將hitsC中的Hits挨個(gè)讀取出來,并獲取這些Hits的詳細(xì)信息。將模擬結(jié)果寫入root文件GNUMakefile中添加調(diào)用root需求的頭文件的目錄和庫,即在G4EXLIB := true一行后面參與: ROOTCFLAGS = $(shell root-config -cflags) ROOTLIBS = $(shell root-co

14、nfig -libs) ROOTGLIBS = $(shell root-config -glibs) CPPFLAGS += $(ROOTCFLAGS) EXTRALIBS += $(ROOTLIBS) $(ROOTGLIBS)2) 在main函數(shù)新建TFile,定義TTree (全局變量)3) 在EventAction的EndOfEventAction()函數(shù)中搜集需求的數(shù)據(jù),填充到TTree。(也可以直接在SD中搜集)4) 在RunAction中將TFile寫入硬盤。(也可以在主函數(shù)main()中寫入)參見/yangzw/CourseDataAna/examples/Lec8.tgz小結(jié)小結(jié)nG4HEPEvtInterfacen 主產(chǎn)生子主產(chǎn)生子(PrimaryGenerator)的一種,直的一種,直接讀取接讀取ASCII文件中以文件中以HEPEVT格式存儲的事格式存儲的事例。例。n敏感探測器的添加和定義敏感探測器的添加和定義n 在在DetectorConstruction中,不但要將中,不但要將SD添加給添加給SDManager,還要指定相應(yīng)的,還要指定相應(yīng)的logical體積。體積。n將結(jié)果存儲到將結(jié)果存儲到root文件中文件中n 在在EventAction中搜集

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論