[Artist's Concept of AXAF]

ACIS CC mode absolute time



The FITS time column in ACIS CC mode observations contain the time the charge packet was read out of the ACIS framestore, and not the time the photon intracted with the detector. If the charge interacts at CHIPY on the detector, then it must be clocked through CHIPY+2 pixels on the on the CCD (there are two rows at the bottom of the CCD that are normally not used) plus 1026 rows in the frame store. Thus the times are delayed by
      Delay = (CHIPY(t)+1028)*2.85 msec                           1.
Since CHIPY(t) depends upon the target location, the SIM position, the current dither offsets and even spacecraft flexure, all these effects need to calculated and removed.


The AOFF file contains the offsets due to dither (X_OFFSETS, Y_OFFSETS) and flexure (STF_Y, STF_Z). The basic procedure is to use finterp to interpolate these columns into the FITS events list and then use fcalc to compute the corrected time. Of course, one must pay attention to units, coordinate systems, etc.

Here is my ftools script cctime.sh that does these interpolations for obsid=170 an observation of the Crab.

Most of the input parameter are set by variables and should be fairly obvious. The only value that requires explaination is NOMCHIPY which is the chipy location where a photon will land if all offsets (dither, flexure, and PSF related) are zero. For low accuracy it is possible to "guess" NOMCHIPY=515.0 since that value is typically within a few pixels of correct. The most accurate way is to run the dmcoords program:

> dmcoords acism00170_001N000_evt1.fits
dmcoords>: cel 5:34:31.972 22:0:52.069
CHIP ACIS-S3       257.15        514.85
Indicating that NOMCHIPY should be 514.85 for this observation of the Crab.


The script was created by correcting time exposure (TE) data. We compute the (chipxz, chipyz) which is the chipx, chipy if all the offsets were set to zero. This is done using
      chipyz = CHIPY(t) - offset_y(t)
where offset_y(t) is the sum of all the offsets in the chipy direction. When everything works this produces a point source in chipxz, chipyz coordinates that should be at the location specified by the dmcoords program. This shows that nomchipy~chipyz. It is a simple matter to compute
      CHIPY(t) = nomchipy + offset_y(t)
for any data set and correct the timetags using equation 1. above.

The above was applied to the Crab data in obsid=170 and folded with the following ftools procedure.

      fcalc /tmp/ob00170_bc.fits /tmp/ob00170_abc.fits aphase @aphase.txt
      fselect /tmp/ob00170_abc.fits /tmp/pulsar.fits 257.le.chipxz.and.chipxz.le.260
      fhisto /tmp/pulsar.fits profile.fits aphase 0.02
      fplot profile.fits x_world y[error] "-"
      PLT> Plot
The fselect on chipxz restricts events to the few (4) columns that contain the pulsar. (The nebula contribution to those columns would still to be subtracted.) The aphase.txt file contains:
derived from the Jodrell Bank Crab Pulsar monthly ephemeris. The alert reader will note some tricks in the script to ensure a positive phase, even if time is before the reference time. Below is the folded pulse profile

Pulse Profile

The main peak is weaker than expected. This is because the pulsar is severely piled up even in CC mode. Based on the phase separation it is easy to identify the main peak near phase 0.02 which is less than 1.5 msec from the expected phase of 0.99. Given the 2.85 msec time resolution, this is an impressive agreement.


This method currently only works for ACIS-S. It would be simple, though tedious, to adapt the method to ACIS-I.

Since the dither offset tends to average to zero, the average time delay from the photon interaction to the charge readout is about (1028+NOMCHIPY)*0.00285. Divas Sanwal first suggested determining the spacial offsets at this average time delay and I do this by setting the time values in the cleaned AOFF file forward by this amount. This makes the Crab peaks sharper. If we don't adjust the AOFF times then we introduce an error due to the spacecraft motion over about 4.4 sec. When we correct by the average delay then the remaining error will be the residual spacecraft motion over about 50 msec.

The script will not work on the data processed with the early versions of CIAO. Use the reprocessed data where the coordinates are better understood.

The limiting factor is how accurately we can predict the source location on the detector. This equivalent to how accurately can we know the location of the source on the sky using the aspect system. The one dimensional error is about +/- 0.5 arcsec. Thus an error of +/- 3 msec is likely from the aspect uncertainty.

Finally, in comparing the Crab phase derived from the HRC data, Tennant et al. 2001, found evidence that the Chandra clock is 0.2 msec early.

Bug fixes

2001-08-30 - It was discovered that dmcoords corrects for the SIM_Z offset. The script was updated not to also apply this correction. This has very little impact if the SIM is at the nominal position.

2001-08-30 - Create a cleaned AOFF file for which bad values have been removed and the times have been set forward by (1028+NOMCHIPY)*0.00285 to remove the bulk of the spacecraft motion while the charge is being clocked out.


Special mention goes to Peter Ford who's superb knowledge of ACIS and it's internal delays makes this all possible. Bill Davis has quietly ensured accurate calibration of Chandra's clock. Herman Marshall, Glenn Allen, and Divas Sanwal all provided pieces of the ACIS puzzle.
Contact information
Valid HTML 3.2!