Ercan Piliçer Uludağ Üniversitesi (Araş.Gör.Dr.) INFN-Perugia (Post-Doc)



Benzer belgeler
GEANT4: GiRiŞ ve ÖRNEKLER

GEANT4: GiRiŞ ve ÖRNEKLER

BENZETİMİ. Ercan Piliçer - Uludağ Üniversitesi. Hızlandırıcı ve Parçacık Fiziğinde Bilgisayar Uygulamaları II, Şubat 2012, Kars

Ercan Piliçer Uludağ Üniversitesi

Unlike analytical solutions, numerical methods have an error range. In addition to this

Kozmik ışınların kaynağı: Cosmic rays are charced energetic, i.e. very high speed, particles originating from deep space objects such as supernova

(Geometry And Tracking) Adnan Kılıç Uludağ Üniversitesi

MM103 E COMPUTER AIDED ENGINEERING DRAWING I

Arýza Giderme. Troubleshooting

WEEK 11 CME323 NUMERIC ANALYSIS. Lect. Yasin ORTAKCI.

BAR. Linear and functional: BAR

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü BİL 203 Veri Yapıları ve Algoritmalar I

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

IDENTITY MANAGEMENT FOR EXTERNAL USERS

PCC 6505 PROFILE CUTTING LINE

Teknoloji Servisleri; (Technology Services)

Inventory of LCPs in Turkey LCP Database explained and explored

Yüz Tanımaya Dayalı Uygulamalar. (Özet)

First Stage of an Automated Content-Based Citation Analysis Study: Detection of Citation Sentences

CmpE 320 Spring 2008 Project #2 Evaluation Criteria

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

WEEK 4 BLM323 NUMERIC ANALYSIS. Okt. Yasin ORTAKCI.

Geant4. Kısa Bir Tanıtım

Theory of Dimensioning

SBR331 Egzersiz Biyomekaniği

CNC MACH breakout board user manual V8 type

Beşevler Mah. Aktaş Sok.Pars İş Merkezi. No:5 Kat:4 Büro:8 Nilüfer/Bursa Tel: Faks: e-posta:

ZTM112 BİLGİSAYAR DESTETEKLİ ÇİZİM TEKNİĞİ

IMRT - VMAT HANGİ QA YÜCEL SAĞLAM MEDİKAL FİZİK UZMANI

econn (Supplier Portal) of the MANN+HUMMEL Group

24kV,630A Outdoor Switch Disconnector with Arc Quenching Chamber (ELBI) IEC IEC IEC 60129

D-Link DSL 500G için ayarları

Arıza Giderme. Troubleshooting

Mitsubishi Electric Corporation. Number of Items

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00

Ege Üniversitesi Elektrik Elektronik Mühendisliği Bölümü Kontrol Sistemleri II Dersi Grup Adı: Sıvı Seviye Kontrol Deneyi.../..

Multiplication/division

Öğrencilere bilgisayar destekli titreşim analizi yeteğinin kazandırılması

İZDÜŞÜM. İzdüşümün Tanımı ve Önemi İzdüşüm Metodları Temel İzdüşüm Düzlemleri Noktanın İzdüşümü Doğrunun İzdüşümü Düzlemlerin İz Düşümleri

ATILIM UNIVERSITY Department of Computer Engineering

Zest. : Shower Unit (Flat) Kompakt Duş Ünitesi (Flat) Description Tan m. : 90x90. Size / Ebat (cm) : 2.5. Depth / Derinlik (cm) Weight / A rl k (kg)

BBM Discrete Structures: Midterm 2 Date: , Time: 16:00-17:30. Question: Total Points: Score:

DOKUZ EYLUL UNIVERSITY FACULTY OF ENGINEERING OFFICE OF THE DEAN COURSE / MODULE / BLOCK DETAILS ACADEMIC YEAR / SEMESTER. Course Code: MAK 1011

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ

Dersin Kodu Dersin Adı Dersin Türü Yıl Yarıyıl AKTS MAKİNA PROJESİ II Zorunlu 4 7 4

AKTS Başvurumuz. Bologna Süreci Uzmanlarının Değerlendirmesi

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ

Assembly Language Programming

NATURAL LANGUAGE PROCESSING

ÇEVRESEL TEST HİZMETLERİ 2.ENVIRONMENTAL TESTS

THE IMPACT OF AUTONOMOUS LEARNING ON GRADUATE STUDENTS PROFICIENCY LEVEL IN FOREIGN LANGUAGE LEARNING ABSTRACT

L2 L= nh. L4 L= nh. C2 C= pf. Term Term1 Num=1 Z=50 Ohm. Term2 Num=2 Z=50 Oh. C3 C= pf S-PARAMETERS

Bölüm 6. Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler

SEZAİ YALÇIN PROFESÖR

STRAIGHT. Correct address for linear lighting: STRAIGHT

COURSES OFFERED FOR ERASMUS INCOMING STUDENTS

DOKUZ EYLUL UNIVERSITY FACULTY OF ENGINEERING OFFICE OF THE DEAN COURSE / MODULE / BLOCK DETAILS ACADEMIC YEAR / SEMESTER

DOKUZ EYLÜL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ DEKANLIĞI DERS/MODÜL/BLOK TANITIM FORMU. Dersin Orjinal Adı: CALCULUS II. Dersin Kodu: MAT 1002

> what is ansible*? "infrastructure as code"

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

Delta Pulse 3 Montaj ve Çalıstırma Kılavuzu.


AKE Bulaşık Yıkama Makinası Kontrol Kartı Kullanım Kılavuzu Dishwasher Controller User Manual TR EN

Fluent Launcher File > Read > Mesh Scale View Length Unit Mesh Was Created In Scale Close General>Time Gravity

Öğrenciler analiz programları hakkında bilgi sahibi olurlar

Problem B. Beton duvar (perde) Beton. E = ksi, Poisson oranı = 0.2. Yapılacaklar

12. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

Yarışma Sınavı A ) 60 B ) 80 C ) 90 D ) 110 E ) 120. A ) 4(x + 2) B ) 2(x + 4) C ) 2 + ( x + 4) D ) 2 x + 4 E ) x + 4

g Na2HPO4.12H2O alınır, 500mL lik balonjojede hacim tamamlanır.

AKDENİZ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ÇEVRE MÜHENDİSLİĞİ BÖLÜMÜ ÇEV181 TEKNİK İNGİLİZCE I

Keyestudio SHT31 Temperature and Humidity Module / SHT31 Sıcaklık ve Nem Modülü

AB surecinde Turkiyede Ozel Guvenlik Hizmetleri Yapisi ve Uyum Sorunlari (Turkish Edition)

High Bay Lighting Fixtures Saver Premium HB 80

1 I S L U Y G U L A M A L I İ K T İ S A T _ U Y G U L A M A ( 5 ) _ 3 0 K a s ı m

Atıksu Arıtma Tesislerinde Hava Dağıtımının Optimize Edilmesi ve Enerji Tasarrufu

Darbeli Kırıcılar Impact Crushers

Performans Tabloları Yalınkat Camlar

( ) ARASI KONUSUNU TÜRK TARİHİNDEN ALAN TİYATROLAR

MeV Enerjili Proton Hızlandırıcıları için Beton ve Toprak Zırh Kalınlıklarının FLUKA Monte Carlo Kodu ile Belirlenmesi

Context-Free Grammars and Languages

TRANSPORTATION ENVIRONMENTAL (TAŞIMA ÇEVRE RİSKİ SORU FORMU)

Single core conductor BETAtherm 145

: Shower Unit (Flat) : Kompakt Duș Ünitesi (Flat)

Seri kablo bağlantısında Windows95/98/ME'ten Windows 2000'e bağlantı Windows95/98/ME - NT4 bağlantısına çok benzer.

LIQUID RECEIVERS LİKİT TANKLARI VERTICAL LIQUID RECEIVERS DİKEY LİKİT TANKLARI HORIZONTAL & VERTICAL LIQUID RECEIVERS YATAY & DİKEY LİKİT TANKLARI

"Şirket" Sunucusu ve Başarı Mobile Arasındaki HTTP Veri Aktarımı için Etkileşim Teknik Protokolü

ENG ACADEMIC YEAR SPRING SEMESTER FRESHMAN PROGRAM EXEMPTION EXAM

KONTAKSĐ. Bitirme Ödevi. Metin Kaplan Ferhat Karakoç Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri

Problem X. Kafes Kirişli Köprü. Çelik. E = ksi Poisson oranı = 0.3 Tüm elemanlar W6X12 Fy = 36 ksi. Betonarme Köprü Tabliyesi

ÖRNEKTİR - SAMPLE. RCSummer Ön Kayıt Formu Örneği - Sample Pre-Registration Form

00322 ELECTRICAL MACHINES-II Midterm Exam

Örnek 1 (Virtüel iş çözümü için; Bakınız : Ders Notu Sayfa 23 - Örnek 4)

U3000/U3100 Mini (Linux İşletim Sistemi Yüklü. Eee PC için) Hızlı Başlangıç Kılavuzu

EGETEST CENTER ELEKTRİK ELEKTRONİK SANAYİ VE TİCARET LİMİTED ŞİRKETİ

BBM Discrete Structures: Final Exam - ANSWERS Date: , Time: 15:00-17:00

Track & Track Accessories

OMB. Gaz Yakma Proses Bekleri 2010 TR-EN

AHK. 3 Valsli Hidrolik Silindir Makineleri 3 Rolls Hydraulic Plate Bending Machines AHK 25/65

DOKUZ EYLUL UNIVERSITY FACULTY OF ENGINEERING OFFICE OF THE DEAN COURSE / MODULE / BLOCK DETAILS ACADEMIC YEAR / SEMESTER. Course Code: MAK 2029

INDIVIDUAL COURSE DESCRIPTION

Transkript:

& Ercan Piliçer Uludağ Üniversitesi (Araş.Gör.Dr.) INFN-Perugia (Post-Doc)

Contents FLUKA GEANT4 2

3

History 1. Generation 1962-1978 J.Ranft (Rutherfor Lab.) and H.Geibel (CERN) hadron beam (300 GeV proton) 1970 FLUktuierende KAskade Energy deposition, star density 2. Generation1978-1989 User friendly hadron cascade program FLUKA81 cylindrical, FLUKA82 cartesian and spherical FLUKA86 electromagnetic cascade EGS4 FLUKA87 encapsulate COMMON blocks INCLUDE files More estimator (fluence estimator->boundary,collision,tracklength) 3. Generation 1988- New generation accelerators, high limonisity end energy, TeV Large multiplicities, strong magnetik field, Edep in small volumes, high energy effects, Low energy neutron interactions INFN support, A.Fasso From High Energy Accelerator Shielding to Multiparticle code (6 yıl) 2003 INFN-CERN project for extension of FLUKA 4

Structure Fortran code, ~680000 lines INCLUDE files in $FLUPRO/flukapro/ User routines in $FLUPRO/usermvax/ MajorVersion MinorVersion Patch fluka2008.3c dpmjet flukapro flutil interface latestrqmd usermvax Root directory of FLUKA DPMJET data files All FLUKA commons Utility programs and scripts Interface libraries to DPMJET Interface libraries to rqmd Fortran user routines Physics data files coh.bin Coherent atomic form factors uodt.dat Fluorescence emission data, needed for problems involving low-energy electron-photon transport gxsect.bin Photon cross sections neuxsc-ind 72.bin, neuxsc-ind 260.bin Low-energy neutron cross sections: needed for all problems with neutron transport below 20 MeV nuclear.bin Nuclide masses, abundances and other data: needed for all hadronic problems elasct.bin Elastic cross sections for hadronic problems sigmapi.bin Pion cross sections brems n.bin Bremsstrahlung cross sections e6r1nds3.fyi, jef2.fyi, jendl3.fyi, xnloan.dat Fission nuclide yields and neutron multiplicities sidae.dat, sidan.dat, sidap.dat, sidapi.dat Silicon damage weighting functions 5

Structure BAMJM BLOCKM COMLATM DECAYM DEDXM new hadronisation package (strongly improved version of the original Bamjet) [152] 31 Modules BLOCK DATA routines all geometry routines specic for Combinatorial Geometry (CG) and repetition (lattice capability) in the geometry all routines connected with particle decays during transport all routines connected with de/dx and radiative losses of hadrons and muons, including delta-ray production and cross sections for muon photonuclear interactions DPMM interface routines for the Dpmjet generator DUM dummy routines ELSM all hadron and photon (photonuclear) cross section routines EMFM all routines dealing with electron, positron and photon transport and interactions EVENTQM auxiliary routines for the high energy hadronic interaction generators EVENTVM all routines (besides those in EVENTQM) connected with the high energy hadronic inelastic interaction package EVFFRM separate module with all evaporation, fission and Fermi break-up routines FLUOXM all routines dealing with fluorescence X-ray and Auger production GEOLATM geometry navigation and debugging routines KASKADM general event steering, most of the relevant transport routines for hadron and muon transport,magnetic field tracking LOWNEUM all routines concerning the multigroup treatment of low energy (E < 20 MeV) neutrons MAINM main, input parsing and auxiliary routines MATHM mathematical auxiliary routines (interpolation, integration, etc.) NEUTRIM nuclear interactions of neutrinos NOPTM all routines connected with new scoring options implemented after Fluka86, and blank COMMON setting for scoring options. OPPHM optical photon production and transport OUTPUTM printing routines (apart from output of new options which is performed in NOPTM) PEMFM electromagnetic initialization PGM Plotgeom geometry drawing package PRECLM full Peanut second part PREEQM full Peanut first part PRIPROM initialization and drivers for Peanut RNDM random number generation, including gaussian-distributed random numbers RQMDM interface routines for the Rqmd generator USERM user oriented routines (see list below) IBMM/HPM/LINUXM/OSFM/VAXM timing and environment routines. These are machine specific 6

Physics Capabilities Hadron inelastic nuclear interactions 3-5 GeV/c < PEANUT package, Generalised Intra-Nuclear Cascade (GINC) 3-5 GeV/c > Gribov-Glauber multiple scattering Evaporation, fission, Fermi break-up, gamma de-excitation, photo-nuclear, Nucleus-Nucleus interactions 5 GeV/n > DPMJET-II,DPMJET-III 0.1-5 GeV/n RQMD Charged hadrons and muons Neutron interactions, and down to thermal neutrons E > 20 MeV, FLUKA nuclear models E < 20 MeV multi-group, 230 üzerinde material @ different temperatures Electron, positron Multiple, Single scattering (volume boundary) Deltay-ray Photons Compton, Rayleigh and Photoelectric, Pair production Polarization Optic photons Cerenkov, Scintillation, Transition radiation (user's request) Neutrinos 7

Physics Units distance energy momentum temperature solid angle magnetic field electric field time activity LET cm (and derived units cm2, cm3 for areas and volumes) GeV Exceptions: ev is used for average ionisation potential input by option MAT-PROP g MeV-1 cm-2 are used for Birks coeffcients input by option TCQUENCH GeV/c degree Kelvin sr Exception: degrees may be used, on user's request, with option USRYIELD T kv/cm s (option TCQUENCH) or ns (option TIME{CUT) Bq kev/(m g/cm3) 8

Particles & Materials predefined 71 particles 25 materials Transport limits 9

Generalized Particles Numbers > 200 designate families of particles, grouped according to some common characteristics (all hadrons, or all charged particles, etc.). In Fluka, they are called Generalized Particles and can be used only for scoring 10

Geometry The Combinatorial Geometry (CG) used by FLUKA The input format can be fixed or name based (free). Use of the latter is strongly encouraged The input sequence must be completely contained between GEOBEGIN and GEOEND cards Four concepts are fundamental in the FLUKA CG: Bodies basic convex objects + infinite planes & cylinders Zones sub-region defined only with intersection and subtraction (used internally) Regionsare defined as boolean operations of bodies (union of zones) Lattices duplication of existing objects (translated & rotated) Bodies are the building blocks of the CG. FLUKA provides both finite and infinite convex bodies for a total of 20 geometrical shapes, with the following code words ARB WED Red Blue Green BOX XCC ELL XEC PLA XYP RAW XZP RCC YCC REC YEC RPP YZP SPH ZCC TRC ZEC CG legacy, recommended to avoid using can be used safely should be preferred when possible, better optimized 11

Geometry Regions are defined as combinations of bodies obtained by boolean operations All regions must be contained within a surrounding blackhole: an infinitely absorbing material, designated by the FLUKA material number 1(BLCKHOLE). GEOBEGIN card VOXELS card (optional) Geometry title (and reading format options) Body data END card Region data END card LATTICE cards (optional) Region volumes (optionally requested by a flag in the Geometry title) GEOEND card 12

Geometry RPP Xmin, Xmax Ymin, Ymax Zmin, Zmax TRC Vx, Vy, Vz Hx, Hy, Hz R1 R2 SPH Vx, Vy, Vz, R XYP Vz RCC Vx, Vy, Vz Hx, Hy, Hz R YCC Ax, Az, R 13

Geometry Each region is described as a combination of one or more bodies, by means of the three operator symbols: - + Operators: Subtraction + Intersection Union Region name must begin by an alphabetical character and must not be longer than 8 characters Avoid touching surfaces Especially when floating point operators are involved Use cutting surfaces B instead 14

Input & Cards The input of Fluka consists of a text file containing a sequence of option lines cards Input file Fixed of Free format Fixed format is A8, 2X, 6E10.0, A8 *...1...2...3...4...5...6...7...8 Card What(1) What(2) What(3) What(4) What(5) What(6) SDUM Since 2006, practical naming convention in input files for; material names particle or generalized particle names region names, if the geometry too is written in name format detector names A special name (@LASTMAT, @LASTPAR, @LASTREG) can be used corresponding to the largest material number, particle id, and region number respectively DEFAULTS must be issued at the very beginning of input. It can be preceded only by a GLOBAL card and by command TITLE 15

Preprocessor FLUKA supports preprocessing defines like used e.g., in C or C++. Useful feature to keep many various setups and configurations in a single input file Commands: #define VARIABLE1 #define VARIABLE2 #ifdefvariable1 #elifvariable2 #else #endif In FLUKA up to 10 nesting of #if #else are supported 16

Basic Input One keyword, 6 floating point BEAM numbers, one keyword (for each Energy, Particle cards) defining several beam characteristics: type of particle, energy, divergence, profile and statistical weight BEAMPOS Starting point, Direction cosines defines the coordinates of the centre of the beam spot(i.e., the point from which transport starts) and the beam direction GEOMETRY cards appear here Scorers Estimators 17

Basic Input (DEFAULTS) 18

Scoring SCORE scores energy deposited (or star density) in all regions USRTRACK, USRCOLL score average differential fluence of a given type or family of particles in a given region USRBDX scores average fluence or current of a given type or family of particles on a given surface USRBIN scores the spatial distribution of energy deposited, or total fluence (or star density, or momentum transfer) in a regular mesh (cylindrical or Cartesian) described by the user USRYIELD scores a double differential yield of particles escaping from a surface. The distribution can be with respect to energy and angle RESNUCLEi scores residual nuclei in a given region more details are given in the respective lecture on activation EVENTBIN is like USRBIN, but prints the binning output after each event instead of an average over histories USERDUMP defines the events to be written onto a collision tape file AUXSCORE defines filters and conversion coefficients 19

Scoring To analyze the results of the different scoring options, several programs are available The most powerful ones are kept in $FLUPRO/flutil They assume that the estimator files are unformatted, and can calculate standard deviations and integral values over many cycles: ustsuw.f to analyze USRTRACK and USRCOLL outputs usxsuw.f to analyze USRBDX outputs usysuw.f to analyze USRYIELD outputs ubsuw.f to analyze USRBIN outputs usrsuw.f to analyze RESNUCLEi outputs Each of these programs (except usbsuw) produces three files: text file with extension _sum.lis which contains averages, standard deviations, cumulative (integral)quantities formatted file which can replace the N unformatted estimator files and can be used for further calculations text file with extension _tab.lis to be easily readout by graphic codes Simpler programs are also provided in the manual 20

Scoring particle/cm3/primary GeV/cm3/primary (sr) (sr) 21

User Routines usrglo.f USRGCALL usrini.f USRICALL usreini.f Run Event USRICALL source.f SOURCE usrmed.f MAT-PROP mgdraw.f USERDUMP comscw.f USERWEIG fluscw.f USERWEIG usreou.f usrout.f USROCALL USROCALL $FLUPRO/flutil/fff yyy.f $FLUPRO/flutil/lfluka -o myfluka -m fluka yyy.o User RUN control usrini.f usrein.f usreout.f usrout.f Event generation, physics, kinematics source.f soevsv.f udcdrl.f formfu.f Properties of medium magfld.f usrmed.f Manage lattice geometry lattic.f Access (almost) everything mgdraw.f Optical photon transport abscff.f frghns.f dffcf.f ophbdx.f queff.c rflctv.f rfrndx.f 22

User Routines ABSCFF COMSCW DFFCFF ENDSCP FLDSCP FLUSCW FORMFU FRGHNS FUSRBV LATTIC LUSRBL MAGFLD MDSTCK MGDRAW absorption coefficient (for optical photons) response functions, user dependent selection for density-like quantities diffusion coefficient (for optical photons) energy density distributed change of positions fluence distributed change of positions response functions, user dependent selection for flux-like quantities nuclear charge form factors material roughness (for optical photons) defines a continuous variable for 3-D binnings symmetry transformation for lattice geometry defines a discrete variable for 3-D binnings MUSRBR defines a discrete variable for 3-D binnings to use a magnetic field map OPHBDX boundary crossing properties (for optical photons) management of secondary stack QUEFFC quantum efficiency (for optical photons) to dump trajectories, etc. RFLCTV reflectivity (for optical photons) RFRNDX refraction index (for optical photons) SOEVSV saving source events SOURCE to generate any distribution for source particles STUPRE set user variables (electrons and photons) STUPRF set user variables (hadrons, muons and neutrinos) 33 available UBSSET to override input biasing parameters UDCDRL decay direction biasing User routines under USIMBS user-defined importance biasing $FLUPRO/usermvax USREIN event initialization USREOU post-event output USRGLO user global settings USRINI user initialization USRMED to perform user driven biasing and/or particle selections on a material basis USROUT user output USRRNC user customization of residual nuclei scoring 23

User Routines (mgdraw.f) Subroutine MGDRAW, activated by option USERDUMP with WHAT(1) >= 100.0 (unmodified default version output) User modified version USERDUMP with WHAT(3)! Entries in MGDRAW subroutine: BXDRAW called at boundary crossings, EEDRAW called at event end, MGDRAW called at each step, for trajectory drawing and de/dx energy deposition events, ENDRAW for recording of point energy deposition events, SODRAW for recording of source events NTRACK number of track segments For other variables MTRACK number of energy deposition events along the track Look at JTRACK type of particle INCLUDE ETRACK total energy of the particle files WTRACK weight of the particle NTRACK values of XTRACK, YTRACK, ZTRACK: end of each track segment MTRACK values of DTRACK: energy deposited at each deposition event CTRACK total length of the curved path 24

User Routines (mgdraw.f) Subroutine MGDRAW, activated by option USERDUMP with WHAT(1) >= 100.0 (unmodified default version output) User modified version USERDUMP with WHAT(3)! Entries in MGDRAW subroutine: BXDRAW called at boundary crossings, EEDRAW called at event end, MGDRAW called at each step, for trajectory drawing and de/dx energy deposition events, ENDRAW for recording of point energy deposition events, SODRAW for recording of source events For other variables NTRACK number of track segments Look at MTRACK number of energy deposition events along the track INCLUDE JTRACK type of particle files ETRACK total energy of the particle WTRACK weight of the particle NTRACK values of XTRACK, YTRACK, ZTRACK: end of each track segment MTRACK values of DTRACK: energy deposited at each deposition event CTRACK total length of the curved path 25

Outputs myinput001.out-> License/version Input echo Information about the basic nuclear data file used in the program Nuclear data Active options for the nuclear model Mulmix output (Evaporation, Deexcitation, Fermi Break-up..) Requested products/decays Neutron data Material dependent parameters for ionization energy loses dp/dx Delta-ray and Bremsstrahlung threshold Blank common Media parameters EMF-FLUKA Fluka particles Beam properties Particle thresholds Termination conditions Mult. Coulomb scattering EM Showers Scoring Scattering lengths Regions summary Initialization time Output during transport Events by region Scattering statistics Run summary 26

Outputs Periodic echo for; Event number, time, random seed Total CPU time Number of stars, secondaries in stars,, fissions, Decay particle products, particles decayed... myinput001.out-> License/version Input echo Nuclear data Mulmix output Requested products/decays Neutron data dp/dx Blank common Media parameters EMF-FLUKA Fluka particles Beam properties Particle thresholds Termination conditions Mult. Coulomb scattering EM Showers Scoring Scattering lengths Regions summary Initialization time Output during transport Events by region Scattering statistics Run summary 27

Fluka Tools FLAIR An advanced user interface for FLUKA FLUPIX KNOPPIX version of the Live CD, with pre-installed FLUKA FluGG Fluka Geant4 Geometry interface SimpleGeo Graphical tool in order to compose/manipulate FLUKA geometry input FLUKACAD/PIPSICAD Interface between FLUKA and AutoCAD FlukaGUI Interface to inspect/manipulate standard FLUKA output files (USRBIN) 28

FLAIR FLUKA Advanced Interface http://www.fluka.org/flair Fully featured Input file Editor Default executable Mini-dialogs for each card Compile user routines Easy and almost error free editing Card grouping in categories Post-processing files Error checking Geometry optimizations and debugging Compilation of the FLUKA Executable Running and monitoring of the status Inspection of the output files Output file viewer dividing into sections Post processing (merging) the output data files Plot generation through an interface (GnuPlot) USRxxx, RESNUCLEI and geometry FLUKA directory $FLUPRO Platform Linux Developed by Vasilis Vlachoudis 29

SimpleGEO SimpleGeo is an interactive solid modeler Plugins: DaVis3D (USRBIN files ascii format) Export: FLUKA geometry MCNP, MCNPX geometry PHITS geometry Platform: Windows XP, Windows Vista Developed by: Christian Theis http://theis.web.cern.ch/theis/simplegeo/ 30

Application Examples Cosmic ray physics Neutrino physics Accelerator design (n_tof, CNGS, LHC systems) Particle physics: calorimetry, tracking and detector simulation etc.(alice, ICARUS, ) Radiation background (LHC, ATLAS, CMS) Shielding design Dosimetry and radioprotection Space radiation Hadrontherapy Neutronics 31

Application Examples Energy production, waste transmutation: EnergyAmplifier (C.Rubbia) Spallation neutrons TARC / ntof @CERN LHC Beam-machine interaction and radioprotection LHC/ATLAS/CMS Radiation background in detectors LHC/ATLAS Calorimetry simulation Neutrino beams from accelerators: WANF e CNGS (officially based on FLUKA) Cosmic Rays Calculation of secondary particles in atmosphere (neutrinos) ICARUS General detector and physics simulation LHC/ALICE General detector simulation Dose calculations Civil aviation Dose calculations Space missions Medical physics Hadrotherapy 32

LHC Collimation Region Collimation systems: IR3: Momentum cleaning IR7: Betatron cleaning 33

LHC Cleaning Insertions Two warm LHC insertions are dedicated to beam cleaning Collimation systems: IR3: Momentum cleaning IR7: Betatron cleaning Allowed loss rates: 100 kw continuously 500 kw for 10s (1% of beam) 1 MW for 1 s Quench limits: Quadrupoles 1 mw/cm3 Bending 5 mw/cm3 34

ATLAS: radiation background Benchmark for ATLAS background: E.Gschwendtner, C.W.Fabjan, N.Hessey, T.Otto, and H.Vincke, Measuring the photon background in the LHC experimental experiment, NIM A476, 222 (2002) (benchmarked up to 14 attenuation lengths) Photon background Neutron background 35

Example of Activity Maps Activation of the n-tof target 8.4 1011 p/s 20 GeV/c 6 months irradiation/ 6 months off from Apr2001 to Oct2004 Cooling down till May 2006 Side view (averaged over 80 cm width ) Front view (averaged over 60 cm length ) Lead target, Steel support, immersed in cooling/moderating water Simulations from E. Lebbos et al., «CERN ntof Facility : Résultats de la simulation de l'activité de la cible de n-tof EET internal report 36

LCLS (SLAC Linac Coherent Light Source) Radiation damage in permanent magnets effect of inserting a thin profile monitor in the beam Neutron fluence distribution Transverse section of the magnets at fluence max (Z = 76.21 m) AUTOCAD display of FLUKA Combinatorial Geometry Longitudinal section (83 m long, 5 cm high) 37

A Simulation of the ATIC Cosmic Ray Experiment with FLUKA + DPMJET 2.5 100 GeV/A Incident Carbon 1 TeV/A Incident Carbon C Targets Incident Beam BGO Si Detectors Predicted n fluences from a central C beam incident on the ATIC cosmic ray balloon expt. apparatus 38

CERN-EU High-Energy Reference Field Facility (CERF) Benchmark study of radionuclide production with FLUKA samples in contact with a 50 cm long, 7 cm diameter copper target, centred on the beam axis 39

CLIC (Compact Linear Collider) e-/e+ collider with CM energy 3 TeV 2 GeV e- beam on W75-Re25 target & Emerging e-/e+ after target e- dumping region e+ Pre-Linac Energy deposition comparison in the target TAEK project 40

ICARUS Simulation FLUKA is used in ICARUS at Gran Sasso laboratory for different applications: full detector simulation atmospheric neutrino generation and interactions neutrinos from CNGS beam interaction of solar and Super Novae neutrinos generation and detection of νµ proton decay calculation the expected rate vs. multiplicity of underground muon events p decay µ 41

Application to Space Radiation Protection FLUKA used to evaluate physical and biological equivalent dose from: -Galactic C.R. - Solar Particle Events (Mostly protons) A new Geometry System! Human Phantom in Voxel Geometry 42

Documentation 43

44

45

History Geant3 developed at CERN (1982-1994) Geant4 (C++) is the successor of Geant3 (Fortran) Dec 94 Apr 97 Jul 98 Dec 98 Project start First alpha release First beta release First Geant4 public release - version 1.0 Geant4 was used by BaBar experiment at SLAC Since 2000 Geant4 is used for Monte Carlo simulation of particle transport for ATLAS, CMS, LHCb since 2004. June 30th, 06 Dec 15th, 06 May 11th, 07 June 29th, 07 Dec 14th, 07 Geant4 version 8.1 release Geant4 version 8.2 release Geant4 version 8.3 release Geant4 version 9.0 release Geant4 version 9.1 release 46

Geant4 Packages Geant4 consists of 17 categories. Independently developed and maintained by WG(s) responsible to each category. Interfaces between categories (e.g. top level design) are maintained by the Global architecture WG. Geant4 Kernel Packages in red Handles run, event, track, step, hit, trajectory. Provides frameworks of geometrical representation and physics processes. 47

Application States Geant4 has six application states. G4State_PreInit PreInit Material, Geometry, Particle and/or Physics initialize Process need to be initialized/defined Idle G4State_Idle G4State_GeomClosed Geometry is optimized and ready to process an event G4State_EventProc An event is processing Run (event loop) Ready to start a run beamon exit GeomClosed Quit EventProc G4State_Quit (Normal) termination Abort G4State_Abort A fatal exception occurred and program is aborting 48

Terminology Run, event, track, step, step point Track trajectory, Step trajectory point Process At rest, along step, post step Cut = production threshold Sensitive detector, hit, hits collection 49

Run in Geant4 Run starts with Beam On. Within a run, the user cannot change detector setup settings of physics processes Run is a collection of events which share the same detector and physics conditions. A run consists of one event loop. At the beginning of a run, geometry is optimized for navigation and cross-section tables are calculated according to materials appear in the geometry and the cut-off values defined. G4RunManager class manages processing a run, a run is represented by G4Run class or a user-defined class derived from G4Run. A run class may have a summary results of the run. G4UserRunAction is the optional user hook. 50

Event in Geant4 An event is the basic unit of simulation in Geant4 At beginning of processing, primary tracks are generated These primary tracks are pushed into a stack A track is popped up from the stack one by one and tracked Resulting secondary tracks are pushed into the stack This tracking lasts as long as the stack has a track When the stack becomes empty, processing of one event is over G4Event class represents an event. It has following objects at the end of its (successful) processing. List of primary vertices and particles (as input) Hits and Trajectory collections (as output) G4EventManager class manages processing an event. G4UserEventAction is the optional user hook. 51

Track in Geant4 Track is a snapshot of a particle it has physical quantities of current instance only. as the particle moves, the quantities in the snapshot change at any particular instance, a track has position, physical quantities it is not a collection of steps Track object is deleted when it goes out of the world volume, it disappears (by e.g. decay, inelastic scattering), it goes down to zero kinetic energy and no AtRest additional process is required, or the user decides to kill it artificially. No track object persists at the end of event. For the record of tracks, use trajectory class objects. G4TrackingManager manages processing a track, a track is represented by G4Track class. G4UserTrackingAction is the optional user hook. 52

Step in Geant4 Step has two points and also delta information of a particle (energy loss on the step, time-of-flight spent by the step, etc.). Each point knows the volume (and material). In case a step is limited by a volume boundary, the end point physically stands on the boundary, and it logically belongs to the next volume. Because one step knows materials of two volumes, boundary processes such as transition radiation or refraction could be simulated. G4SteppingManager class manages processing a step, a step is represented by G4Step class. G4UserSteppingAction is the optional user hook. Boundary Step Pre-step point Post-step point 53

Particle in Geant4 A particle in Geant4 is represented G4Track by three levels of classes Position, geometrical information, etc. This is a class representing a particle to be tracked. G4DynamicParticle Dynamic physical properties of a particle, such as momentum, energy, spin, etc. Each G4Track object has its own and unique G4DynamicParticle object. This is a class representing an individual particle. G4ParticleDefinition Static properties of a particle, such as charge, mass, life time, decay channels, etc. G4ProcessManager which describes processes involving to the particle All G4DynamicParticle objects of same kind of particle share the same G4ParticleDefinition. List of particle properties such as Catagories 54

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. Celenkov process) PostStep (discrete process, e.g. decay on the fly) 55

Track Status At the end of each step, according to the processes involved, the state of a track may be changed. The user can also change the status in UserSteppingAction. Statuses shown in green are artificial, i.e. Geant4 kernel won t set them, but the user can set. falive Continue the tracking. fstopbutalive The track has come to zero kinetic energy, but still AtRest process to occur. fstopandkill The track has lost its identity because it has decayed, interacted or gone beyond the world boundary. Secondaries will be pushed to the stack. fkilltrackandsecondaries Kill the current track and also associated secondaries. fsuspend Suspend processing of the current track and push it and its secondaries to the stack. fpostponetonextevent Postpone processing of the current track to the next event. Secondaries are still being processed within the current event. 56

Step Status Step status is attached to G4StepPoint to indicate why that particular step was determined. Use PostStepPoint to get the status of this step. PreStepPoint has the status of the previous step. Step fworldboundary PostStepPoint PreStepPoint Step reached the world boundary fgeomboundary Step is limited by a volume boundary except the world fatrestdoitproc, falongstepdoitproc, fpoststepdoitproc Step is limited by a AtRest, AlongStep or PostStep process fuserdefinedlimit Step is limited by the user Step limit fexclusivelyforcedproc Step is limited by an exclusively forced (e.g. shower parameterization) process fundefined Step not defined yet If you want to identify the first step in a volume, pick fgeomboudary status in PreStepPoint. If you want to identify a step getting out of a volume, pick fgeomboundary status in PostStepPoint 57

Extract Information There are two ways: Use user hooks (G4UserTrackingAction, G4UserSteppingAction, etc.) You have an access to almost all information Straight-forward, but do-it-yourself Use Geant4 scoring functionality Assign G4VSensitiveDetector to a volume Hits collection is automatically stored in G4Event object, and automatically accumulated if user-defined Run object is used. Use user hooks (G4UserEventAction, G4UserRunAction) to get event / run summary G4cout and G4cerr are ostream objects defined by Geant4. G4endl is also provided. G4cout << Hello Geant4! << G4endl; for Units: Each hard-coded number must be multiplied by its proper unit radius = 10.0 * cm; kinetice = 1.0 * GeV; To get a number, it must be divided by a proper unit G4cout << edep / MeV << [MeV] << G4endl; 58

What You Have To... Geant4 is a toolkit. You have to build an application. To make an application, you have to: Define your geometrical setup Material, volume Define physics to get involved Particles, physics processes/models Production thresholds Define how an event starts Primary track generation Extract information useful to you You may also want to Visualize geometry, trajectories and physics output Utilize (Graphical) User Interface Define your own UI commands etc. 59

User Classes main() Geant4 does not provide main(). Initialization classes Use G4RunManager::SetUserInitialization() to define. Invoked at the initialization G4VUserDetectorConstruction G4VUserPhysicsList Action classes Use G4RunManager::SetUserAction() to define. Invoked during an event loop G4VUserPrimaryGeneratorAction G4UserRunAction G4UserEventAction G4UserStackingAction Note: classes written in green are mandotory G4UserTrackingAction G4UserSteppingAction In your main() set mandatory classes to RunManager VisManager, G(UI) session, optional user action classes, persistency manager 60

Describe Detector Derive your own concrete class from G4VUserDetectorConstruction abstract base class. In the virtual method Construct(), Instantiate all necessary materials Instantiate volumes of your detector geometry Instantiate your sensitive detector classes and set them to the corresponding logical volumes Optionally you can define Regions for any part of your detector Visualization attributes (color, visibility, etc.) of your detector elements 61

Geometry Three conceptual layers Basic strategy; G4VSolid shape, size 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); G4LogicalVolume daughter physical volumes, material, sensitivity, user limits, etc. G4VPhysicalVolume position, rotation G4VSolid G4Box G4Tubs G4LogicalVolume G4Material G4VPhysicalVolume G4VisAttributes G4PVPlacement G4VSensitiveDetector G4PVParameterised 62

Geometry (Solid Volumes) CSG (Constructed Solid Geometries) G4Tubs(const G4String &pname, // name G4double prmin, // inner radius G4double prmax, // outer radius G4double pdz, G4Box(const G4String &pname, // name G4double half_x, // X half size G4double half_y, // Y half size G4double half_z); // Z half size G4Cons G4Trd // Z half length G4double psphi, // starting Phi G4double pdphi); angle G4Trap // segment G4Para (parallelepiped) G4Sphere 63

Geometry (Solid Volumes) Solids can be combined using boolean operations: G4UnionSolid, G4SubtractionSolid, G4IntersectionSolid Requires:2 solids, 1 boolean operation, and an (optional) transformation for the 2nd solid 2nd solid is positioned relative to the coordinate system of the 1st solid Result of boolean operation becomes a solid. Thus the third solid can be combined to the resulting solid of first operation. Solids to be combined can be either CSG or other Boolean solids. Note: tracking cost for the navigation in a complex Boolean solid is proportional to the number of constituent CSG solids G4UnionSolid G4SubtractionSolid G4IntersectionSolid 64

Geometry (Logical Volume) G4LogicalVolume(G4VSolid *psolid, G4Material *pmaterial, const G4String &name, G4FieldManager *pfieldmgr=0, G4VSensitiveDetector *psdetector=0, G4UserLimits *pulimits=0); Contains all information of volume except position and rotation Shape and dimension (G4VSolid) Material, sensitivity, visualization attributes Position of daughter volumes Magnetic field, User limits, 65

Geometry (Physical Volumes) Placement volume : it is one positioned volume One physical volume object represents one real volume. Repeated volume : a volume placed many time One physical volume object represents any number of real volumes reduces use of memory placement Parameterised repetition with copy number Replica and Division simple repetition along one axis A mother volume can contain either many placement volumes or, one repeated volume repeated 66

<?xml version="1.0" encoding="utf-8"?> <gdml xsi:nonamespaceschemalocation="gdmlschema/gdml.xsd"> <define>... <position name="trkrinworldpos" unit="mm" x="0" y="0" z="100"/> </define> Geometry Desciption Markup Language <materials>... <element name="nitrogen" formula="n" Z="7."> Build-in Geant4 <atom value="14.01"/> </element> export G4LIB_BUILD_GDML=1 <material formula=" " name="air" > <D value="1.290" unit="mg/cm3"/> <fraction n="0.7" ref="nitrogen" /> $G4INSTALL/source/persistency/gdml/schema/ <fraction n="0.3" ref="oxygen" /> gdml_core.xsd </material> </materials> gdml_define.xsd <solids> gdml_extensions.xsd... <box lunit="mm" name="tracker" x="50" y="50" z="50"/> gdml_materials.xsd </solids> gdml_parameterised.xsd <structure>... gdml_replicas.xsd <volume name="world" > gdml_solids.xsd <materialref ref="air" /> <solidref ref="world" /> gdml.xsd <physvol> <volumeref ref="tracker" /> <positionref ref="trkrinworldpos"/> 5 blocks <rotationref ref="trkinworldrot"/> Define </physvol> </volume> Material </structure> Solids <setup name="default" version="1.0" > <world ref="world" /> Structure </setup> Setup </gdml> Geometry (GDML) 67

Geometry (ROOT) ATLAS 68

Physics Geant4 does not have any default particles or processes. Even for the particle transportation, you have to define it explicitly. Derive your own concrete class from G4VUserPhysicsList abstract base class. Define all necessary particles Define all necessary processes and assign them to proper particles Define cut-off ranges applied to the world (and each region) Geant4 provides lots of utility classes/methods and examples. Process may consist of several models, cross-sections etc. with different energy ranges Gamma Compton scattering Pair production particle process 1 process 2 model 1 model 2 cross section set 1 cross section set 2 cross section set 3 69

Physics (Provided) EM physics Standard valid from up to ~ PeV Low-energy valid from 250 ev to ~ PeV (Livermore & Penelope) Optical photons DNA level models valid from 7 ev to ~ 100 MeV Weak physics decay of subatomic particles radioactive decay of nuclei Hadronic physics pure hadronic processes valid from 0 to ~100 TeV Muon and gamma nuclear valid from 10 MeV to ~TeV DNA level models Parameterized or fast simulation physics 70

Physics User physics lists: What you need to begin G4VUserPhysicsList for relatively simple physics lists Modular physics lists: A more sophisticated way to go G4VModularPhysicsList for detailed physics lists Reference physics lists ($G4INSTALL/source/physics/lists) Methods to implement class MyPhysicsList: public G4VUserPhysicsList { public: MyPhysicsList(); ~MyPhysicsList(); void ConstructParticle(); // choose the particles you need in your simulation void ConstructProcess(); // assign relevant physics processes for each particle void SetCuts(); // set the range cuts for secondary production }; And register physics list to Geant4 with this line in main program runmanager->setuserinitialization(new MyPhysicsList); 71

Production Cuts This threshold is a distance, not and energy The primary particles lose energy producing secondaries (electrons, gammas) This cut-off represents the range of secondaries. It does not mean that the track is killed at the corresponding energy A track is by default tracked down to zero kinetic energy Instead of saying "secondary production threshold distance" more convenient to simply say "cuts" Geant4 has a default value of 1mm But users need to set their cut value depending on their precision needs and CPU performances The cut value is set with the SetCuts() method in the PhysicsList class file It makes poor sense to use the energy cut-off Range of 10 kev gamma in Si ~ a few cm Range of 10 kev electron in Si ~ a few micron 72

Generate Primary Derive your concrete class from G4VUserPrimaryGeneratorAction abstract base class Pass a G4Event object to one or more primary generator concrete class objects which generate primary vertices and primary particles Geant4 provides several generators in addition to the G4VPrimaryParticlegenerator base class G4ParticleGun G4HEPEvtInterface, G4HepMCInterface Interface to /hepevt/ common block or HepMC class G4GeneralParticleSource (GPS) Define radioactivity 73

Optional User Classes All user action classes, methods of which are invoked during Beam On, must be constructed in the user s main() and must be set to the RunManager. G4UserRunAction G4Run* GenerateRun() Instantiate user-customized run object void BeginOfRunAction(const G4Run*) Define histograms void EndOfRunAction(const G4Run*) Analyze the run Store histograms G4UserEventAction void BeginOfEventAction(const G4Event*) Event selection void EndOfEventAction(const G4Event*) Output event information Draw the step (for a track not to be stored as a trajectory) G4UserTrackingAction void PreUserTrackingAction(const G4Track*) Decide trajectory should be stored or not Create user-defined trajectory void PostUserTrackingAction(const G4Track*) Delete unnecessary trajectory G4UserSteppingAction void UserSteppingAction(const G4Step*) Kill / suspend / postpone the track Draw the step (for a track not to be stored as a trajectory) 74

Visualization Geant4 provides interfaces to various graphics drivers: DAWN (Fukui renderer) WIRED RayTracer (ray tracing by Geant4 tracking) OpenGL OpenInventor VRML HepRApp gmocren gmocren 75

Analysis Hard-coded ROOT $G4ANALYSIS_USE_ROOT AIDA $G4ANALYSIS_USE Example: SteppingAction.cc, EventAction.cc, SensitiveDetector.cc Geant4 Build-in Scorers (Primitive scorers) $G4INSTALL/source/digits_hits/scorer G4PSEnergyDeposit3D.cc G4PSTrackLength.cc G4PSNofCollision.cc G4PSEnergyDeposit.cc G4PSDoseDeposit3D.cc G4PSMinKinEAtGeneration.cc examples/extended/runandevent/re03 G4PSNofSecondary.cc G4PSDoseDeposit.cc /score/create/boxmesh boxmesh_1 /score/mesh/boxsize 100. 100. 50. cm /score/mesh/nbin 30 30 30 /score/quantity/energydeposit edep /score/close /score/drawprojection boxmesh_1 edep 76

Tools (Geometry) 77

Tools (MOMO) Integrated GUI desktop for Geant4 development 78

Application Examples (HEP) BaBar Generation of events at the interaction point in detail ATLAS (LHC) Use of Geant4 in the ATLAS Detector Simulation CMSSW and OSCAR (LHC) Use of Geant4 in the CMS experiment GAUSS (LHC) 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 79

Application Examples (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 80

Application Examples (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 81

Geant4 Collaboration PPARC Lebedev Collaborators also from non-member institutions, including Budker Inst. of Physics IHEP Protvino MEPHI Moscow Pittsburg University 82