• Keine Ergebnisse gefunden

3. The DEPFET detector simulation: Algorithm and its implementation 17

3.2. The software framework: Tools and methods for data simulation and reconstruction

3.2.2. The geometry model for a beam telescope

The simulation of a test beam experiment requires a detailed description of the geometrical layout of silicon sensors. As already discussed in section 2.3.2, a beam telescope consists of an array of silicon sensors, and their readout electronics, positioned along a particle beam line. One of the challenges for writing a detector simulation and reconstruction for a beam telescope is to organize the geometry related data in an object oriented way. Digitization requires to relate the3D position of energy losses to the positions of pixels cells on the sensor for the simulation of charge collection. Hit reconstruction needs to know the position of pixel cells on the sensor plane to estimate the hit position of a particle from digits.

Both tasks need to be solved for different sensor layouts and arbitrary rotations of the silicon sensor with respect to the particle beam. The philosophy followed here is to perform all these computations in local coordinate systems attached to the silicon sensors. Local coordinate systems allow to decouple the description of the sensor layout from its placement in the laboratory. This approach is possible since the detection of energy losses and all related quantities like digits, clusters and hits are inherently local

Figure 3.3.: Definition of the local coordinate system for a silicon sensor. For a pixel detector, theuaxis points along the readout columns while thevaxis points along the readout rows. Thewaxis is the sensor normal and forms a right handedu, v, wcoordinate system.

and involve only interactions of a particle with a single silicon sensor in the beam telescope. The local coordinate approach will be used both for the digitization of energy losses and the reconstruction of hits on individual silicon sensors.

In the following, we introduce the mathematical description of the local coordinate system approach and the C++ class hierarchy needed to organize geometry data.

Local coordinate systems

A local coordinate system(u, v, w)is attached to each silicon sensor. The origin of the local coordinate system is the center of the sensitive volume at half thickness, half length and half width as shown in Fig. 3.3. The u and v axis are aligned with the 2D pixel matrix and point along the direction of increasing column (i) and row (j) pixel indices. Thewaxis is perpendicular to the silicon sensor surface and completes a right handed Cartesian coordinate system. Thew= 0plane is called the measurement plane of the layer. All particle intersections with the silicon sensor will be computed relative to the measurement plane.

The transformations between local and global coordinates are managed by the class ReferenceFrame.

The user interface prescribes methods to transform the coordinates of space points and direction vectors from global coordinates to local coordinates and vice versa. A space point with coordinates~r= (x, y, z) may be transformed to layer coordinates~q = (u, v, w)using the transformation law

~

q =R0(~r−~r0) (3.1)

where R0 is a 3×3 rotation matrix and~r0 = (x0, y0, z0) defines the sensor origin in telescope coordinates. Essentially, the pair~r0 andR0 embeds a silicon sensor in a common telescope coordinate system. The telescope coordinate system(x, y, z)is a right handed Cartesian coordinate system where thezaxis points along the particle beam, and theyaxis points upward.

In the typical case, silicon sensors in a beam telescope are placed in regular distances along thezaxis.

Sensors are exactly perpendicular to thezaxis and get crossed by beam particles at near perpendicular incidence. We can count a total of eight discrete rotationsD to embed the local coordinateuvwaxes into the tracker volume

D=

The discrete rotation has four parametersdi = (±1,0). The fifth componentd5 is uniquely deter-mined by the condition to form a proper3×3rotation matrix. The four rotation parameters are specified in the gear file. They account for the various possibilities to attach a detector module to the telescope support table.

Apart from the discrete rotation, sensors are allowed to have additional continuous rotations in the laboratory. A continuous rotation matrix may be written as a product RC = R30)R20)R10) using the following three Euler rotations

R1(α) =

Initial values for layer rotation anglesα00andγ0 are specified in the gear file. The overall rotation matrix of a sensor relative to telescope coordinates is a matrix product of the discrete and the continuous rotation matrix

R0 =RCD=R30)R20)R10)D (3.6) In total, the position and rotation of a sensor in the telescope is determined by six continuous geometry constants(x0, y0, z0, α0, β0, γ0)and four discrete rotation parameters (d1, d2, d3, d4). The sensor can be shifted and rotated in the telescope by shifting the center coordinatesx0, y0, z0 or rotated (tilted) by changing the Euler anglesα0, β0, γ0.

Class hierarchy: Telescope and sensors

In the case of a beam telescope experiment (test beam), the telescope geometry is a linear array of silicon pixel detector modules called telescope layers or planes. The telescope layers are naturally numbered along the beam line. The geometry data provided by the gear file is organized in an object oriented way with a two layer hierarchy. On the top level, the class TBDetector represents the entire telescope with all telescope layers. On the second level, the class Det represents a telescope layer and provides a common interface to retrieve layer specific geometry data. Together, the TBDetector and Det classes provide a common interface for all simulation (’digitization’) and data reconstruction (’clustering’, ’hitmaker,

’tracking’,’alignment’) Marlin Processors used in this thesis.

The TBDetector class provides an interface to read the geometry of a beam telescope from a GEAR. It initializes Det objects for all telescope layers found in the GEAR file. The Det class provides an abstract interface to the geometry data stored in the GEAR file for individual telescope layers. The layout of GEAR files used in this thesis is introduced in appendix C. A telescope layer has a unique DAQID which allows to relate a layer to its readout data in the LCIO file. The Det class provides an abstract interface to data reconstruction methods. The interface prescribes methods for the following common tasks:

• Transform between local coordinates(u, v, w)and telescope coordinates(x, y, z).

• Get columniand rowjof the pixel struck by a track intersection at(u, v, w= 0).

• Get geometrical center(uc, vc, wc= 0)of the pixel cell with columniand rowj.

• Get position~r0= (x0, y0, z0)and rotation matrixR0 of the silicon sensor.

• Get layer thicknessX(u, v, w= 0)and radiation lengthX0(u, v, w= 0).

• Get pixel pitch and intrinsic spatial resolution for pixel cell(i, j).

• Have pixel cells(i1, j1)and(i2, j2)a common edge (corner) on the sensor?

This interface is sufficiently powerful to support all reconstruction algorithms used in the remainder of this thesis. The default implementation of the interface assumes a checkerboard arrangement of pixels on the sensor. The default implementation is already enough to support the current DEPFET and Mimosa26 detector layouts. New detector layouts can be integrated into the reconstruction framework by adding new specializations of the Det class.