Presentation is loading. Please wait.

Presentation is loading. Please wait.

1Malcolm Ellis - Software Meeting - 17th May 2006 MICE Model and MICERun  MiceModel: u Overall Model that is used throughout G4MICE to represent any stage.

Similar presentations


Presentation on theme: "1Malcolm Ellis - Software Meeting - 17th May 2006 MICE Model and MICERun  MiceModel: u Overall Model that is used throughout G4MICE to represent any stage."— Presentation transcript:

1 1Malcolm Ellis - Software Meeting - 17th May 2006 MICE Model and MICERun  MiceModel: u Overall Model that is used throughout G4MICE to represent any stage of the experiment in any level of detail. u Representations of the model are produced for specific purposes (e.g. Simulation: GEANT4, Reconstruction: RecPack, Visualisation: HepRep, X11, ???) u Scheme was proposed in SW meeting of April 2004, and resurrected in SW meeting at Osaka this year. u First version of code and sample files were committed as MiceModules_T20060517  This talk will describe the code and sample files that currently exist and list the steps needed to extend this for use within G4MICE.  Initially plan to only use it for “DetectorsOnly” type of work (e.g. KEK Test beam analysis).  Once validated as correct and stable, will move to full use including cooling channel and beam line.

2 2Malcolm Ellis - Software Meeting - 17th May 2006 Model vs Representation  We need a single “Model” of any given setup in MICE (or any MICE test beam).  For different applications (e.g. Simulation, Reconstruction, Visualisation) application specific “Representations” are derived from this one model.  This allows us to guarantee that (for e.g.) the geometry used in the Reconstruction is the same as that for the Simulation (if we want it to be).  Each representation extracts the information from the model that is needed for that particular task.

3 3Malcolm Ellis - Software Meeting - 17th May 2006 MICERun  Added to Interface  Analogous to MICEEvent, however is the place where classes that live for longer than an event will live: u MiceModule (the MICE modeling class) u Calibration classes u Decoding classes u Analysis classes? u etc...

4 4Malcolm Ellis - Software Meeting - 17th May 2006 MiceModule  Found in the Config package.  A MiceModule represents a sub-component of MICE at any level and may have a “Mother” module and/or one or more “Daughter” modules.  Each MiceModule has a name, a physical shape (a simple way of describing the rough volume occupied and orientation, etc), a position, an orientation and any number of “Properties” which can be of type bool, int, double or string.  The SciFi tracker can be represented at two extremes by either: u A single MiceModule which represents the solenoid’s position and orientation u Every individual fibre, represented as core plus two layers of cladding, in every plane, in every station, with carbon fibre support arms, etc, etc, etc..  More likely: something in between these two!

5 5Malcolm Ellis - Software Meeting - 17th May 2006 Properties  Properties are for component specific properties that the Modeling code does not need to understand, but which one or more representations will need to know.  Examples: u Simulation: s Radiation length s Composition s Density u Reconstruction: s Station number s Plane number u Visualisation: s Colour  Not all representations will need to know about all properties, and a property can always be added without breaking the existing functionality of any representation (e.g. add colour to an object has no effect on simulation)  Properties will also be used in the same way as existing data cards to define the detailed geometries of complicated objects, e.g. torispherical absorbers.

6 6Malcolm Ellis - Software Meeting - 17th May 2006 Files  For a given configuration of detectors and other hardware, there will exist a configuration file that lists the location of each module and its orientation and the name of a file describing that module.  Each module can then have zero or more sub modules described in it, again giving their location with respect to this module.  Each module can return its location and orientation with respect to any other module that it is inside of, up to and including the global coordinate system (i.e. “MICE hall”).  In this manner, alignment is achieved by (for example) placing a given station in a given tracker at a slightly different from nominal position and/or orientation.  This can also be used to make Simulation studies of the effects of misalignments, etc...

7 7Malcolm Ellis - Software Meeting - 17th May 2006 MICEFILES  Latest tag expects a new environment variable: u setenv MICEFILES ${MICESRC}/FILES/  This is used in the MiceModule code in order to know where in the tree to the right it should look for configuration and module information.  A single MiceModule instance is made in the MICERun from a configuration: u MiceModule* module = new MiceModule( "KEKOctober2005/KekOctoberTrackerOnly.dat " );  It then reads that file and loads all the Modules that have been referred to into a tree of MiceModules hanging below this highest level instance.

8 8Malcolm Ellis - Software Meeting - 17th May 2006 Volume Types  Currently only two types supported, can be extended as required: u Cylinder – A Cylinder defined as having its circular faces perpendicular to the z axis with a given radius and length. u Box – A regular box defined as an extent along the X, Y and Z axes.  The volumes are defined by the physical extents.  The module then has a location of the centre of this volume and the orientation allows it to be rotated arbitrarily from the definition above.  These volumes are NOT meant to provide an Engineering drawing level of accuracy!  Rather, they indicate the approximate volume occupied by the module and aid in simple representations.  More complicated representations will make use of module specific properties.

9 9Malcolm Ellis - Software Meeting - 17th May 2006 Sample Configuration  A first (incorrect and incomplete!) version of a configuration has been committed to represent the KEK test beam configuration.  An application “MiceModules” has been added to enable testing and development of this code.  The main configuration file looks like: // FILES/Models/Configurations/KEKOctober2005/KekOctoberTrackerOnly.dat // // A model of the KEK test beam setup in which only the 4 station tracker // prototype is described // // M.Ellis 16th May 2006 Configuration KekOctoberTrackerOnly { Module Tracker/KekFourStationTracker.dat { Position 0.0 0.0 0.0 mm Rotation 0.0 0.0 0.0 degrees }

10 10Malcolm Ellis - Software Meeting - 17th May 2006 Module Definitions // FILES/Models/Modules/Tracker/KekFourStationTracker.dat // // Definition of the tracker module for the four station prototype // tested in the KEK pi2 beam line in October 2006 // // M.Ellis 16th May 2006 Module KekFourStationTracker { Volume Cylinder Dimensions 50.0 150.0 cm PropertyDouble MagneticField 0.0 PropertyDouble RedColour 1.0 PropertyDouble GreenColour 1.0 PropertyDouble BlueColour 1.0 Module Tracker/KekStationB.dat { Position 0.0 0.0 475.0 mm Rotation 0.0 0.0 0.0 degrees } Module Tracker/KekStationA.dat { Position 0.0 0.0 -73.0 mm Rotation 0.0 0.0 0.0 degrees } Module Tracker/KekStationC.dat { Position 0.0 0.0 -325.0 mm Rotation 0.0 0.0 0.0 degrees } Module Tracker/KekStationD.dat { Position 0.0 0.0 -475.0 mm Rotation 0.0 0.0 0.0 degrees } // FILES/Models/Modules/Tracker/KekStationD.dat // // Definition of Station D as used in the four station tracker prorotype // in the KEK test beam of October 2006 // // M.Ellis 16th May 2006 Module KekStationD { Volume Cylinder Dimensions 30.0 0.5 cm PropertyInt Station 2 Module Tracker/KekViewX.dat { Position 0.0 0.0 -0.5 cm Rotation 0.0 0.0 0.0 degrees } Module Tracker/KekViewV.dat { Position 0.0 0.0 0.0 cm Rotation 0.0 0.0 120.0 degrees } Module Tracker/KekViewW.dat { Position 0.0 0.0 0.5 cm Rotation 0.0 0.0 -120.0 degrees }

11 11Malcolm Ellis - Software Meeting - 17th May 2006 Tree of Modules  MiceModule class has a simple printTree method which dumps the information that has been instantiated in a given module and all its daughters.  Example from the KEK configuration (a fraction of the full output): Configuration KekOctoberTrackerOnly Has 1 daughter: Module KekFourStationTracker is at position (0,0,0) Volume is a Cylinder with Radius 500 and Length 1500 Double property BlueColour has the value 1 Double property GreenColour has the value 1 Double property MagneticField has the value 0 Double property RedColour has the value 1 Has 4 daughters: Module KekStationB is at position (0,0,475) Volume is a Cylinder with Radius 300 and Length 5 Integer property Station has the value 2 Has 3 daughters: Module KekViewX is at position (0,0,-5) Volume is a Cylinder with Radius 300 and Length 1.5 Integer property View has the value 2 Double property BlueColour has the value 1 Double property Pitch has the value 0.422 Has 1 daughter: Module CentralFibre is at position (0,0,0) Volume is a Cylinder with Radius 0.175 and Length 300 Module KekViewV is at position (0,0,0) Volume is a Cylinder with Radius 300 and Length 1.5 Integer property View has the value 1 Double property Pitch has the value 0.422 Double property RedColour has the value 1 Has 1 daughter: Module CentralFibre is at position (0,0,0) Volume is a Cylinder with Radius 0.175 and Length 300 Module KekViewW is at position (0,0,5) Volume is a Cylinder with Radius 300 and Length 1.5 Integer property View has the value 3 Double property GreenColour has the value 1 Double property Pitch has the value 0.422 Has 1 daughter: Module CentralFibre is at position (0,0,0) Volume is a Cylinder with Radius 0.175 and Length 300

12 12Malcolm Ellis - Software Meeting - 17th May 2006 Next Steps  Need someone (Lara?) to test and fix where necessary the MiceModule code.  Extend visualisation representation of MiceModule (see Visualisation talk) for use in checking models.  Tracker group (Aron, Atsushi, Hideyuki, Makoto and Malcolm) work on complete and correct description of the KEK tracker test setup (tracker, solenoid, TOF, defining counters, etc)  Migration to use of MiceModule as already described in the Reconstruction plan talk.


Download ppt "1Malcolm Ellis - Software Meeting - 17th May 2006 MICE Model and MICERun  MiceModel: u Overall Model that is used throughout G4MICE to represent any stage."

Similar presentations


Ads by Google