[Last Change: 08 Dec 2025 (rev 15) —
Page History]
Raytracing Chandra with SAOTrace
Overview
SAOTrace is a suite of software which simulates the propagation of photons from an astrophysical source through the
optics. You will use the
trace-nest command to run raytraces.
To produce an end-to-end simulation of an observation you will also need to simulate the interaction of the photons with a
detector. You can use either the
CIAO psf_project_ray command or
MARX . A tutorial on using
SAOTrace output with
MARX is available in the
ChaRT Threads.
Support
Please contact opticsoft@cfa.harvard.edu for all support issues.This software is not CXC Data Systems software
and is not supported in any fashion by them.
Please do not contact the CXC Helpdesk if you have problems.
Installing SAOTrace
Prior to running your first raytrace you must
install SAOTrace . The location of the
SAOTrace executables depends upon the installation method.
Raytracing
trace-nest takes a number of parameters (full, incomprehensible documentation is
here
).
The following are the actual parameters of interest (the other parameters have appropriate default values):
| name |
type |
description |
tag |
string |
A prefix to be used on all files created. |
srcpars |
string |
Source parameters. They may be in a file (which must have the extension .lua), in which case this parameter is the filename. See here for more information on how to specify source parameters. |
seed1 |
integer |
The random number seed. trace-nest uses stochastic processes during its operation; the seed1 parameter is used to specify the seed for the random number generator. If you wish to simulate multiple realizations of the same observation, you must change seed1 for each realization. |
| tstart |
float |
The starting time (in seconds) of the observation. If dither is simulated using a Chandra aspect solution file, this must be within the time range of the aspect solution data. |
limit |
float |
The numerical value of the limit at which to stop generating rays at the telescope entrance aperture. See here for more information. If this is in units of time and dither is simulated using a Chandra aspect solution file, the final stop time, tstart + limit, must be within the time range of the aspect solution data. |
limit_type |
string |
The units of the limit at which to stop generating rays. See here for more information. |
throttle |
integer |
If non-zero, this specifies the number of photons which should be output provided enough were generated. Rays are first eliminated based upon their probability of reflection, and then only the requested number are passed through. If negative, rays will be eliminated by their probability of reflection, but no total limit to their number will be set. If this option is non-zero all rays will have a weight of one. See here for more information. |
How to raytrace ...