38
Software Report Software Report 15 15 th th MICE Collaboration MICE Collaboration Meeting Meeting Fermilab, 11 Fermilab, 11 th th June 2006 June 2006 Malcolm Ellis Malcolm Ellis

Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

Software ReportSoftware Report

1515thth MICE Collaboration Meeting MICE Collaboration Meeting

Fermilab, 11Fermilab, 11thth June 2006 June 2006

Malcolm EllisMalcolm Ellis

Page 2: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 2

OutlineOutline

• “MiceModule”– Description– Status– Examples– Further work needed

• Reconstruction status and plans

• Software workshops

• Future work

Page 3: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 3

MiceModule MotivationMiceModule Motivation• Refer to Domains diagram (next slide):

– Several different domains that have specific tasks/responsibilities (e.g. Reconstruction, Simulation, Visualisation, Analysis).

– Each of these tasks requires accurate knowledge of some subset of the information that specifies a given configuration (e.g. MICE stage 6)

• We need to be able to know that for any different application that should have the same configuration, that it does have it.

• We also need the ability to deliberately make differences in order to study systematics (e.g. wrong field in reconstruction, misaligned components, magnetic axis != magnet bore axis, etc...)

• Solution:– One model per configuration– Many representations of this model, one for each specific use

Page 4: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

G4MICE ArchitectureG4MICE Architecture

Page 5: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 5

Model vs. RepresentationModel vs. Representation

• A Model describes everything about a stage of MICE that is needed to perform any software task, however not necessarily in a format that is usable by the code.

• A model does not depend on any task specific external (or internal) library (e.g. G4, RecPack, X11).

• For each specific task that requires the use of the model, a representation is built for that task that combines the knowledge of the configuration in the Model with the application specific code for that task.

Page 6: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 6

MiceModule 1/2MiceModule 1/2

• Single class in Config package provides the modeling of any MICE stage.

• Each instance has a volumeType (currently Box, Cylinder, Tube) with certain dimensions, a position with respect to the module that it is placed inside of and an orientation with respect to the axis of the object that it is placed inside.

• Each instance can report its position and rotation with respect to its mother and any of its mother’s mothers up to and including the global coordinate system (i.e. the MICE Hall).

Page 7: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 7

MiceModule 2/2MiceModule 2/2

• In addition to the basic geometrical information, a MiceModule can hold an arbitrary number of properties of type:– bool, int, double, string or Hep3Vector

• These properties are used to define any aspect of the module that is needed for one or more representations.

• If required, further types can be added in the future.

Page 8: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 8

Example PropertiesExample Properties

• PropertyBool– Invisible 1 don’t visualise this module

• PropertyInt– Station 4 the station number

• PropertyDouble– Pitch 0.420 mm the fibre pitch– RedColour 0.5 how much red to use

• PropertyString– Material POLYSTYRENE what material to

simulate– SensitiveDetector TOF make hits in this module

• PropertyHep3Vector– MagneticField 0.0 0.0 1.0 tesla fixed field

Page 9: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 9

UnitsUnits• In CLHEP/Units/SystemOfUnits.h a self-consistent set of constants is defined that

allows users to maintain the correct values with a variety of units in use.• This is used in GEANT4, and in G4MICE (mostly, needs to be explicitly used all the

time!)• E.g.

– mm = 1.0– cm = 10.0 * mm– meter = 1000.0 * mm– micrometer = 1e-3 * mm– parsec = 3.0856775087e16 * meter– fermi = 1e-15 * meter– ...

• The two text input formats (datacards and MiceModules definition files) will now use any CLHEP unit so long as that unit is spelt the same as in the CLHEP definition (WARNING! US vs. UK English)

• E.g.– AverageMomentum 325 MeV– PropertyDouble X0 30391.82 cm

• If the unit name is not known, then an error message is generated and the “natural unit” for that type will be used (WARNING! the natural unit for length is mm, but for magnetic field is 10000 tesla)

Page 10: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 10

Complete list of UnitsComplete list of Units millimeter = 1.; millimeter2 = millimeter*millimeter; millimeter3 = millimeter*millimeter*millimeter; centimeter = 10.*millimeter; centimeter2 = centimeter*centimeter; centimeter3 = centimeter*centimeter*centimeter; meter = 1000.*millimeter; meter2 = meter*meter; meter3 = meter*meter*meter; kilometer = 1000.*meter; kilometer2 = kilometer*kilometer; kilometer3 = kilometer*kilometer*kilometer; parsec = 3.0856775807e+16*meter; micrometer = 1.e-6 *meter; nanometer = 1.e-9 *meter; angstrom = 1.e-10*meter; fermi = 1.e-15*meter; barn = 1.e-28*meter2; millibarn = 1.e-3 *barn; microbarn = 1.e-6 *barn; nanobarn = 1.e-9 *barn; picobarn = 1.e-12*barn; nm = nanometer; um = micrometer; mm = millimeter; mm2 = millimeter2; mm3 = millimeter3; cm = centimeter; cm2 = centimeter2; cm3 = centimeter3; m = meter; m2 = meter2; m3 = meter3; km = kilometer; km2 = kilometer2; km3 = kilometer3; pc = parsec; radian = 1.; milliradian = 1.e-3*radian; degree = (3.14159265358979323846/180.0)*radian; steradian = 1.; rad = radian; mrad = milliradian; sr = steradian;

deg = degree; nanosecond = 1.; second = 1.e+9 *nanosecond; millisecond = 1.e-3 *second; microsecond = 1.e-6 *second; picosecond = 1.e-12*second; hertz = 1./second; kilohertz = 1.e+3*hertz; megahertz = 1.e+6*hertz; ns = nanosecond; s = second; ms = millisecond; eplus = 1. ; // positron charge e_SI = 1.60217733e-19; // positron charge in coulomb coulomb = eplus/e_SI; // coulomb = 6.24150 e+18 * eplus megaelectronvolt = 1. ; electronvolt = 1.e-6*megaelectronvolt; kiloelectronvolt = 1.e-3*megaelectronvolt; gigaelectronvolt = 1.e+3*megaelectronvolt; teraelectronvolt = 1.e+6*megaelectronvolt; petaelectronvolt = 1.e+9*megaelectronvolt; joule = electronvolt/e_SI; // joule = 6.24150 e+12 * MeV MeV = megaelectronvolt; eV = electronvolt; keV = kiloelectronvolt; GeV = gigaelectronvolt; TeV = teraelectronvolt; PeV = petaelectronvolt; kilogram = joule*second*second/(meter*meter); gram = 1.e-3*kilogram; milligram = 1.e-3*gram; kg = kilogram; g = gram; mg = milligram; watt = joule/second; // watt = 6.24150 e+3 * MeV/ns newton = joule/meter; // newton = 6.24150 e+9 * MeV/mm hep_pascal = newton/m2; // pascal = 6.24150 e+3 *

MeV/mm3 bar = 100000*pascal; // bar = 6.24150 e+8 * MeV/mm3 atmosphere = 101325*pascal; // atm = 6.32420 e+8 * MeV/mm3 ampere = coulomb/second; // ampere = 6.24150 e+9 * eplus/ns milliampere = 1.e-3*ampere; microampere = 1.e-6*ampere;

nanoampere = 1.e-9*ampere; megavolt = megaelectronvolt/eplus; kilovolt = 1.e-3*megavolt; volt = 1.e-6*megavolt; ohm = volt/ampere; // ohm = 1.60217e-16*(MeV/eplus)/(eplus/ns) farad = coulomb/volt; // farad = 6.24150e+24 * eplus/Megavolt millifarad = 1.e-3*farad; microfarad = 1.e-6*farad; nanofarad = 1.e-9*farad; picofarad = 1.e-12*farad; weber = volt*second; // weber = 1000*megavolt*ns tesla = volt*second/meter2; // tesla =0.001*megavolt*ns/mm2 gauss = 1.e-4*tesla; kilogauss = 1.e-1*tesla; henry = weber/ampere; // henry = 1.60217e-7*MeV*(ns/eplus)**2 kelvin = 1.; mole = 1.; becquerel = 1./second ; curie = 3.7e+10 * becquerel; gray = joule/kilogram ; candela = 1.; lumen = candela*steradian; lux = lumen/meter2; perCent = 0.01 ; perThousand = 0.001; perMillion = 0.000001;

Page 11: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 11

MaterialsMaterials

• We used to let each bit of code define its own G4Material.

• This resulted in more work for developers making components (had to do all the physical and logical volume work by hand from scratch) and resulted in many copies of the same material (e.g. scintillator in TOF0, TOF1, TOF2, SciFi, EmCal)

• Now we use G4.7.1.p01 we have access to the list of NIST materials.

• Interface to this in G4MICE is the class MiceMaterials

Page 12: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 12

MiceMaterialsMiceMaterials

• Class in Interface contains a list of G4Materials by their name.

• Function takes a string and returns the G4Material.

• If the name is not found, an error message is printed out and vacuum is returned.

• Contains the complete set of National Institute of Standards and Technology materials that come with G4.

• Also contains specific materials that we need to define in MICE (e.g. Aerogel).

Page 13: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

Current list of MaterialsCurrent list of Materials "H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V", "Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru", "Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb", "Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn", "Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf", "A-150_TISSUE","ACETONE","ACETYLENE","ADENINE","ADIPOSE_TISSUE_ICRP","AIR","ALANINE","ALUMINUM_OXIDE", "AMBER","AMMONIA","ANILINE","ANTHRACENE","B-100_BONE","BAKELITE","BARIUM_FLUORIDE","BARIUM_SULFATE", "BENZENE","BERYLLIUM_OXIDE","BGO","BLOOD_ICRP","BONE_COMPACT_ICRU","BONE_CORTICAL_ICRP","BORON_CARBIDE", "BORON_OXIDE","BRAIN_ICRP","BUTANE","N-BUTYL_ALCOHOL","C-552","CADMIUM_TELLURIDE","CADMIUM_TUNGSTATE",

"CALCIUM_CARBONATE","CALCIUM_FLUORIDE","CALCIUM_OXIDE","CALCIUM_SULFATE","CALCIUM_TUNGSTATE","CARBON_DIOXIDE",

"CARBON_TETRACHLORIDE","CELLULOSE_CELLOPHANE","CELLULOSE_BUTYRATE","CELLULOSE_NITRATE","CERIC_SULFATE", "CESIUM_FLUORIDE","CESIUM_IODIDE","CHLOROBENZENE","CHLOROFORM","CONCRETE","CYCLOHEXANE","12-

DICHLOROBENZENE", "DICHLORODIETHYL_ETHER","12-DICHLOROETHANE","DIETHYL_ETHER","NN-DIMETHYL_FORMAMIDE","DIMETHYL_SULFOXIDE", "ETHANE","ETHYL_ALCOHOL","ETHYL_CELLULOSE","ETHYLENE","EYE_LENS_ICRP","FERRIC_OXIDE","FERROBORIDE", "FERROUS_OXIDE","FERROUS_SULFATE","FREON-12","FREON-12B2","FREON-13","FREON-13B1","FREON-13I1", "GADOLINIUM_OXYSULFIDE","GALLIUM_ARSENIDE","GEL_PHOTO_EMULSION","Pyrex_Glass","GLASS_LEAD","GLASS_PLATE", "GLUCOSE","GLUTAMINE","GLYCEROL","GUANINE","GYPSUM","N-HEPTANE","N-HEXANE","KAPTON","LANTHANUM_OXYBROMIDE", "LANTHANUM_OXYSULFIDE","LEAD_OXIDE","LITHIUM_AMIDE","LITHIUM_CARBONATE","LITHIUM_FLUORIDE","LITHIUM_HYDRIDE", "LITHIUM_IODIDE","LITHIUM_OXIDE","LITHIUM_TETRABORATE","LUNG_ICRP","M3_WAX","MAGNESIUM_CARBONATE", "MAGNESIUM_FLUORIDE","MAGNESIUM_OXIDE","MAGNESIUM_TETRABORATE","MERCURIC_IODIDE","METHANE","METHANOL", "MIX_D_WAX","MS20_TISSUE","MUSCLE_SKELETAL_ICRP","MUSCLE_STRIATED_ICRU","MUSCLE_WITH_SUCROSE", "MUSCLE_WITHOUT_SUCROSE","NAPHTHALENE","NITROBENZENE","NITROUS_OXIDE","NYLON-8062","NYLON-6/6", "NYLON-6/10","NYLON-11_RILSAN","OCTANE","PARAFFIN","N-PENTANE","PHOTO_EMULSION","PLASTIC_SC_VINYLTOLUENE", "PLUTONIUM_DIOXIDE","POLYACRYLONITRILE","POLYCARBONATE","POLYCHLOROSTYRENE","POLYETHYLENE","MYLAR", "PLEXIGLASS","POLYOXYMETHYLENE","POLYPROPYLENE","POLYSTYRENE","TEFLON","POLYTRIFLUOROCHLOROETHYLENE", "POLYVINYL_ACETATE","POLYVINYL_ALCOHOL","POLYVINYL_BUTYRAL","POLYVINYL_CHLORIDE","POLYVINYLIDENE_CHLORIDE", "POLYVINYLIDENE_FLUORIDE","POLYVINYL_PYRROLIDONE","POTASSIUM_IODIDE","POTASSIUM_OXIDE","PROPANE","lPROPANE", "N-PROPYL_ALCOHOL","PYRIDINE","RUBBER_BUTYL","RUBBER_NATURAL","RUBBER_NEOPRENE","SILICON_DIOXIDE", "SILVER_BROMIDE","SILVER_CHLORIDE","SILVER_HALIDES","SILVER_IODIDE","SKIN_ICRP","SODIUM_CARBONATE", "SODIUM_IODIDE","SODIUM_MONOXIDE","SODIUM_NITRATE","STILBENE","SUCROSE","TERPHENYL","TESTES_ICRP", "TETRACHLOROETHYLENE","THALLIUM_CHLORIDE","TISSUE_SOFT_ICRP","TISSUE_SOFT_ICRU-4","TISSUE-METHANE", "TISSUE-

PROPANE","TITANIUM_DIOXIDE","TOLUENE","TRICHLOROETHYLENE","TRIETHYL_PHOSPHATE","TUNGSTEN_HEXAFLUORIDE",

"URANIUM_DICARBIDE","URANIUM_MONOCARBIDE","URANIUM_OXIDE","UREA","VALINE","VITON","WATER","WATER_VAPOR", "XYLENE","lH2","lAr","lKr","lXe","PbWO4","Galactic“, "AeroGel0_2”

Page 14: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 14

RepresentationsRepresentations

• Code to create representations has been written for three areas:– Simulation: builds all the GEANT4 classes

automatically, including making the SciFi and TOF detectors sensitive.

– Reconstruction: build the complete description required in RecPack automatically, and is used by the Reconstructed classes to determine the position of hits, points, etc.

– Visualisation: buid a HepRep XML file to visualise the model with a program such as WIRED.

Page 15: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 15

Simulation RepresentationSimulation Representation

• Each Box, Cylinder and Tube is automatically turned into the correct G4 objects.

• The material properties as well as visualisation attributes and fixed magnetic field information is passed to G4.

• Special purpose volumes are also allowed, at the moment the SciFi fibres are built in this manner.

• Two sensitive detectors are currently implemented (TOF and SciFi), EmCal will be added next.

Page 16: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 16

Simulation exampleSimulation example// FILES/Models/Modules/Tracker/D1.dat//// Definition of Defining Counter 1 as used in the KEK test beam of October 2005//// A.Fish 23rd May 2006

Module D1{ Volume Cylinder Dimensions 15.0 1.0 cm PropertyString SensitiveDetector TOF PropertyString Material POLYSTYRENE PropertyInt Station 5 PropertyInt Plane 1 PropertyInt Slab 1 PropertyDouble RedColour 1.0 PropertyDouble GreenColour 0.5}

Page 17: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 17

ReconstructionReconstruction

• Classes in reconstruction can find out the global (or local!) coordinates of an object by asking the relevant MiceModule class for its position and orientation.

• The Kalman fitting package requires a detailed description of the positions, sizes and material properties of each object as well as the logic for navigating through these.

• This description is now generated automatically from the MiceModules.

• Positions, sizes and magnetic fields are taken from the standard properties shown already.

• An additional property X0 is used to define the radiation lenth for the purposes of calculating the MCS covariance matrix.

Page 18: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 18

Reconstruction - exampleReconstruction - example************** SETUP: MICE ************************** # volume definitions: 0

# volumes: 54KekOctoberKekACC Box3D default 8.5 10 10 0 0 39.05 StraightLine 0 z pos -1 KekOctoberKekDownstream Box3D default 360 150 150 0 0 907.23 StraightLine 0 z pos -1 KekOctoberKekDownstreamD2 Tube default 1 15 0 0 0 176.1 StraightLine 0 z pos 413.1 KekOctoberKekDownstreamKekSolenoid Tube default 203.5 59 0 0 0 23.305 Helix 0 z pos -1 0 0 1KekOctoberKekDownstreamKekSolenoidD1 Tube default 1 15 0 0 0 -97.525 Helix 0 z pos 413.1 0 0 1KekOctoberKekDownstreamKekSolenoidKekFourStationTracker Tube default 100 19 0 0 0 -35.085 Helix 0 z pos -1

0 0 1KekOctoberKekDownstreamKekSolenoidKekFourStationTrackerKekStationA Tube default 0.13046 19 0 0.679 0.172 -7.3 Helix

0 z pos 413.1 0 0 1KekOctoberKekDownstreamKekSolenoidKekFourStationTrackerKekStationAKekMylar Tube default 0.0025 19 0 0 0

0.00125 Helix 0 z pos 413.1 0 0 1KekOctoberKekDownstreamKekSolenoidKekFourStationTrackerKekStationAKekViewV Tube default 0.06273 19 0 0 0 -

0.031365 Helix 0 z pos 413.1 0 0 1KekOctoberKekDownstreamKekSolenoidKekFourStationTrackerKekStationAKekViewX Tube default 0.06273 19 0 0 0

0.033865 Helix 0 z pos 413.1 0 0 1

...

************** LOGIC: MICE **************************KekOctoberKekACC 2 0 continue continueKekOctoberKekDownstream 4 0 continue continueKekOctoberKekPb_Diffuser 3 0 continue continueKekOctoberKekR1 1 0 continue continueKekOctoberKekT1 0 0 continue continue

Page 19: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 19

VisualisationVisualisation

• The Visualisation package no longer requires libsx/X11.

• Some simple code takes the MiceModules and turns them into a HepRep file which can be visualised.

• This is currently very basic, but will be extended to allow visualisation of the bare geometry, simulated events and real data.

• Also get other visualisation methods (VRML, OpenGL, etc) for “free” with GEANT4 with the Simulation application.

Page 20: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 20

WIRED view of MICE Stage 6WIRED view of MICE Stage 6

Page 21: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 21

ConfigurationsConfigurations

• A single text file is used to describe a configuration.

• A configuration will use one or more modules that are defined separately.

• Each module can contain 0 or more sub modules (and so on).

• The syntax of files that describe configurations and modules is the same.

Page 22: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

Stages of MICEStages of MICE// FILES/Models/Configurations/MICEStage/Stage1.dat//// 1st Draft Stage 1 Floor Plan//////

Configuration Stage1{ Dimensions 1500.0 1000.0 5000.0 cm PropertyString Material AIR Module BeamLine/SolMag.dat { Position 140.0 0.0 -2175.0 cm Rotation 0.0 30.0 0.0 degree } Module BeamLine/BendMag.dat { Position 0.0 0.0 -1935.0 cm Rotation 0.0 15.0 0.0 degree } Module BeamLine/QuadTrip.dat { Position 0.0 0.0 -1645.0 cm Rotation 0.0 0.0 0.0 degree } Module TOF/TOF0.dat { Position 0.0 0.0 -1455.0 cm Rotation 0.0 0.0 0.0 degree } Module Ckov/Cherenkov.dat { Position 0.0 0.0 -1405.0 cm Rotation 0.0 0.0 0.0 degree } Module BeamLine/QuadTrip.dat { Position 0.0 0.0 -965.0 cm Rotation 0.0 0.0 0.0 degree } Module TOF/TOF1.dat { Position 0.0 0.0 -655.0 cm Rotation 0.0 0.0 0.0 degree } Module EmCal/Calorimeter.dat { Position 0.0 0.0 -611.0 cm Rotation 0.0 0.0 0.0 degree }}

Configuration Stage6{ Dimensions 1500.0 1000.0 5000.0 cm PropertyString Material AIR Module BeamLine/SolMag.dat { Position 140.0 0.0 -2175.0 cm Rotation 0.0 30.0 0.0 degree }... Module RFCC/RFCav.dat { Position 0.0 0.0 137.5 cm Rotation 0.0 0.0 0.0 degree } Module AFC/HAbsorber.dat { Position 0.0 0.0 275.0 cm Rotation 0.0 0.0 0.0 degree } Module Tracker/TrackerSolenoid1.dat { Position 0.0 0.0 470.0 cm Rotation 0.0 0.0 0.0 degree } Module Shields/DownstreamShield1.dat { Position 0.0 0.0 620.1 cm Rotation 0.0 0.0 0.0 degree } Module TOF/TOF2.dat { Position 0.0 0.0 631.0 cm Rotation 0.0 0.0 0.0 degree } Module Shields/DownstreamShield2.dat { Position 0.0 0.0 638.1 cm Rotation 0.0 0.0 0.0 degree } Module EmCal/Calorimeter.dat { Position 0.0 0.0 681.0 cm Rotation 0.0 0.0 0.0 degree }}

• Stage1:• Beam line that is in the MICE hall• Upstream and downstream TOF• CKOV• Calorimeter

• Stages 2-6:•Progressively add trackers, absorbers,•RF cavities, etc

•Individual model definitions do not change, just whether they are used and where they are placed.

•Scheme does not care about MICE hall, so can model (for e.g.) KEK test setup.

Page 23: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 23

KEK Test BeamKEK Test Beam

Page 24: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 24

Page 25: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 25

Page 26: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 26

Page 27: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 27

Page 28: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 28

Page 29: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 29

Page 30: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 30

Page 31: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 31

Page 32: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 32

MiceModules Further WorkMiceModules Further Work

• Four main areas need work in the immediate future:– EmCal (and later CKOV) sensitive detector

needs to be implemented.– Improve model of RFCC and AFC modules (in

particular safety windows.– Realistic fields (from coil current and/or field

map files) need to be added (both magnets and RF).

– Documentation!!!

Page 33: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 33

Reconstruction StatusReconstruction Status

• SciFi and TOF reconstruction now uses full MiceModules features and has been used on real data.

• Once Digitisation of TOF is finalised (next slide) the reconstruction will be tested with simulated data and a release made.

• This release will be sufficient for stand-alone tracker and/or TOF work that does not require the cooling channel or realistic fields.

Page 34: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 34

Reconstruction PlansReconstruction Plans

• Finalise TOF Digitisation

• Test Reconstruction using simulated data.

• Release first version of Reconstruction under new scheme (aim for mid-end July).

• Ongoing upgrade of RecPack (use of field maps) will carry on with the reintegration of realistic fields in G4MICE.

Page 35: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 35

Software WorkshopsSoftware Workshops

• 9th Software Workshop was held at Fermilab immediately before this meeting.

• Well attended and very productive:– Aron Fish, Ben Freemire, Jean-Sebastien Graulich, Terry Hart,

Takashi Matsushita, Chris Rogers, Hideyuki Sakamoto, Rikard Sandstrom, Yagmur Torun, Michael Wojck, Makoto Yoshida

• Most of the MICE models that were shown in this talk (as well as other talks in the tracker session) were produced by a few students, specifically:– IIT: Ben Freemire and Mike Wojck– Geneva: Rikard Sandstrom– Imperial: Aron Fish

• In addition Lara Howlett was unable to come to Chicago but did a lot of work to test and debug the MiceModules code prior to the Software Workshop.

Page 36: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 36

SM9SM9

• Goals of the workshop were:– Software for the KEK test beam analysis:

• Unable to complete digitisation and hence simulation effort for this.

• Was able to complete reconstruction and analysis code and analysis 400k events (Aron Fish’s talk in tracker session).

– Continued development and use of MiceModules• Units were added (Chris Rogers) and many new modules

and configurations were created.

– Design work towards upgrade of field map utilities• Done (Chris Rogers)• Work is now in progress to implement the changes (Chris).

Page 37: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 37

Future WorkshopsFuture WorkshopsStart

Date

End

Date

Original

Location

Proposed Location

Associated Meeting

19th April 21st April RAL Scoping Study

14th June 16th June Fermilab MICE CM

19th July 21st July Imperial RAL

Early September

Early September

Riverside Fermilab After NuFact06?

4th October 6th October RAL RAL MICE CM

Cancelled

Fermilab √

Page 38: Software Report. MICE CM15 11th June 2006 - Malcolm Ellis2 Outline “MiceModule” –Description –Status –Examples –Further work needed Reconstruction status

MICE CM15 11th June 2006 - Malcolm Ellis 38

Future WorkFuture Work

• Field maps (in MiceModules to be used by Simulation, Reconstruction and Analysis)

• Upgrade of RecPack (improve tracker reconstruction)• Use new software to perform tracker optimisation

studies.• Add EmCal to MiceModules scheme like TOF and SciFi• Documentation (web)• Testing (new CVS area)• Internal review (with external consultation) planned for

the end of this year (probably around the October CM).• Always very happy to train new users/developers (two

summer students started from scratch and produced 6 MICE stages in under a week!)