The HEASARC is hiring! - Applications are now being accepted for a scientist with significant experience and interest in the technical aspects of astrophysics research, to work in the HEASARC at NASA Goddard Space Flight Center (GSFC) in Greenbelt, MD. Refer to the AAS Job register for full details.

ROSAT Guest Observer Facility

ROSAT PSF Generator Developed

--by Eric Schlegel

A stand-alone Fortran program has been written that generates images of sources with the known ROSAT PSPC point-spread function. The program can produce images at a single energy, or weighted by the output spectrum. Moreover, the program handles off-axis angles.

The positions of the sources are entered in blocked coordinates. However, the program unblocks the coordinate positions by the value of the blocking factor that the user enters. The program generates a PSF at each source position using 0.5- arcsec pixels (i.e., pixel space). The resulting image then is blocked by the user's chosen blocking factor and written out as a FITS file.

This program differs from the PSF generator available in PROS in that it does the PSF with the complete functional form. The PROS package currently lacks a power-law function, so the Lorentz break to a power law cannot be calculated using PROS.

Note: The most current version of this code is dated September 9, 1993. An earlier version of the code, also available on the ftp account, had a bug.

Program Features:

  • With the program, the user can create one source at a single energy.
  • The user can create many sources at a single energy without specifying a spectral table file.
  • The user can create one source at many energies by specifying a spectral table file.
  • The program can create many sources at many energies with many spectral table files, not a single spectral file.
  • The input spectral table file can be a FITS file or a ST-SDAS table file.

Program Limitations:

  • The program has not been tested extensively. It has been verified that one can generate up to four sources with varying off-axis angles.
  • The current maximum size of the final image is a function of the amount of memory available, which is a function of the blocking factor chosen. The array size is dimensioned at 960x960, yielding the following table of array sizes as a function of blocking factor.

           Blocking   	 Array size
             1          		   960x960
             2          		   480x480
             8          		   120x120
            16          		     60x60
            30          		     32x32

Program "Bugs":

  • An IEEE warning (inexact operand) sometimes is generated by the subroutine that actually writes the array to the FITS file (ftp2dd). However, there appear to be no problems with the resulting image.

  • An IEEE warning sometimes is generated by the subroutine that actually generates the PSF. Again, the warning does not seem to affect the results of the subroutine.

Installing the Program:

The following installation procedure assumes you have the FITSIO library (available via ftp from:, and two XANADU software libraries (available from the HEASARC software directory (under software/). The PSPC PSF software resides on rosat/software/fortran/off_axis_psf/ as a tar file (psfpspc.tar.Z). To install the software, complete the following steps:

  • ftp the .tar.Z file to your directory.
  • Uncompress the compressed file: ?.tar.Z
  • Un-tar the tar'd file: tar -xvf ?.tar.
  • Compile the program.
  • Link the main program, its subroutines, the FITSIO subroutines, and the XRAYLIB subroutines.
  • Run the program.

IF (and ONLY if) you use the Makefile:

  • Set the FITSIO pointer (FIO) to the location of the FITSIO software on your system.
  • Set the XRAY library pointer (LIB) to its location on your system.
  • Set the 2nd XRAY library pointer (XLB) to its location on your system.
  • Create the program: make prog
  • Run the program.

Input needed to run the program:

Output option:
This prompt controls the level of output generated, with zero the least, and 3 the most. For the patient, zero is a good response.

Output FITS file name
(character; maximum length = 32 characters)

Image size in pixels,
first the x size, then the y size of the final output image.

The blocking factor of the above image
the calculations are done in pixel space (0.5-arcsec pixels) and must be entered, and then blocked back to the size specified by the user.

The program will ask:
  • generate multiple sources (y, n)?

  • Respond by entering y or n.
  • if y, then enter source list file name (characters, maximum = 24 characters); i.e., the file name of the list of sources to be generated.

    The source list should have the following format:

    xxxx  yyyyy  ssssss  aaaaaa  tttttttt
    xxxx  yyyyy  ssssss  aaaaaa  tttttttt
    xxxxx = source's x position (pixels)
    yyyyy = source's y position (pixels)
    sssss = source's strength
    aaaaa = angle (in arcminutes)[This angle is from the source to the 
    	PSPC center.]
    ttttt = spectral table file name

    Note: Each source should use one line.

  • if n, then enter the single source's x-, y-position (in pixels), and the source's strength.

the program will ask:
generate source at one energy, or many energies?
  • If one energy, enter the energy (keV).
  • If many energies, then do the following:
    • Enter the type of the table (FITS, STSDAS .tab file).
    • If one source, enter a table file name.
    • If many sources, the table file names will have been listed in the source list file.
    • Enter the range of energies (keV) over which to generate the point spread function.

Output from the program:

Output is minimal, particularly under output option 0 (zero). The generation of a single source at one energy requires about 15 (fifteen) seconds. Multiply for the corresponding number of sources and the corresponding number of energy channels. Additional energy channels consume less time than additional sources.

For help/comments/:

Eric M. Schlegel, PhD
Lab. for High Energy Astrophysics
Code 668, NASA-Goddard Space Flight Center
Greenbelt, MD 20771
Voice: Real: 301.286.6636
Newsletter Select another edition of the ROSAT Newsletter

ROSAT Return to the ROSAT GOF

Curator: Michael Arida (ADNET);
HEASARC Guest Observer Facility

Please use the Feedback link if you have questions on ROSAT.

This file was last modified on Monday, 25-Jun-2001 17:38:12 EDT

NASA Astrophysics

  • FAQ/Comments/Feedback
  • Education Resources
  • Download Adobe Acrobat
  • A service of the Astrophysics Science Division (ASD) at NASA/ GSFC

    ROSAT Project Scientist: Dr. Robert Petre

    Responsible NASA Official: Phil Newman

    Privacy Policy and Important Notices.