About this version of CSPad alignment
- Quads are aligned individually using their natural coordinates as from the optical measurement (top-left corner is an origin, nearest point to the beam spot).
- Sensors are aligned based on their center position from optical measutement. Center coordinates are calculated as an average of four corners.
- Center coordinates were float numbers with precision of 1 um.
- Additional hand-made offset is applied based on deviation plots (offset in integer number of pixels).
- Tilt angles were taken into account.
- After sensor translation and tilt-rotation coordinates are rounded to integer numbers in order to insert everything in uniform 2-D array.
Earlier versions of CSPad alignment
CSpad Alignment - v2011-05-25
CSPad Alignment - v2011-06-14
Alignment tool
- Takes image of CSPad or quad from 2-D array
- Draw lines along the wire shadows
- Interactively adjust lines along the wire shadows
- Plots:
- image
- image profile
- deviation of the shadow "center of gravity" from line along the line
Alignment parameters
Sensor center X and Y coordinates (in pixel) from optical measurement (after run 3)
self.pairXInQaud = [[ 198.59, 198.04, 310.42, 98.22, 629.25, 630.01, 712.11, 499.91], [ 198.40, 198.13, 310.55, 97.68, 626.40, 626.59, 710.49, 498.15], [ 200.58, 199.79, 314.91, 103.43, 631.36, 633.34, 714.25, 501.44], [ 198.89, 198.18, 310.75, 98.13, 630.00, 629.41, 710.00, 499.99]] # 4,6 (630,710) were not measured self.pairYInQaud = [[ 308.00, 95.24, 626.85, 627.63, 517.84, 730.54, 200.79, 200.22], [ 308.35, 95.09, 626.15, 626.58, 513.07, 725.86, 200.67, 200.57], [ 309.62, 97.24, 622.35, 625.76, 513.46, 725.96, 199.78, 199.76], [ 307.80, 95.08, 628.38, 628.43, 515.00, 730.70, 200.00, 202.96]] # 4,6 (515,200) were not measured self.pairZInQaud = [[ 0.37, 0.15, 0.52, 0.62, 0.39, 0.55, 0.24, 0.18], [ 2.16, 1.08, 4.14, 3.51, 4.61, 5.68, 3.35, 2.63], [ 0.28, 0.20, 0.50, 0.65, 0.39, 0.56, 0.30, 0.27], [ 0.37, 0.30, 0.47, 0.25, 0.00, 1.06, 0.00, 0.85]]
Additional manual offset (in pixel)
# 0 1 2 3 4 5 6 7 self.dXInQaud = [[ 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, -1, 0, 0, 0], [ 0, 0, -1, -1, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0]] # 4,6 (630,710) were not measured self.dYInQaud = [[ 0, 0, 0, 0, 0, 0,-0.5, 0], [ 0, 0, 0, 0.5, -1, 0, 0, 1], [ 1, 0, 1, -2, 0, 0, -5, -4], [ 0, 0, 0, 0, 0, -1, 0, -2]] # 4,6 (515,200) were not measured
Sensor nominal rotation angle (dergee)
self.pairInQaudOrient = [ [ 270, 270, 180, 180, 90, 90, 180, 180], [ 270, 270, 180, 180, 90, 90, 180, 180], [ 270, 270, 180, 180, 90, 90, 180, 180], [ 270, 270, 180, 180, 90, 90, 180, 180] ]
Sensor tilt angle (dergee) from optical measurement
self.dPhi = [ [-0.27305, 0.01711,-0.34736,-0.08158,-0.15462,-0.12369, 0.09212, 0.39342], [ 0.14215, 0.00395, 0.13488, 0.12106, 0.11221, 0.11025,-0.00921, 0.06316], [-0.33008, 0.00196,-0.16524,-0.56502,-0.44282,-0.39677,-0.18349,-0.22444], [-0.35074, 0.00131,-0.01513, 0.03882, 0.00000, 0.34609, 0.00000, 0.08816] ]
Deviation of the wire shadows from lines
Quad 0
Quad 1
Quad 2
Quad 3
Overview
Content Tools