Linear Collider Forum



Home » Simulation » slic » GeomConverter and "reflect=false" objects
GeomConverter and "reflect=false" objects [message #1902] Mon, 11 January 2010 15:23
rcowan
Messages: 13
Registered: July 2007
Location: SLAC
Hi,

I'm using GeomConverter to prepare a compact.xml file for a simple dark photon detector. I find that when I build some detector types (such as DiskTracker and CylindricalEndcapCalorimeter) with reflect="false" that the detectors that are
built with inner_z < 0 build their components in the +Z direction.

For instance, this code snippet builds the "ForwardCalorimeter" as expected--the slices start at inner_z=+50cm and progressively stack in the +z direction--but builds the "BackwardCalorimeter" starting at inner_z=-50cm and still stacks the layers and slices in the +Z direction (inverting the layer structure from what is desired, as well as shifting it by its total thickness).

       <detector id="1" name="ForwardCalorimeter" reflect="false" type="CylindricalEndcapCalorimeter" readout="HcalEndcapHits">
            <dimensions inner_r="20*cm" inner_z="50*cm" outer_r="60*cm" />
            <layer repeat="2">
                <slice material="Steel235" thickness="6.0*cm" />
                <slice material="Polystyrene" thickness="2.0*cm" sensitive="yes" />
            </layer>
        </detector>

        <detector id="2" name="BackwardCalorimeter" reflect="false" type="CylindricalEndcapCalorimeter" readout="HcalEndcapHits">
            <dimensions inner_r="30*cm" inner_z="-50*cm" outer_r="60*cm" />
            <layer repeat="2">
                <slice material="Steel235" thickness="6.0*cm" />
                <slice material="Polystyrene" thickness="2.0*cm" sensitive="yes" />
            </layer>
        </detector>


See the attached file for a plot showing the situation. Note that in the figure, the blue axis (+Z) points to the left, +Y axis in green points upward.

The detector case I am simulating is not symmetric with respect to reflection in the
x-y plane, so I cannot use "reflect=true".

I can work around this by shifting inner_z by the thickness of the whole calorimeter and also inverting the slice order within a layer, but this means (I think) that the layers will be numbered from outside toward the origin rather than the reverse when I get to the reconstruction stage.

Any suggestions on how to make these detector types build "outward" rather than "inward" when inner_z is < 0?

Thanks,
--Ray

  • Attachment: g4_20_x.png
    (Size: 10.93KB, Downloaded 1074 times)
 
Read Message
Previous Topic:Namespace for material names used in compact.xml detector descriptions
Next Topic:Using heprep files with wired in jas3 with variant geometries
Goto Forum:
  


Current Time: Thu Oct 18 21:43:25 Pacific Daylight Time 2018
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.1.
Copyright ©2001-2010 FUDforum Bulletin Board Software