Reduction of Coarse Grid Positions to BAT Coordinates
BAT Cal Memo 2003-03-10
10 Mar 2003
C. Markwardt
Reduction of Coarse Grid Positions to BAT Coordinates
Summary
The BAT coarse grid test involves measuring the positions of a rad
source using both the BAT imaging system and a theodolite system. The
first step in analyzing the data is to reduce the data into the
BAT_X/Y/Z coordinate system, which I perform in this memo.
Significant sources of uncertainty include: statistical error in BAT_X
direction; position of active element within the Ba-133 rad source.
Coarse grid position variance (rms, test 1):
e(BAT_X) = 0.038 cm e(BAT_Y) = 0.006 cm e(BAT_Z) = 0.003 cm
Details
One formal test of the BAT imaging system is the so-called "coarse
grid" test. This test involves measuring the position of a
radioactive source using the BAT imaging array, while measuring it at
the same time with a precision theodolite system.
In principle the theodolite system is capable of measuring positions
to within 0.001", but this depends on the viewing geometry. The BAT
imaging system has a formal point spread function of about 20 arcmin
(FWHM), but in principle one can centroid to finer than this. This
will depend on understanding the various systematic effects, and so it
is very important to obtain accurate (and precise) source positions.
A rule of thumb is that 1 mm of position uncertainty translates to 1
arcmin of angular uncertainty, at the 3 m height of the source holder
above the detector array.
There were two coarse grid tests:
Coarse grid test 1 - dense grid covering ~1/3rd field of view
Coarse grid test 2 - sparse grid covering outlying points
Because of access issues, it was not possible to place a source at all
parts of the BAT field of view (see Figure 2 for coverage).
Technique
The technique is straightforward. I apply a translation and rotation
to the measured points to bring them into alignment with the known
mask positions. The mask positions are determine from drawings
supplied by Danielle Vigneau (Mech. Eng.).
Figure 1. BAT mask fiducial locations
In the figure top panel, +Y = +BAT_X is to the right, +Z = +BAT_Y is
upward. In the bottom panel, +Y = +BAT_X is to the right, +X = +BAT_Z
is upward.
The positions are given in inches with respect to the geometric center
of the CZT array (at the centerplane of the CZT). These are the
positions of the top plane of the fiducial sockets. Hubbs targets are
inserted into these sockets, whose reference point is 0.500" above the
top plane of the fiducial location. Thus, the coordinates of the
Hobbs target reference points are:
X (in) Y (in) Z (in)
MASK::-Y 41.536000 -44.875000 -0.714000 "left"
MASK::+Y 41.536000 44.875000 -0.714000 "right"
MASK::-Z 41.536000 -2.249000 -21.125000 "front"
MASK::+Z 41.536000 -2.249000 21.125000 "back"
These coordinates are in inches, and use the "mask coordinates" which
are parallel to the spacecraft X/Y/Z system, with X=0 origin at the
centerplane of the CZT.
I used IDL to find the best fit translation and rotation that
transforms the measured coordinates for the mask targets into the
nominal coordinates. The IDL procedures that I used were XFORMTHEO
and XFORM3D (see Appendix 2).
In addition to finding the best fit rotation, a by-product of the
solution is knowledge of the RMS variations in the coordinates. This
is the r.m.s. of the measured+transformed points with respect to
the nominal position, in BAT coordinate system.
Coarse Grid Test 1
e(BAT_X) = 0.038 cm e(BAT_Y) = 0.006 cm e(BAT_Z) = 0.003 cm
The error in the BAT_X direction is the largest, reflecting the fact
that this coordinate is the least well determined by two theodolites
at small angles and large distances. While we have multiple
measurements of the mask target positions, we do not have multiple
measurements of the science calibration targets, so the e(BAT_X)
uncertainty is definitely applicable as a systematic uncertainty.
The transformation parameters are (in inches and degrees):
Line 1 X Transl. Y Translate Z translate Z Euler Ang Y Euler Ang X Euler Ang
Line 2 Error of " Error in " Error in " Error in " Error in " Error in "
Coarse Grid Test 1
-520.20389 -182.45503 -89.655283 -1.1887589 -134.92795 181.43071
0.0023169783 0.0067686951 0.011390975 0.00061955064 0.00055350192 0.00087584069
Coarse Grid Test 2
3136.1210 4.2677258 463.63296 60.489185 -116.04819 103.98896
0.015535112 0.054679412 0.10375757 0.0015525568 0.0013275487 0.0020262842
The quoted errors assume delta(chi^2) = 1. See XFORM3D (Appendix 2)
for the usage of these quantities.
Once the transformation parameters are solved for, then it is
straightforward to apply the inverse transform to the measured science
calibration target coordinates, to convert to BAT coordinates. These
coordinates, and their uncertainties, are listed in Appendix 1.
The coverage of the coarse grid is shown in Figure 2:
Figure 2. Coarse imaging test coverage map. Test 1 points are shown
with open circles, test 2 with closed circles. The coordinates are
tangent-plane image coordinates, i.e. BAT_X/BAT_Z and BAT_Y/BAT_Z.
Rad Source Packaging
The Ba-133 source used in the coarse grid test is in a cylindrical
plastic package. The coordinates in Appendix 1 do not
include the offset of the radioactive source within the package. The
package diameter is 1", and the thickness is 0.250" (this is a type D
package from Isotope Products).
The position of the source within the package is less certain.
According to the package diagram in the Isotope Products catalog, the
active element is inserted in a 2 mm diameter hole at the center of
the disk, the hole being 0.125" deep. However, the diagram also shows
that the bottom of the hole is 0.109" from the bottom of the package.
So there is an uncertainty of 0.016" in the bottom position of the
radioactive material.
The most important thing is knowing the centroid of the material
distribution. A reasonable guess is
delta_BAT_X = 0.000 cm
delta_BAT_Y = 0.000 cm
delta_BAT_Z = 0.318 +/- 0.020 cm
where the uncertainty in the last quantity is 0.5*(0.125" - 0.109").
Other uncertainties, not accounted for in the figure above, comes from
the thickness of the tape on the bottom of the package (sighting
crosshairs were drawn on the tape).
Conclusion
The largest errors are in the BAT_X direction, however, they appear to
be of order 0.4 mm, which, when translated to an angular scale is
about 0.4 arcmin. My goal is < 1 arcmin systematics, so these
positional uncertainties appear acceptable, however it is possible
that some systematic error creeps into the theodolite positioning of
the Ba source. Also, the internal construction of the rad source is a
big question mark. For example, if the centroid of the active element
is shifted by ~0.5 mm, that should in principle be detectable in the
imaging data.
Addendum
Jay Cummings writes:
> I was struck by the variations in the Z coordinate in the positions of
> the source in the first coarse grid run.
>
> The floor in the clean tent is not parallel to the mask nor detector
> plane. But it probably is well approximated by a plane. Since the
> suspension of the source did not change, I would guess that the
> positions are also close to a plane. If we assume that the points for
> coarse grid 1 lie in a plane, then the best Z is found by the formula
> Z = 304.466 + X * 0.00166557 + Y * 0.00274414. This formula has
> residuals less than +- 1 mm and FWHM about 0.8.
Revisions
10 Mar 2003 - initial draft
11 Mar 2003 - comments by Jay Cummings
28 May 2003 - editted Appendix 1 table to add more textual space
Appendix 1. Science Calibration Target Positions
Coarse Grid Test 1
Name BAT_X BAT_Y BAT_Z e(BAT_X _Y _Z)
CG::CG01 40.7447 16.5619 304.3380 0.0381 0.0058 0.0025
CG::CG01_REPEAT 40.6992 16.5728 304.3099 0.0381 0.0058 0.0025
CG::CG02 40.6629 16.7954 304.3476 0.0381 0.0058 0.0025
CG::CG03 -54.7734 8.0050 304.0317 0.0381 0.0058 0.0025
CG::CG04 -143.1226 10.0928 304.4272 0.0381 0.0058 0.0025
CG::CG05 87.2006 204.9343 305.5563 0.0381 0.0058 0.0025
CG::CG06 -29.4386 207.5070 305.2114 0.0381 0.0058 0.0025
CG::CG07 -159.5109 237.4792 304.7327 0.0381 0.0058 0.0025
CG::CG08 -238.7809 9.5220 304.1754 0.0381 0.0058 0.0025
CG::CG09 -230.9221 91.9899 304.2845 0.0381 0.0058 0.0025
CG::CG10 -222.0668 170.1457 304.7570 0.0381 0.0058 0.0025
CG::CG11 -317.3734 164.6950 303.6739 0.0381 0.0058 0.0025
CG::CG12 -309.2267 88.9259 304.2202 0.0381 0.0058 0.0025
CG::CG13 -400.8619 86.8602 303.6583 0.0381 0.0058 0.0025
CG::CG14 -397.1351 13.5523 303.5765 0.0381 0.0058 0.0025
CG::CG15 -303.7891 9.9056 304.3113 0.0381 0.0058 0.0025
CG::CG16 -201.3873 10.2758 304.2670 0.0381 0.0058 0.0025
CG::CG17 -121.1971 3.8839 304.6527 0.0381 0.0058 0.0025
CG::CG18 -131.5669 -73.5478 304.1869 0.0381 0.0058 0.0025
CG::CG19 -208.3268 -66.6773 303.6629 0.0381 0.0058 0.0025
CG::CG20 -279.2001 -54.2265 304.1441 0.0381 0.0058 0.0025
CG::CG21 -368.8480 -56.5610 303.9675 0.0381 0.0058 0.0025
CG::CG22 -367.9240 -140.9265 304.0868 0.0381 0.0058 0.0025
CG::CG23 -288.9594 -145.8804 303.6765 0.0381 0.0058 0.0025
CG::CG24 -203.7159 -148.9651 303.5893 0.0381 0.0058 0.0025
CG::CG25 -133.1253 -153.7754 304.1959 0.0381 0.0058 0.0025
CG::CG26 -146.5422 -246.9448 303.5561 0.0381 0.0058 0.0025
CG::CG27 -221.6667 -232.6142 303.0867 0.0381 0.0058 0.0025
CG::CG28 -289.1483 -235.9436 303.0253 0.0381 0.0058 0.0025
CG::CG30 -57.3503 -247.5705 303.5487 0.0381 0.0058 0.0025
CG::CG31 -56.1783 -171.7273 303.9017 0.0381 0.0058 0.0025
CG::CG32 -61.3489 -92.0022 303.9372 0.0381 0.0058 0.0025
CG::CG33 -55.1563 -56.7809 304.2199 0.0381 0.0058 0.0025
CG::CG34 -93.3140 -29.1904 304.1161 0.0381 0.0058 0.0025
CG::CG35 -78.7296 56.3077 304.8173 0.0381 0.0058 0.0025
CG::CG36 -151.9566 49.9993 304.5396 0.0381 0.0058 0.0025
CG::CG37 -229.3290 61.8693 304.4157 0.0381 0.0058 0.0025
CG::CG38 -202.2239 108.1830 303.9900 0.0381 0.0058 0.0025
CG::CG39 -211.9865 -28.3697 304.2448 0.0381 0.0058 0.0025
Coarse Grid Test 2
Name BAT_X BAT_Y BAT_Z e(BAT_X _Y _Z)
CG::CG01 385.2340 -35.9348 414.0341 0.0203 0.0327 0.0025
CG::CG02 377.9450 -122.9297 412.3428 0.0203 0.0327 0.0025
CG::CG03 171.4089 234.4192 407.8505 0.0203 0.0327 0.0025
CG::CG04 -68.5462 -282.3277 396.8209 0.0203 0.0327 0.0025
CG::CG05 -210.8613 -277.5518 393.3666 0.0203 0.0327 0.0025
CG::CG06 165.2865 -284.0973 391.6094 0.0203 0.0327 0.0025
Appendix 2. IDL Procedures used in fitting:
XFORM3D - general 3-D transformation (download)
XFORMTHEO - full theodolite to BAT_X/Y/Z transformation (download)
QTCOMPOSE - see Markwardt IDL Page
QTVROT - see Markwardt IDL Page
Scripts used to reduce the actual data:
Coarse Grid Test 1
spawn, 'cat cg1_end_mask.txt | grep -v "//" ', ref_str
;; Exclude point 5, since it seems to be a more bogus measurement
ref_str = [ref_str(0:4),ref_str(6:*)]
spawn, 'cat cg1_end_cal.txt | grep -v "//" ', dat_str
;; Ignore point CG::CG29 because it is definitely bogus
wh = where(strpos(dat_str, '::CG29 ') LT 0)
dat_str = dat_str(wh)
;; Initial transformation parameters
p0 = [80d, -190d, 520d, -1d, -135d, 180d]
pos_err = [0.0022d, 0.0150d, 0.0010d]
xformtheo, ref_str, dat_str, p0=p0, ptransform=ptransform1, $
dptransform=dptransform1, pos_err=pos_err, $
refpoints=refpoints1, datpoints=datpoints1
end
Coarse Grid Test 2
spawn, 'cat cg2_mask.txt | grep -v "//" ', ref_str
spawn, 'cat cg2_cal.txt | grep -v "//" ', dat_str
;; Initial transformation parameters
p0 = [3136d, 4.25d, 463d, 60d, -115d, 103d]
pos_err = [0.0022d, 0.0150d, 0.0010d]
xformtheo, ref_str, dat_str, p0=p0, ptransform=ptransform2, $
dptransform=dptransform2, pos_err=pos_err, $
refpoints=refpoints2, datpoints=datpoints2
end
Data Files
cg1_end_mask.txt - Test 1 - Mask targets only
cg1_end_cal.txt - Test 1 - Sci Cal targets only
cg2_mask.txt - Test 2 - Mask targets only
cg2_cal.txt - Test 2 - Sci Cal targets only