Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 1 GEANT4 (Geometry And Tracking) Adnan Kılıç - Uludağ Üniversitesi.

Benzer bir sunumlar


... konulu sunumlar: "8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 1 GEANT4 (Geometry And Tracking) Adnan Kılıç - Uludağ Üniversitesi."— Sunum transkripti:

1 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 1 GEANT4 (Geometry And Tracking) Adnan Kılıç - Uludağ Üniversitesi

2 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu GEANT4 TARİHSEL GELİŞİM İlk : CERN and KEK 1993 Fortran tabanlı Geant3'e modern hesaplama tekniğinin nasıl uygulanabilir? 1994 Sonbahar - resmi öneri – RD44 Nesne Yönelimli teknoloji-Cern Det. Araş. Geliş. Komitesi Avrupa, Japonya, Kanada and Birleşmiş milletlerde yüksek enerji fiziği deneylerindeki enstitüler ve üniversitelerden fizik programları ve yazılım mühendislerinden oluşan çok sayıda katılımcı Amaç, nükleer, hızlandırıcı, uzay and medikal fizik topluluğunun yararlanabileceği bir program

3 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu Aralık ’94 – Proje başlama Nisan ’97 - ilk alpha Haziran ’98 - ilk beta Aralık ’98 - ilk Geant4 halka açık sürüm … … Aralık ’04 - Geant4 versiyon Haziran ’05 - Geant4 versiyon Aralık ’05 - Geant4 versiyon Şubat ’06 - Geant4 8.0-patch01 30 Haziran ’06 - Geant4 version Temmuz ’06 - Geant4 8.1-patch01 Her yıl 2 veya 3 sürüm sağlanmaktadır. 17 Aralık 2010 Geant4 versiyon 9.4 Mevcut versiyon 2 Aralık 2011 Geant versiyon 9.5 – 27 Mart 2012 Geant4 versiyon 9.5-patch-01

4 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu Collaborators also from non-member institutions, including Budker Inst. of Physics IHEP Protvino MEPHI Moscow Pittsburg University Helsinki Inst. Ph. PPARC Univ. Barcelona HARP Lebedev

5 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 5 BaBar Use of Geant4 in the Babar Detector Simulation ATLAS (LHC) Use of Geant4 in the ATLAS Detector Simulation CMS and OSCAR (LHC) Use of Geant4 in the CMS experiment GAUSS (LHCb) Use of Geant4 in the GAUSS simulation program of the LHCb experiment ALICE (LHC) Use of Geant4 in the ALICE Geant4 Simulation Fermilab Use of Geant4 at Fermilab for different applications ILC Use of Geant4 for the International Linear Collider project BDSIM Toolkit based on Geant4 for accelerator beamline simulation Uygulama Alanları (HEP)

6 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 6 Uygulama Alanları (Medical) GAMOS Geant4-based Architecture for Medicine-Oriented Simulations GATE Geant4 Application for Tomographic Emission G4EMU Geant4 European Medical User Organization G4MED (in Japanese) Geant4 Medical Physics in Japan G4NAMU Geant4 North American Medical User Organization

7 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 7 Uygulama Alanları (Space & Radiation) European Space Agency Geant4 Space Users' Home Page ESA Project Support XMM-Newton Radiation Environment. Space Environment Information System (SPENVIS) Dose Estimation by Simulation of the ISS Radiation Environment (DESIRE) Physics Models for Biological Effects of Radiation and Shielding QinetiQ Space Energetic Particle Transport and Interaction Modeling studies (SEPTIMESS) Radiation Effects Analysis Tools (REAT) MUlti-LAyered Shielding SImulation Software (MULASSIS) GLAST Gamma Ray Large Area Space Telescope

8 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu NEDEN BENZETİŞİME İHTİYAÇ DUYULUR ? Nükleer ve yüksek enerji fiziğinde benzetişime sıklıkla aşağıdaki nedenlerle gerek duyurlur: Deneysel kurulumun belirlenmesi – Deneyde doğru sonuçlar alabilmek için detektör/zırhlama konumlarını optimize etmek – Beklenen background ve radyasyon seviyelerini incelemek Analizde veya benzetişimde bir hata olup olmadığından emin olmak için benzetişim sonuçlarını deneyle karşılaştırmak Deneysel sonuçları benzetişim sonuçlarıyla ve teoriden gelen girdilerle düzeltmek

9 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu Bir fizik deneyinin benzetişimini yapabilmek için : Demet Hedef Detektör E&M alanlar Fizik Etkileşmeleri (hedef ve detektörde) ve tesir kesitleri

10 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu GEANT4'TE NELERE İHTİYAÇ DUYULUR ? Geant4 programında kullanıcıdan istenen minimum listesi: Malzeme ve Geometrileri tanımlamak (hedef ve detektör.....) E&M alanları eklemek (isteğe bağlı) Parçacıkları ve fizik etkileşmelerini tanımlamak Birincil olayın nasıl üretileceğine karar vermek G4VUserDetectorConstruction Sınıfı G4VUserPhysicsList Sınıfı G4VUserPrimaryGeneratorAction Sınıfı

11 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu GEANT4 BİZİM İÇİN NE YAPAR ? Parçacık, world hacmin dışına çıkıncaya kadar kinetik enerjisi sıfıra düşünceye kadar bir etkileşme veya bozunmayla yok oluncaya kadar malzeme içerisinde adım adım taşınır. Kullanıcı benzetişim sonuçlarını almak için taşınım sürecine erişebilir: taşınımın başında veya sonunda herbir taşınıma ait adımın (step) sonunda parçacık detektörün duyar hacmi içerisine girdiği zaman

12 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu GEANT4'ÜN AVANTAJLARI Detaylı Geometri tanımlama Doğru manyetik / elektrik alan tanımlama Malzeme tanımlama Fizik süreçlerinin çeşitliliği Hızlı ve doğru görüntüleme Analiz programları Geliştirilebilir olması OPEN SOURCE GEANT4'ÜN DEZAVANTAJLARI Eğer yeniyseniz C++ ve Unix çevresini öğrenme Eğer bir C veya C++ programcısıysanız bu bir avantaj Diğer Monte Carlo Kodları kadar kompleks

13 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu GEANT4 Dili Geant4'te sıklıkla kullanılan anahtar kelimeler: Run, Event, Track, Step Geant4'te Run: Aynı detektör ve fiziksel koşulları paylaşan olaylar topluluğudur. Run öncesinde, geometride kullanılan malzemeye ve tanımlanan cut değerlerine göre tesir kesiti tabloları hesaplanır. Event: Geant4'te benzetişimin en temel birimidir. Track: Bir parçacığın fotoğrafıdır. Step: Etkileşme oluncaya kadar alınan yol. Uzaysal konum, enerji, hacmin ismi vb. TrackID=1 ParentID=0 TrackID=2 ParentID=1

14 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu

15 15 Geant4' de Parçacık G4Track Konumu, geometrik bilgisi, vb Bu takip edilecek parçacığın temsil edildiği sınıftır G4DynamicParticle Parçacığın momentumu, enerjisi, spini gibi Dinamik fiziksel özellikleri hakkında bilgileri sağlar Herbir G4Track nesnesi kendine ait ve tek G4DynamicParticle nesnesine sahiptir Bu sınıf herbir parçacığın kendisini temsil eder G4ParticleDefinition Parçacığın yükü, kütlesi, yaşam süresi, bozunma kanalları gibi Statik özellikleri hakkında bilgileri sağlar Parçacık özelliklerinin listesi PDG kodu Kütlesi Elektrik yükü Spin, izospin, parite Magnetik moment Kuark içerikleri Yaşam süresi, bozunma kanalları Katogoriler Geant4' de parçacık 3 sınıf düzeyi ile temsil edilir Gluon / kuark / di-kuark Leptonlar (e, mu, tau...) Mezonlar (pi, K, D, B, psi.) Baryonlar (p,n...) İyonlar Diğerler

16 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu Fizik Listesi : Cut Cut değeri, bir parçacığın track edilme boyutunu belirler. Cut bir uzunluk olarak tanımlanır. Malzemeye dayanarak enerjiye dönüştürülür.

17 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 17 Geant4 Çekirdeği Geant4 17 kategoriden oluşur Herbir katagori birbirinden bağımsız çalışma grupları tarafından geliştirilir Katagoriler arasındaki arayüzler, global yapısı tarafından sağlanır.

18 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 18 Uygulama Aşamaları PreInit Idle EventProc GeomClosed Quit Abort initialize beamOn exit Run(eventloop) Geant4 6 uygulama aşamasına sahiptir  G4State_PreInit Materyal, Geometri, Parçacık ve/veya Fizik süreçlerin başlatılması/tanımlanması gerekir  G4State_Idle Simulasyonu başlatmaya hazır  G4State_GeomClosed Geometri optimize edilir ve bir olayı simule etmek için hazırdır  G4State_EventProc Bir olay yürütülür  G4State_Quit (Normal) sonlandırma  G4State_Abort Kural dışı bir durum oluşması ve programın sonlandırılması

19 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 19 Birim Sistemi CLHEP (A Class Library for High Energy Physics) $CLHEP_BASE_DIR/include/CLHEP/Units/SystemOfUnits.h Kullanılan değişkenlerin birim ataması aşağıdaki gibi yapılabilir G4double Size = 15*km; G4doubel KineticEnergy = 90.3*GeV; G4double density = 11*mg/cm3; Geant4 içcerisinde bazı aşağıdaki gibi interaktif komutlarda hazır olarak bulunmaktadır /gun/energy 15.2 keV /gun/position meter Kullanılan kodun içerisinde de bilgi almak için girilen değerler “/” sembolü kullanılarak görüntülenebilir. G4cout << KineticEnergy/keV << " keV"; G4cout << density/(g/cm3) << " g/cm3"; millimeter (mm) nanosecond(ns) Mega electron Volt(MeV) positron charge(eplus) degree Kelvin(kelvin) the amount of substance(mole) luminous intensity(candela) radian(radian) steradian(steradian)

20 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 20 Kullanıcı Sınıfları main() Geant4 varsayılan bir main() metodu tanımlamaz  Başlangıç sınıfları G4RunManager::SetUserInitialization() metodu başlangıçta G4VUserDetectorConstruction G4VUserPhysicsList sınıflarının tanımlanması ve çağırılmasında kullanılır  Eylem sınıfları G4RunManager::SetUserAction() metodu başlangıçta G4VUserPrimaryGeneratorAction G4UserRunAction G4UserEventAction G4UserStackingAction G4UserTrackingAction G4UserSteppingAction sınıflarının tanımlanması ve çağırılmasında kullanılır Mavi renkteki sınıflar zorunlu sınıflardır

21 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 21 İsteğe Bağlı Kullanıcı Sınıflar Kullanıcı eylem sınıflarının hepsi main() metodu içerisinde çağırılmalıdır ve RunManager a atanmalıdır G4UserRunAction  G4Run* GenerateRun() Fizik tabloları etkileyecek değişken tanımlaması  void BeginOfRunAction(const G4Run*) Histogramların tanımlanması  void EndOfRunAction(const G4Run*) Histogramların kayıt edilmesi Çalıştırma sonuçlarının analizi G4UserTrackingAction  void PreUserTrackingAction(const G4Track*) Parçacık izinin depolanması/depolanmaması  void PostUserTrackingAction(const G4Track*) Gereksiz parçacık izlerinin silinmesi G4UserEventAction  void BeginOfEventAction(const G4Event*) Bir olayın seçilmesi Olay ile ilgili değişkenlerin sıfırlanması  void EndOfEventAction(const G4Event*) Bir olay için analizlerin yapılması G4UserSteppingAction  void UserSteppingAction(const G4Step*) Bir adım için gerekli bilgilerin alınması G4UserStackingAction void PrepareNewEvent() (Öncelik kontrolü resetlenir)  void ClassifyNewTrack(const G4Track*) (Urgent, Waiting, PostponeToNextEvent, Kill)  void NewStage()

22 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 22 Geant4 main() sağlamaz! main()'de G4RunManager'ı yapılandırılmalı > Geant4'teki tek yönetici sınıftır. Zorunlu sınıflar RunManager'a atanmalı VisManager, UI kısımları, isteğe bağlı kullanıcı eylem sınıfları tanımlanabilir. MAIN FONKSİYONU !

23 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 23 Geometri G4VUserDetectorConstruction temel sınıfından kullanıcıya ait MyDetectorConstruction sınıfı türetilir Bu sınıfın Construct() metodunda Gerekli tüm materyaller tanımlanır Kullanılacak hacimler tanımlanır Duyarlı detektörleriniz başlatılır ve mantıksal hacimlere atanır İsteğe bağlı olarak da Geometrinizin herhangi bir yeri için bölgeler tanımlanabilir Kullanıcak hacimlerin görüntüleme özellikleri tanımlanır (renk, görünürlük biçimleri gibi)

24 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 24 Geometri G4Box G4Tubs G4VSolid G4VPhysicalVolume G4Material G4VSensitiveDetector G4PVPlacement G4PVParameterised G4VisAttributes G4LogicalVolume Üç kavram vardır; G4VSolid şekli, boyutları G4LogicalVolume materyal, duyarlılık, kullanıcı limitleri Magnetik alan, vb G4VPhysicalVolume konumu, dönüşü Temel strateji; G4VSolid* pBoxSolid = new G4Box(“aBoxSolid”, 1.*m, 2.*m, 3.*m); G4LogicalVolume* pBoxLog = new G4LogicalVolume( pBoxSolid, pBoxMaterial, “aBoxLog”, 0, 0, 0); G4VPhysicalVolume* aBoxPhys = new G4PVPlacement( pRotation, G4ThreeVector(posX, posY, posZ), pBoxLog, “aBoxPhys”, pMotherLog, 0, copyNo);

25 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 25 Geometri (Katı Hacimler – Solid Volumes) G4Box(const G4String &pname, // name G4double half_x, // X half size G4double half_y, // Y half size G4double half_z); // Z half size G4Tubs(const G4String &pname, // name G4double pRmin, // inner radius G4double pRmax, // outer radius G4double pDz, // Z half length G4double pSphi, // starting Phi G4double pDphi); // segment angle G4Cons G4Para (parallelepiped) G4Trd G4TrapG4Sphere CSG (Constructed Solid Geometries)

26 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 26 Geometri (Katı Hacimler – Solid Volumes) G4UnionSolidG4IntersectionSolid G4SubtractionSolid Katı hacimler bir araya getirilebilir (boolean operations) G4UnionSolid, G4SubtractionSolid, G4IntersectionSolid Ne Gerekir? 2 katı hacme, 1 mantıksal işleme, ve isteğe bağlı olarak 2. hacim için döndürülmesi (2. hacim 1. hacimin koordinat sistemine göre yerleştirilmiştir) Sonuçta yeni katı hacim oluşur bu da tekrardan yeni mantıksal işlemlerle yeni katı hacimlere dönüştürülebilir. Bu tür bir hacimde parçacık takibi hacimlerin sayısına bağlı olarak artar

27 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 27 Geometri (Mantıksal Hacim – Logical Volume) G4LogicalVolume(G4VSolid *pSolid, G4Material *pMaterial, const G4String &name, G4FieldManager *pFieldMgr=0, G4VSensitiveDetector *pSDetector=0, G4UserLimits *pULimits=0); Hacimin konumu ve döndürülmesi dışında bütün bilgilerini içerir – Şekli ve boyutlarını (G4VSolid) – Materyal, duyarlılık, görüntüleme özelliklerini – İçerisinde bulunan diğer hacimlerin konumlarını – Magnetik alan – Kullanıcı limitleri

28 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 28 Geometri (Fiziksel Hacimler – Physical Volumes) repeated placement Yerleştirilmiş hacim (placement volume) Bir hacim içerisine yerleştirien hacim elemanıdır. Bir fiziksel hacim nesnesi bir tane gerçek hacmi temsil eder Tekrar eden hacim (repeated volume) Bir hacmin birden fazla tekrar edilmesidir. Bir fiziksel hacim nesnesi birden fazla gerçek hacmi temsil eder. Bilgisayar hafızasında az yer kullanır Parametreleştirilmiş tekrar eden hacimler (Parameterised) Bir eksende tekrar eden hacimler (Replica, Division) Ana hacim ya birçok yerleştirilmiş hacmi ya da bir tekrar eden hacmi içerebilir

29 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 29 Geometri (GDML) Generic and Geometric Model Geometry Desciption Markup Language Build-in Geant4 export G4LIB_BUILD_GDML=1 $G4INSTALL/source/persistency/gdml/schema/ gdml_core.xsd gdml_define.xsd gdml_extensions.xsd gdml_materials.xsd gdml_parameterised.xsd gdml_replicas.xsd gdml_solids.xsd gdml.xsd bloktan oluşur Define Material Solids Structure Setup

30 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 30 GDML ---> GraXML (Geometri ve Geometri Modelleyici JAVA3D

31 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 31 Geometri (ROOT) ATLAS TgeoManager ROOT geometri paketi, bir detektör geometrisini oluşturmak, parçacık izleme ve görüntülemek için tasarlanmıştır. C++ dili kullanılır.

32 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 32 OpenGL OpenInventor HepRepFile HepRepXML DAWN VRML RayTracer ASCIITree GAGTree XMLTree GÖRÜNTÜLEME

33 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 33 Fizik  Geant4 de başlangıçta varsayılan herhangi bir fizik veya parçacık yoktur  Parçacık iletimi (transportation) bile tanımlanmalıdır  G4VUserPhysicsList temel sınıfından kullanıcı MyPhysicsList türetilmiş sınıfını oluşturur Tüm gerekli parçacıklar tanımlanır Gerekli fizik süreçleri tanımlanır ve uygun parçacıklara atanır Tüm hacim (world) veya belirli bir bölge içn parçacık oluşum enerjileri tanımlanır  Geant4 içerisinde bunlar için bir çok örnek bulunmaktadır  Fiziksel süreç farklı enerji aralıklarında değişik model, tesir kesitleri vb içerebilir Compton scattering Pair production Gamma process 1process 2 particle model 1 model 2 … cross section set 1 cross section set 2 cross section set 3 …

34 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 34 Fizik (Sağlanan) ElektroManyetik fizik Standard fizik, ~ PeV Düşük enerji limiti, 250 eV ~ PeV (Livermore & Penelope) Optik fotonlar DNA seviyesindeki modeller, 7 eV ~ 100 MeV Zayıf fizik Atomaltı parçacık bozunması Çekirdeklerin radyoaktif bozunması Hadronik fizik 0 eV ~ 100 TeV Muon ve gamma çekirdek etkileşmeleri,10 MeV ~ TeV Parametrize edilmiş or hızlı simulation fiziği

35 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 35 Fizik  Kullanıcı tanımlı fizik listesi (kısmen basitleştirilmiş) G4VUserPhysicsList temel sınıfından MyPhysicsList sınıfın türetilmesi  Modular fizik listes (biraz daha karmaşık) G4VModularPhysicsList temel sınıfından MyPhysicsList daha detaylı sınıfın türetilmesi  Referans fizik listesi → $G4INSTALL/source/physics/lists Uygulanacak metot class MyPhysicsList: public G4VUserPhysicsList { public: MyPhysicsList(); ~MyPhysicsList(); void ConstructParticle();// simulasyonda gerekli olan parçacıkların seçimi void ConstructProcess(); // ilgili fiziğin herbir parçacığa atanması void SetCuts();// ikincil parçacıkların üretim eşik enerjisi }; main metodunda Geant4 e bu fiziğin kayıt edilmesi runManager->SetUserInitialization(new MyPhysicsList);

36 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 36 Birincil Parçacıkların Üretilmesi Geant4 G4VPrimaryGenerator aracılığıyla iki birincil parçacık üreteci sağlayabilir: G4ParticleGun Birincil parçacığı, belirli bir zamanda, belirli bir noktadan, belirli enerjide bir doğrultuya fırlatmak mümkündür. G4GeneralParticleSource G4VPrimaryGenerator'ın ileri düzeydeki bir uygulamasıdır. Konum, açısal dağılım ve enerji dağılımları İstenilen ağırlıklı çok sayıda kaynak tanımlama.

37 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 37 void T01PrimaryGeneratorAction:: GeneratePrimaries(G4Event* anEvent) { G4ParticleDefinition* particle; G4int i = (int)(5.*G4UniformRand()); switch(i) { case 0: particle = positron; break;... } particleGun- particleGun->SetParticleDefinition(particle); G4double pp = momentum+(G4UniformRand()- momentum+(G4UniformRand()-0.5)*sigmaMomentum; G4double mass = particle->GetPDGMass(); particle- G4double Ekin = sqrt(pp*pp+mass*mass)-mass; sqrt(pp*pp+mass*mass)- particleGun- particleGun->SetParticleEnergy(Ekin); ( ) G4double angle = (G4UniformRand()-0.5)*sigmaAngle; (G4UniformRand()- particleGun- particleGun->SetParticleMomentumDirection ( (G4ThreeVector(sin(angle),0.,cos(angle))); ( ( g ),, ( g ))); particleGun- particleGun->GeneratePrimaryVertex(anEvent); } Başlangıç değerlerini kurmak için komutlar: /gun/List List available particles /gun/particle Set particle to be generated /gun/direction Set momentum direction /gun/energy Set kinetic energygy /gun/momentum Set momentum /gun/momentumAmp Set absolute value of momentum /gun/position Set starting position of the particle /gun/time Set initial time of the particle /gun/polarization Set polarization /gun/number Set number of particles to be generated /gun/ion Z A Q G4ParticleGun

38 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 38 G4double a,b,c; G4double n; do { a = (G4UniformRand()-0.5)/0.5; (G4UniformRand()- b = (G4UniformRand()-0.5)/0.5; (G4UniformRand()- c = (G4UniformRand()-0.5)/0.5; (G4UniformRand()- n = a*a+b*b+c*c; } while (n > 1 || n == 0.0); n = std::sqrt(n); a /= n; b /= n; c /= n; G4ThreeVector direction(a,b,c); particleGun- particleGun- >SetParticleMomentumDirection(direction); Equivalent GPS (script) /gps/ang/type iso Position distributions /gps/pos/… Point E.g. /gps/pos/type Point /gps/pos/type /gps/pos/centre /gps/pos/centre cm Beam E.g. /gps/pos/type Beam /gps/pos/type /gps/pos/shape Circle /gps/pos/radius 1. mm gp p /gps/pos/sigma_r 2. mm Plane Shape: Circle, Annulus, Ellipsoid, Square or Rectangle E.g. /gps/pos/type Plane /gps/pos/type /gps/pos/shape Rectangle /gps/pos/halfx /gps/pos/halfx 50 cm /gps/pos/halfy /gps/pos/halfy 70 cm Surface or Volume Shape: Sphere, Ellipsoid, Cylinder or Para Surface: zenith automatically oriented as normal to surface at point E.g. /gps/pos/type Surface /gps/pos/type /gps/pos/shape Sphere /gps/pos/radius 1. m G4GeneralParticleSource

39 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 39 Analiz Kod içerisinde ROOT$G4ANALYSIS_USE_ROOT AIDA$G4ANALYSIS_USE Örneğin MySteppingAction, MyEventAction, MySensitiveDetector sınıflarında kullanımı Geant4 içerisinde hazır bulunan hesaplayıcılar (Primitive scorers) $G4INSTALL/source/digits_hits/scorer G4PSEnergyDeposit3D.ccG4PSEnergyDeposit.ccG4PSNofSecondary.cc G4PSTrackLength.ccG4PSDoseDeposit3D.ccG4PSDoseDeposit.cc G4PSNofCollision.cc G4PSMinKinEAtGeneration.cc /score/create/boxMesh boxMesh_1 /score/mesh/boxSize cm /score/mesh/nBin /score/quantity/energyDeposit eDep /score/close /score/drawProjection boxMesh_1 eDep examples/extended/runAndEvent/RE03

40 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 40 Örnekler 3 katogoride toplanır (G4INSTALL/examples)  Yeni başlayanlar (examples/novice) 7 adet örnek  Kapsamlı (examples/extended) 19 adet örnek Fiziksel süreçlerin testi ve doğrulanması Geant4 araçlarının gösterimi  İleri düzey (examples/advanced) 20 adet örnek Pratik uygulamalar HEP dışı uygulamalardan örnekler (Space,Medical,..)

41 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 41

42 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 42

43 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 43 BACKUP SLIDES

44 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 44 How to participate in? Depending your interest & capabilities, Choose your way in Computer Aided Methods  Learn advanced programming (C++)  CAD Tools  XML language  Physics Models  Analyze Tools (RooT, OpenScientist, JAS, Paw) Have a look at; Analysis and Reconstruction(JAS3, LCIO) Detector Simulation(SLIC, LCDG4, Mokka) Event Generation(Herwig, GuineaPig)

45 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 45 Tracking & Processes Geant4 Tracking is general  It is independent to the particle type the physics processes assigned to a particle  It gives the chance to all processes to contribute to determining the step length contribute any possible changes in physical quantities of the track generate secondary particles suggest changes in the state of the track (e.g. to suspend, postpone or kill it) Processes;  Particle transportation is a process as well; the particle interacts with geometrical volume boundaries and field of any kind  Each particle has its own list of applicable processes. At each step, all processes listed are invoked to get proposed physical interaction lengths  The process which requires the shortest interaction length (in space-time) is the one that occurs.  Each process has one or combination of the following natures. AtRest (e.g. muon decay at rest) AlongStep (continuous process, e.g. Cerenkov process) PostStep (discrete process, e.g. decay on the fly)

46 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 46 EM Physics Category

47 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 47 Hadronic Physics Category 1 MeV 10 MeV 100 MeV 1 GeV 10 GeV 100 GeV 1 TeV LEP HEP ( up to 15 TeV) Photon Evap Multifragment Fermi breakup Fission Evaporation Pre- compound Bertini cascade Binary cascade QG String (up to 100 TeV) FTF String (up to 20 TeV) High precision neutron At rest Absorption  K, anti-p Photo-nuclear, electro-nuclear CHIPS (gamma) CHIPS LE pp, pn Rad. Decay … plus G4BinaryLightIonCascade, G4WilsonAbrasion, G4EmDissociation

48 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 48 ConstructParticle() [1] Basic construction method: By manually invoking the particle definition methods #include “G4Electron.hh” #include “G4Proton.hh” … void MyPhysicsList::ConstructParticle() { G4Electron::ElectronDefinition(); G4Proton::ProtonDefinition(); G4Neutron::NeutronDefinition(); G4Gamma::GammaDefinition(); … }

49 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 49 ConstructParticle() [2] By using utility classes: That make the individual calls for you: void MyPhysicsList::ConstructParticle() { G4BaryonConstructor* baryonConstructor = new G4BaryonConstructor(); baryonConstructor->ConstructParticle(); delete baryonConstructor; G4BosonConstructor* bosonConstructor = new G4BosonConstructor(); bosonConstructor->ConstructParticle(); delete bosonConstructor; … }

50 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 50 ConstructProcess() void MyPhysicsList::ConstructProcess() { AddTransportation(); // Method provided by G4VUserPhysicsList // It assignes the transportation process to all // particles, with non-zero lifetime, defined // in ConstructParticle() ConstructEM(); // Method may be defined by user (for convenience) // Instantiate electromagnetic processes here ConstructGeneral(); // Method may be defined by user (for convenience) }

51 8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 51 ConstructEM() void MyPhysicsList::ConstructEM() { theParticleIterator->reset(); while( (*theParticleIterator)() ) { G4ParticleDefinition* particle = theParticleIterator->value(); G4ProcessManager* pmanager = particle->GetProcessManager(); G4String particleName = particle->GetParticleName(); if (particleName == “gamma”){ pmanager->AddDiscreteProcess(new G4GammaConversion()); … } … }


"8. Uluslararası Katılımlı Parçacık Hızlandırıcıları ve Detektörleri Yaz Okulu 1 GEANT4 (Geometry And Tracking) Adnan Kılıç - Uludağ Üniversitesi." indir ppt

Benzer bir sunumlar


Google Reklamları