Presentation on theme: "V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Beam Simulation Tools for GEANT4 (and Neutrino Source Applications) V. Daniel Elvira"— Presentation transcript:
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Beam Simulation Tools for GEANT4 (and Neutrino Source Applications) V. Daniel Elvira October 28th 2003
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 What is GEANT4? Description of the Beam Tools (BT-v1.50: V. Daniel Elvira, P. Lebrun, P. Spentzouris, CPD/CD Fermilab) Applications to Neutrino Source feasibility studies Outline
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 The GEANT4 Tool Kit The Geant4 software toolkit was designed by a worldwide collaboration (based at CERN) to simulate particle interactions with matter. Models geometry and materials of complex particle detectors. Simulates particles and propagates them through electromagnetic fields and detectors materials. Includes physics processes that govern elementary particle interactions across a wide energy range. Space Medicine HEP Detectors
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 The GEANT4 Tool Kit (cont.) Detectors are represented by “Solid” (shape), “Logical” (properties), and “Physical” (positioning) volumes. G4Box("box_name", double x, double y, double z); (cubic shape) G4Tubs("Tub_name", double rin, double rout, double halflength, startangle, endangle); (cylindric shape) G4LogicalVolume(G4Box* abox, G4Material Vacuum,"log_name"); G4PVPlacement(G4Rotation* rm, G4ThreeVector(x,y,z), G4LogicalVolume* alogbox,"phys_name", 0, false, 0); A global e.m. field object is created for the whole system. The equation of motion is integrated (several Runge-kutta methods are available). Physics processes: e.m., hadronic, decay, photoelecton-hadron, optical, parameterization and transportation (these include multiple scattering & straggling).
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 The Beam Tools (BT-v1.50) C++ classes designed to facilitate the simulation of typical accelerator elements within the framework of GEANT4: magnets, r.f. cavities, absorbers. Geant4 at Fermilab: geant4.5.0.p01 libraries BT-v1.50 libraries and MuCool example BT-v1.50 users guide BT-v1.50 reference manual
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 The Beam Tools (cont.) Magnetic elements: solenoid objects including field from current sheets, coils, shielding. Generic magnetic field maps. r.f. elements: Pill Box cavities including field, walls, iris, windows. Generic field maps. Absorber elements: containers with thin windows, wedges, lenses. Input parameter handler: data card class to allow parameter changes without recompiling. Visualization of simulated apparatus using Open Inventor Analysis package based on Root (CERN data analysis framework)
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Magnetic Fields: Solenoid 251 cm 74 cm Open Inventor BTSheet is the magnetic field generated by a thin solenoidal current sheet. It is computed analytically from its length, radius, and current. BTSolenoid is a field map in the form of a grid in r-z space. It corresponds to a coil of finite thickness made of concentric BTSheets. BTSolenoidLogicVol defines objects containing the material and physical size of the coil system which generates the BTSolenoid from the BTSheets. BTSolenoidPhysVol is the placed version of BTSolenoidLogicVol B z (z) & B r (z) are returned to GEANT4 from a linear interpolation in r of BTSpline1D fits of B z vs z at fixed r
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Bz on axis +2 Tesla -2 Tesla 100 Z (cm) 200 B r = -r/2 * B z / z, with z=5mm Z (cm) Br on axis mm B z = 0 when radial kicks present BTMagFieldMap is a class of magnetic field maps, provided as a grid by the user in an ASCII file. Options: “Interpolated” and “HardEdge”. The map is not associated with any solid. Magnetic Fields: generic maps BTMagFieldMapPlacement is the placed version of the field map BTMagFieldMap.
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 r.f. Fields: Pill Box cavities Pillbox cavity ss VpVp VpVp VsVs Beryllium windows Copper walls BTPillBox is a class of of Pill Box cavities fields. BTrfCavityLogicVol is the class for the associated solid (geometry, material). BTrfWindowLogicVol is the class for the geometry and material of the window covering the iris (for better performance). BTLinacPhysVol is the class for a placed linac, that is an array of identical cavities. anRFWindow->AddOuterFoil(…,…,…) for a radius dependent thickness.
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 r.f. Fields: generic maps BTrfMap is a class of r.f. field maps, provided as a grid by the user in an ASCII file. Unlike the BTMagFieldMap objects, BTrfMap are associated with a solid object. BTrfCavityLogicVol, BTrfWindowLogicVol, and BTLinacPhysVol are used in the same was as for a Pill Box linac.
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Absorbers BTCylindricVessel is a class of cylindric containers. The user can choose the vessel and windows material, as well as the material inside. BTrfParabolicLense is a class of parabolic absorbers with uniform density. BTrfCylindricLense is a class of cylindric absorbers with density decreasing quadratically with radius.
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 r.f. Tuning: The Reference Particle The Beam Tools offer the possibility to process a “reference particle”, before the beam, for r.f. tuning. The reference particle typically takes the mean values of the beam kinetic parameters. The relative phase of the cavities are adjusted to provide the selected synchronous phase when the reference particle passes through the cavity phase center. Example: system of 20 lattice cells formed a focusing solenoid, a 6 cells linac, an absorber vessel: Cavity: Vp= 16 MeV/m, L=32cm, s = 25.5 O Absorber: 30cm thick, filled with LH2 Beam =200 MeV I want the beam to gain ~50 MeV through the system E kin =200 MeV reference particle is processed to calculate and record the cavity relative phases to use during a normal run
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Visualization BT-v1.50 uses Open Inventor visualization package, which allows interactive manipulation with the mouse. Mouse left click here for rotations along vertical and horizontal axis Mouse left click here for zooming Mouse right click brings “examiners viewer” then “functions” menu: help home (default image) set home (set new default) view all (largest image which fits the screen) seek (sets new rotation center) or “draw style” menu: solid or wire-frame images Icons for quick access to examiners viewer options
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Analysis Package BT-v1.50 provides an analysis package based on the Root package designed at CERN: A Root file, i.e. MuCool.root, contains Ntuples and histograms with beam, and geometry/field diagnostic information The Root browser allows to see the hisotrograms, Ntuples available. The Root Tree Viewer allows to see, manipulate, plot the Ntuple contents.
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Run Modes Macro Mode: general settings, particle and beam parameters are read from a macro file through built-in and user defined commands. Visual Mode: opens an x-window with an image of the simulated apparatus. After closing the image, the user may start an interactive session by typing commands at the idle> prompt. Hard-wired Mode: all settings and parameters are hard-wired in the code. To be used in a production stage. % MuCool MuCool.in MACRO MuCool.mac % MuCool MuCool.in VISUAL % MuCool MuCool.in HARD BT-v1.50 has a native input parameter handler. Parameters are read from, a file, such as MuCool.in, in main or the G4 user’s classes NumberofSheets 2.0 InnerRadius BlockRadius 20.0 solnsheets = (G4int) MyDataCards.fetchValueDouble("NumberofSheets"); radInner = MyDataCards.fetchValueDouble("InnerRadius"); radBlock = MyDataCards.fetchValueDouble("BlockRadius");
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Applications to -Source: Ionization Cooling xx zz P1P1 P2P2 absorber accelerator absorber P3P3 Multiple scattering Heating term (Mult.Scatt.)Cooling term + P 2 < P 1 Muon cooling needed to reduce the beam size in phase space (factor of ~10 reduction in transverse emittance to x ~1 cm )
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Example 1: Long Solenoid Channel Cooling cell~2.5 m long All channel On axis 220 m long (87 cooling cells), two field flip regions (3T to –3T & -7T to 7T) P x vs x ( Final x ~ 2 mm ) Published in proceedings of Particle Accelerator Conference, Chicago, June 2001 (Fermilab-Conf T)
V. Daniel Elvira, FermilabG4Tutorial October 28th, MHz r.f. system (Pill Box cavities), V peak grows quadratically from 0 to 4.8 MeV synch. phase is 0 o m long system: Solenoid, 70 cm in radius, 2 cm thick, 85 cm long with 15 cm gaps, B z =1.25 T on axis Example 2: Bunching/Phase Rotation E kin (MeV) versus c.Time (m) Longitudinal phase space of the beam at the end of phase rotation MuCool notes #253 and #254, 12/10/01
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Example 3: Helical Channel Other simulations: Open Inventor z x y 72 m long solenoidal + dipole field with wedge absorbers and thin cavities ``Pseudo-Realistic GEANT4 Simulation of a 44/88 MHz Cooling Channel for the Neutrino Factory'', MuCool note #230, 12/10/01. Alternate Solenoid Channel (sFoFo), published in proceedings of PAC2001 Bent Solenoid Channel, presented at Emittance Exchange Workshop, BNL 2000 Low Frequency r.f. Cooling Channel, presented at International Cooling Experiment Workshop, CERN 2001 Cooling Experiment (MICE) Simulation (in progress) Published in proc. of PAC 2001 (Fermilab-Conf T)
V. Daniel Elvira, FermilabG4Tutorial October 28th, 2003 Summary The beam physics tools (BT-v1.50) were used in numerous accelerator studies which were published in proposals and conference proceedings. GEANT4 & BT-v1.50 are especially suited to machines where accelerators, shielding, and detectors must be studied jointly in a simulation (for example MICE: muon international cooling experiment, NLC, vLHC). The BT-v1.50 code and documentation is available at: