An accurate method for astrometry and photometry of minor planets with significant apparent motion is to take short exposures and then stack them over the minor planet. The WCS of individual images is then used to obtain positions of the minor planet at mid-time of the combined images. For obtaining photometry, we need to median-stack the images over the minor planet to get its instrumental magnitude and we need to median-stack the images over reference stars to calibrate the stacked image. Stacking the data over reference stars is a very standard technique used across the globe to achieve greater image depths and is also implemented into the GROWTH-India automated data reduction pipelines. SWarp [Bertin et al. (2010)] is a program that resamples and co-adds together fits files using any arbitrary astrometric projection defined in the WCS standard. SWarp is one of the most heavily utilized programs in astronomy for image stacking and image subtraction.
"Tracery" is a python implementation of these stacking techniques, but specifically for minor planets. The execution of Tracery is supported by multiple well-known packages - SWarp [Bertin et al. (2010)], Astropy [Prince Whelan et al. (2018)] and NumPy [Harris et al. 2020]. The script queries the coordinates of the minor planet at the specific exposure time (picked from the header) for each image. Using these coordinates, the script resamples the fits images into a size of 1000 pixels (which translates to ~11 arc-minutes for GROWTH India Telescope's primary camera), with the target minor planet at the centre of the resampled images. These resampled images are then stacked using median and add combine techniques. The scripts for Tracery can be found at https://github.com/krittisharma/tracery.
Using tracery is relatively speaking very straightforward. Once the configuration file for SWarp is set up based on your telescope parameters, for example - pixel scale, saturation, gain, etc, you are pretty much good to go! The following parameters have to be parsed for each minor planet's data to be processed, pertaining to the location of data on your system and the minor planet's official designation (you might have to edit the script for the changes in directory path based on the path structure of your PC):
date: The date directory of the night of observations for the minor planet, default: today's date
dir_path: Path to the date directory, default: home
target: Official designation of the minor planet to be processed
Here is are some example commands for your reference:
python tracery.py --date 20210407 --dir_path /mnt/growth_new/growth_data --target "2005 XR132"
python tracery.py --date 20210827 --target "29P"
Tracery has been used to stack data for recently discovered active asteroid 2005 XR132 data, acquired using 0.7m GROWTH-India Telescope. The photometry is consistent with those reported by the discoverers.
The main-belt asteroid, 2005 QN173, was discovered to have turned on its tail in July'2021. I did multi-band imaging of this active asteroid with GROWTH India Telescope to measure its colours, in coordination with the GROWTH collaboration. I obtained multiple 300-second exposures and stacked them using Tracery. Its long magnificent tail is clearly visible in the stacked images.
Tracery has also been used to reveal the deep cometary features of the comet P/2021 N1 (ZTF) in GROWTH-India data. I reported the activity of this comet to Minor Planet Center and my observations have been MPEC'ed in MPEC 2021-N115: COMET P/2021 N1 (ZTF).