Update beampipe in far forward region
rahmans1 opened this issue · comments
Is your feature request related to a problem? Please describe.
Want to implement a continuous beampipe section from the end of the main detector geometry into the far forward section. The parametrisations of the individual sections for example the section in the B0 is not clear to me. Where do the position and slope information comes from? Naively I assumed that the slope would be equivalent to the ionCrossingAngle. But that is not the case, it has a different slope For example:
<detector id="BeamPipeB0_ID" name="BeamPipeB0" type="hadronDownstreamBeamPipe" vis="BeamPipeVis">
<position x="-0.165*m" y="0*m" z="6.4*m" />
<rotation x="0*rad" y="0*rad" z="0*rad" />
</detector>
Describe the solution you'd like
I would like to define such sections parametrically so that it's apparent what slope is being used for that particular element. Helps avoid volume overlaps.
<constant name="BeamPipeB0_zpos" value="6.4*m"/>
<constant name="BeamPipeB0_slope" value="25.78*mrad"/>
<constant name="BeamPipeB0_xpos" value="BeamPipeB0_zpos*sin(BeamPipeB0_slope)"/>
<detector id="BeamPipeB0_ID" name="BeamPipeB0" type="hadronDownstreamBeamPipe" vis="BeamPipeVis">
<position x="BeamPipeB0_xpos" y="0*m" z="BeamPipeB0_zpos" />
<rotation x="0*rad" y="0*rad" z="0*rad" />
</detector>