images/sps_logo

SPS V2.31 User’s Guide


1.    Introduction

The purpose of this document is to provide a practical guide to using the SPIRE Photometer Simulator (SPS). It will explain how to install, and use the SPS to generate SPIRE data timelines. A guide to the use of the SPS custom pipeline is then provided, which allows simple calibrated maps to be generated from the SPS output.  The assumptions and limitations of each module are also explained.

It is intended that this document will grow and become more useful following feedback from SPS users. As a result I would welcome any comments users might have, especially with regard any aspect of this guide which people might find confusing, or inaccurate. This document does not contain a detailed explanation of how the SPS works, or the models it uses. For this information you should consult the official SPS document V2.31 (SPIRE-UCF-NOT-003094).

1.1.    SPIRE

SPIRE, the spectral and photometric imaging receiver, is one of three instruments on-board the European Space Agency's (ESA) Herschel space observatory. It contains a three-band submillimetre camera and an imaging Fourier transform spectrometer (FTS), and uses arrays of hexagonally packed feedhorn-coupled bolometric detectors operating at a temperature of 300 mK. The photometer has a field of view (FoV) of 4 x 8 arcminutes, observed simultaneously in spectral bands centred approximately at 250, 350 and 500 μm. The angular resolution is determined by the telescope diffraction limit, with full-width-half-maximum (FWHM) beam widths of approximately 18, 25 and 36 arcseconds at 250, 350 and 500 μm respectively. Maximising the aperture efficiency of the feedhorns requires an aperture corresponding to an angle of 2λ/D on the sky, where λ is the wavelength and D is the telescope diameter. Consequently, the detector beams have an angular separation of approximately twice the FWHM beam size on the sky.

1.2.    The SPS

The ultimate purpose of the SPS is to produce simulated SPIRE photometer data (both science and housekeeping), derived from a realistic physical model of the instrument. This model can be used to “observe” a simulated astronomical sky, using any of the allowed photometer observing functions (POFs). The sensitivity results should be compatible with the photometer sensitivity model (SPIRE-QMW-NOT-000642), but the SPS constitutes a much more sophisticated and versatile tool for evaluating the photometer performance. It should be noted however that the total observing time of a simulation can not at this time be considered to be accurate.

The SPS software is coded using the Interactive Data Language (IDL), and produces simulated data at the level-0 stage (non-calibrated data in digitised units). The primary uses for the simulator are:
·        To optimise and characterise the photometer observing functions
·        To aid in the development, validation, and characterisation of the SPIRE data pipeline
·        To provide a realistic example of SPIRE data, and thus to facilitate the development of specific analysis tools for specific science cases.


2.    Installation

The SPS comes as a zip file containing all files required for operation, including the SPS custom pipeline and calibration files. The initial value of the variables in the SPS will be set to the default nominal values. To install the SPS extract the data from the zip file to your choice of location. Once this is done you’ll need to edit your IDL “start up” file to include the SPS installation directory location in the IDL “!path” parameter. Adding the following lines, and changing the ‘your_path_here’ string to your chosen installation directory, will set up all of the required SPS paths. NB: This code is platform independent. For more information on startup files see Appendix I.

 ;---------------------------------------------------------------------
; VERSION 2.31
;---------------------------------------------------------------------
op = STRUPCASE(!VERSION.OS_FAMILY)
IF op EQ 'WINDOWS' THEN slash= '\' ELSE slash = '/'
 

;Primary (root) location of SPS directories
;*********************************************************************
my_SPS_path = 'your_path_here'
;*********************************************************************

IF STRLEN(my_SPS_path)-1 NE STRPOS(my_SPS_path, slash, /reverse_search) $    ;Checks if the separator is specified in
THEN my_SPS_path = my_SPS_path + slash                                       ;the output path, if not then it is added
DEFSYSV,    '!SPS',            my_SPS_path
;Location of SPS temporary folder
DEFSYSV,    '!SPS_temp_path', !SPS+'temp'+slash
;Primary location of SPS system files
DEFSYSV,    '!SPS_path',      !SPS+'system_files'+slash
;Primary location of SPS parameter files
DEFSYSV,    '!SPS_params',    !SPS+'params'+slash
 
IF op EQ 'WINDOWS' THEN spacer = ';' ELSE spacer = ':'
!path = EXPAND_PATH('+'+!SPS,/ALL_DIRS) + spacer + !path
;---------------------------------------------------------------------

To run the SPS you also require the IDL astronomy library routines. If this library is not already installed on your system then you can download it from here. Once downloaded you will need to unpack the library and place it in your root SPS directory. If you wish to place the library in a different location, then you will need to add this location to the IDL !path parameter in your startup file.

You can test to see if the installation has been successful by starting the graphical user interface (GUI). This is done by typing sps_gui at the IDL command prompt and pressing enter. If the installation has worked then you should see the SPS GUI console appear in the top left of your screen. The version number stated in the information window in the lower right hand side of the GUI should read V2.31. If it does not then it is possible that your installation paths have become mixed up, and you are using an older version of the SPS. It is recommended that you delete, or relocate old versions to avoid this problem.


3.    Using the SPS

The simplest way to use the SPS is via the GUI. This can be started by typing sps_gui at the IDL command prompt and pressing enter. This should bring up the main SPS console, shown in below.

SPS GUI console image

The GUI contains 13 buttons in total, one for each of the modules down the left hand side, and three additional buttons for set-up and running of the simulation code. Pressing any of the module buttons will bring up the parameter window for that module. Here you will be able to enter the various different parameters required for your simulation. The units, and where appropriate the default values, are given for each parameter in brackets at the end of the parameter label.

The CORE button, like the module buttons, will bring up a parameter window. This window allows you to set up all of the parameters required for the operation of the SPS, but that do not actually represent any component of the real physical system. For example this is where you would specify the file name for the output data, and the time step used within the simulator.

Finally there are the Begin Simulation and the Quit buttons, which start the simulation and exit the GUI respectively.

For detailed information on the parameters in each module parameter window see the Modules section

3.1.    Multiple Simulation Runs and repetitions

3.1.    Input Sky Models

The SPS requires three separate input sky models, one for each waveband. Each model must be a single image in a Flexible Image Transport System (FITS) file format, with an integer sized pixel scale and represent the same area of sky. The pixel size should be the same in all three images, and the units of the input maps must be Jy/pixel. It is reccomended that a pixel size of 2 arcsec be used, since the is ~1/10 of the smallest beam. Large pixel sizes could reqult in pixelisation artifacts arising in the output data. The spectrum at each pixel will be treated as uniform across the SPIRE band. In addition to the image data the FITS file headers must contain the correct astrometry information, including CDELT, CRPIX, CTYPE, CRVAL and EQUINOX FITS header keywords. The input maps must also have a left handed co-ordinate system, i.e. CDELT1 must be negative. Example input sky maps are provided in the skies folder within the SPS distribution.

3.2.    Multiple Simulation Runs and repetitions

It is possible to set up and run multiple simulations in a batch mode. To do this the required number of runs must be specified in the core parameters window. Next a series of file names, equal in number to the number of runs, and separated by a comma must be input in the file name file in the CORE parameters window. An example can be seen in the core parameter window. Finally, any parameters you wish to vary between the simulations must be entered in the appropriate field, in order, and separated by a comma. The number of parameters in this field must match the number of runs selected in the core parameters window. More than one parameter may be varied at once. An example is given in the observatory function parameters window. In this example two simulations will be performed in orthogonal directions, as specified by the two different entries in the scan direction and scan rotation parameter fields. NB: You must ensure that you specify different observation ID values in the house keeping parameters window if you wish to use the data with the SPS to pipeline converter.

It should be noted that the number of runs parameter is not equivalent to number of repetions set in HSpot. The number of observation repetitions is specified in the observatory function GUI window. Each run may contain N repetitions, each of which will use the simulation parameters for that particular run. For scan map mode a separate file will be output for each repetition with the repetition number being appended to the output file name as a suffix. Since all other observing modes generate significantly less data, only a single file is generated for the remaining observing modes.

3.3.    System Requirements and Performance

To run the SPS you must have a fully licensed version of IDL, and approximately 1-2GB of free hard disk space. The true amount of space needed varies depending on the length in time of the desired simulation, and selected output options. The SPS was developed on a Windows XP platform, and has been tested on LINUX and Mac OS X installations. The run times are shown below for the example simulations described in this document for all three platforms.

System Platform and Specification
Duration of Observation (min.)
Run Time (min.)
Memory Used (MB)  Output file size (MB)
Windows
(Core Duo T7200
2 GHz, 2 GB RAM)
15
7
331 ~22

3.4.    Output  Data

The SPS output a files can be either IDL save format (*.xdr) or FITS format, depending on the user selection. These files contain the structures used within the simulator (see the SPS document for information). When restored all parameters used within the simulator should be available. Each parameter will be stored within its associated module structure, e.g. telescope pointing is in the obsfun module, detector offsets are in the optics module, BSM pointing is in the BSM module etc. For a simple way to read in simulator output in to IDL use read_SPS_data.pro contained within the 'OtherPros' folder. Once loaded, the structures, and parameters contained therein, can be accessed in the normal way, e.g. to plot the telescope pointing time line you would require the DirZ and DirY parameters:

IDL> plot, obsfun.DirZ, obsfun.DirY


4.    SPS Custom Pipeline

In order make use of the data output from the SPS a crude data pipeline has been written. This uses basic calibration and map-making routines to create simple maps from the observation data. Currently this pipeline only operates on scan map data, but a jiggle map-maker is also under development. The simplest way to produce maps is by using pipeline, however, both the calibration and map-making routines can be called individually (see below).

The pipeline is called by typing 'SPS_pipe' at the command prompt. This will bring up a browser window in which you can select the simulated output file that you want to reduce. Multiple files can be selected and processed at once. Click okay when you have selected you files.

When the pipeline is called, both the final output map, and intermediate calibrated data timeline files will be produced. Both sets of files are placed in to the location of the original simulator data file. The calibrated

4.1    Calibration

Calibration of the data is performed using a calibration data set, contained within the SPS release files. This calibration file includes the non-linear detector response seen when observing very bright astronomical sources. The calibration routine takes the detector timeline data and converts it from a digitized output to units of Jy/pixel, where the pixel size is a user defined input.

The output from the calibration routine is a data file which is identical to the original but with the timelines calibrated to Jy/pixel where appropriate. These calibration files have the same name as the original input file, but with an added '_cal' suffix.

4.2    Map-Making

The mapping routine used by the SPS custom pipeline is a naive map-maker. It bins all of the data into individual map pixels of a user specified size, and takes the average value as the measurement for that location on the sky. Coverage maps and variance, and on-source flag maps can also be output if the appropriate keywords are specified. Three versions of each output map type are created, one for each photometer band. The name of the output files will be the same as the original file name, but with an added describing the band, and map type, e.g. '_cal_PSW_map.fits'. The three maps will use the suffixes map, counts, and weights for the flux, coverage, and variance maps respectively.

4.3 Using the SPS Custom Pipeline

The SPS custom pipeline is controlled from the IDL command line. To call the SPS custom pipline simply type sps_pipe at the IDL command prompt. This will bring up a file selection window, from which you can then choose your files to be reduced. These files should be raw simulator output data, and not the intermediate calibration products produced by the pipeline.

There are three keyword options when running the pipeline:

RES - A three element floating point array containing the pixel resolution of the output maps in arcsec. If this parameter is not specified the default [8.0,10.0,14.0] values are used for the 250, 350, and 500um bands respectively.

ASTRO - When specified the map-maker will output maps made from the astronomical power timelines rather
than the detector output. These files will be suffixed with '_astro'.

ALL_MAPS - When set variance (_
weights), coverage (_counts), and on source flag maps (_flag) will be output in addition to the flux maps.


5.    Demonstration Simulation

This section takes the user through an example simulation, from initial setting up of the SPS, to running the code, and reducing the output data using the SPS custom pipeline. This example simulates two orthogonal POF 5 scan map observations of the same region.

5.1    Setting up the Simulation

If this is the first time that the simulator has been used then the default simulation parameters will be set-up correctly to perform these two simulations. It is still worth looking through the various parameter windows, however, to see what the example parameters are. It is also worth checking the observing function to be implemented by clicking on the 'Realise Observing Function' in the Observatory Function parameters window.

If this is not the first time you have started the SPS, then you can reset the original parameters by overwriting the files in the 'params' directory with those found in the 'default_params' directory. Both of these directories can be found in the SPS_V2-2 installation directory.
Alternatively you can find the original parameters in the various parameters window images throughout this document.

To run the simulation, click the 'Begin Simulation' button in the main SPS GUI console. At this point the simulation will begin, and the user must wait for it to run. This could take some time depending on the speed of your computer. Sample run times for these simulations, performed on three different systems, are presented above. A 'Simulation Complete' message window will appear when the simulation has finished. This window will tell you the combined run time for the two simulations.

The output will have been placed in the default simulator 'output' directory, found in the SPS_V2-2 directory. Two files will have been produced, corresponding to each simulation.

5.2   Producing a map

The simplest way to produce a map from these output data is to use the SPS custom pipeline. To do this simply type sps_pipe at the IDL command prompt. This will bring up a file selection window. Highlight both output files and press enter to start the data reduction. During reduction of these data an intermediate calibrated version of the original simulator output file will be produced, and place in the same location as the original data file. Once complete the pipeline will output three files for each simulation, one for each waveband. There this demonstration simulation will produce six maps, one in each waveband and scan direction. Additional output maps such as weights maps, and coverage maps can also be output via the inclusion of keywords when calling the sps_pipe command. For information on these options see the map-making section of the SPS custom pipeline.

The output maps are shown in the figure below: the output from the three wavebands are shown across the page running from 250 to 500 um, and the horizontal and vertical scans outputs are shown in each column.

Image showing the output maps from the sample simualtion


5.3   Other useful routines

In addition to the required pipeline routines, there are two additional routines included in the SPS distribution. They are located in the 'OtherPros' directory within the main SPS installation directory. These routines are read_SPS_data.pro, and convolve_map.pr

read_SPS_data: This routine simply loads the data from a simulation output file. The routine is called from the IDL command line, and any of the 11 data structures used by the simulator can be loaded by setting the appropriate keywords, e.g.:

IDL> read_SPS_data, 'file', obsfun=obsfun, sampling=sampling

This call would load the observatory functions and detector sampling data structures (containing the telescope pointing and sampled detector timelines respectively) from the 'file' (NB: file must be a string containing both the file name and file path). Any number of structures can be loaded at once, and the full list of keywords is given in the example call below:

IDL> read_SPS_data, 'file', core=core, sky=sky, obsfun=obsfun, bsm=bsm, optics=optics, thermal=thermal, background=background,  astropower_astropower, detectors=detectors, sampling=sampling, hk=hk

convolve_map: The convolve map routine generates a SPIRE beam convolved version of an input map. This provides the noiseless convolved map for comparison with the simulated output map. This routine is called from the IDL command line, andwill produce one convolved map per call. The calling sequence is:

IDL> convolve_map, file, PSW=PSW, PMW=PMW, PLW=PLW, Jy_per_beam=Jy_per_beam

Where the 'file' is the name and path of the input map file. If no file name is specified a browser will open in order for the user to select a file. One of the band PSW, PMW, or PLW keywords must be set in each routine call. The routine will then convolve the input file with this beam model. The default units of the output map is Jy/pixel, unless then Jy_per_beam keyword is set, in which case the unit will be Jy/beam. The output map is placed in the same location as in input map, and has the same name, but with a 'PXW_convol' suffix. The 'X' in this case will vary depending on the beam model chosen.

data_level_converter: This routine converters the nominal raw simulator output file from a level 0 product (raw timelines in engineering units) to either a level 0.5 (voltage timelines) or level 1.0 (flux calibrated timelines) product.

IDL> data_level_converter, file, LEVEL=level

If the level keyword is not specified then level 1 is assumed.

6.    Modules

6.1   Core

The core module does not represent a real physical part of the SPIRE photometer. Instead it contains all of the parameter information relating to the operation of the SPS. The core GUI window contains 11 fields, one for each variable. The first two variables deal with simulator internal operations, while the remaining 9 select the simulator output options. The function of each parameter is explained below. The units, and nominal values where appropriate, for each parameter are also shown in brackets after the parameter name.

Number of Runs: This parameter defines the number of times the simulator will run. This parameter is used to allow multiple simulations to be performed in a batch mode. For information of batch simulations see the section on multiple simulations.

Simulator Time Step (21e-3 s): The simulator time step defines the resolution at which the simulator runs it's internal clock. This should always be smaller than the time step for the readout of the detectors. A small time step means a high resolution simulation, and therefore a longer computer run-time. The optimal time step is approximately one third of the detector readout sampling time step. NB: the value for this parameter is set in seconds, and should be input using the form shown in the default example.

File path: This parameter is the location path for the output file. If no output path is given then the simulation output will be placed in the default output folder within the main SPS_V2-2 folder.

File name: This parameter sets the name for the output file.

Mode (1):
This parameters selects the output format of the data, either an IDL xdr file (1), or FITS file (1) can be output. NB: only the FITS file output is compatible with the SPS pipeline converter.

Include sky maps? (0):
This parameter can have values of 1 and 0. When set to 1 the input sky maps are included in the simulation output. When set to 0 they are omitted from the output file.


Include astronomical power timelines? (0): This parameter can have values of 1 and 0. When set to one the astronomical power timelines computed within the simulator are included in the simulation output, otherwise they are omitted from the output file.

Include noiseless detector voltage timelines? (0): This parameter can have values of 1 and 0. When set to one the a noiseless version of the raw detector output voltages are included in the output file.

Include noisy unfiltered detector timelines? (0): This parameter can have values of 1 and 0. When set to one the a version of the raw detector output voltages which include photon, Johnson, and amplifier noise are included in the output file.

Include nominal SPIRE output timelines? (1): This parameter can have values of 1 and 0. When set to one the nominal SPIRE photometer data timelines are included in the output file. These are digitised data with the appropriate 16-bit offset removed. These timelines represent data at the level-0 stage in the SPIRE pipeline.

Include background power timelines? (0): This parameter can have values of 1 and 0. When set to one the background power from the telescope's optical elements, incident on the detectors, are included in the simulation output.

HIPE compatibile output (0/1): This parameter swtiches on/off the Herschel pipeline (HIPE) output simulation compatibility. This parameter should be set to 1 for the output to be useable in HIPE via the pipeline converter.

6.2.   Sky

The sky module allows the user to specify the input sky for a simulation. Three equally sized input files are required in fits format, one for each photometer band. The resolution of the input skies must be the same in all three bands, and should be small with respect to the smallest beam (18 arcsec). Details for each parameter are given below. The units, and nominal values where appropriate, for each parameter are also shown in brackets after the parameter name.

Sky resolution (2 arcsec/pixel): This parameter defines the resolution of the input sky map. The resolution is taken to be the same for each photometer band. The pixel size should be small with respect to the smallest SPIRE beam size (18 arcsec), and must be an integer value. The pixels are assumed to be square, with the value specified being the scale along one size of the pixel.

PSW sky file: This parameter specifies the input sky file for the 250um band. Selection of the file is possible via a browser window, which is brought up when the selection box to the right of the text field is clicked. For maximum efficiency fidelity it the input maps should contain real positive data in all pixels. If only a file name is supplied (i.e. no file path) then the input sky file is assumed to be in the default 'skies' folder, contained within the main SPS installation directory.

PMW sky file: This parameter specifies the input sky file for the 360um band. Selection of the file is possible via a browser window, which is brought up when the selection box to the right of the text field is clicked. For maximum efficiency fidelity it the input maps should contain real positive data in all pixels. If only a file name is supplied (i.e. no file path) then the input sky file is assumed to be in the default 'skies' folder, contained within the main SPS installation directory.

PLW sky file: This parameter specifies the input sky file for the 500um band. Selection of the file is possible via a browser window, which is brought up when the selection box to the right of the text field is clicked. For maximum efficiency fidelity it the input maps should contain real positive data in all pixels. If only a file name is supplied (i.e. no file path) then the input sky file is assumed to be in the default 'skies' folder, contained within the main SPS installation directory.

Beam convolution required? (1): This parameter instructs the simulator whether or not convolve the input maps with the telescope beams (1 = convolution, 0= no convolution). It is recommended that the user allows the simulator to perform this convolution as the it will use the most recent beam models available.

6.3.    Observatory Function

The observatory function module allows to user to define the type of observing function to be simulated, and it's required parameter inputs. It also provides a visual representation of the observing pattern plotted on top of the unconvolved input map. There are two versions of this parameters window, a common user mode, and an expert mode. The common user mode provides access to HSPOT style observing parameter options, while the expert mode allows the user a far wider selection of options. It should be noted however that only the common user observing options will be available for use in the real system. It is recommended the most users use the common user mode options. The expert options can be accessed by using the /expert keyword when calling the sps_gui from the command prompt.

The user defined parameters for the common user mode are described below, and the units, and nominal values where appropriate, for each parameter are also shown in brackets after the parameter name. Since a description of the expert mode parameters is of limited interest to the majority of readers, this information has been place in Appendix II.

Observing Function: The observing function is an integer number which defines which observing function is to be simulated. It was found that only three of the original six observing functions were required. These are defined in Table 1 below. The number 2, 3, or 5 specified here should be the value input to the parameters window to achieve each observing mode.

Observation HSPOT name Photometer Observing Function (POF) Number
Point source photometry Point source 2
Field (jiggle) mapping Small map 3
Scan mapping Large map 5

Table 1: Definition of the available observing modes

Map centre position in RA (h:m:s, or deg.): This parameter specifies the centre of the observation in right ascension (RA). The input value be specified as either h:m:s or degree specified as a decimal.

Map centre position in DEC (h:m:s, or deg.): This parameter specifies the centre of the observation in declination (DEC). The input value be specified as either h:m:s or degree specified as a decimal.

POF 2,3: Number of repetitions: This parameter specifies the number of repeat POF 2/3 maps to be performed.

POF 2,3: Nod operation (1): Flag to turn telescope nodding on (1) and off (0).

POF 5: Line length (arcmin): This parameter simply specifies the length of the on map scan line. Additional data will be taken at each end of this scan line associated with the telescope turn around.

POF 5: Map height (arcmin): This parameter defines the height of the on map in arcminutes.

POF 5: Scan rate (Nominal = 0, Fast = 1): This parameter specifies the telescope scanning rate in a POF 5 observation. This parameter can have values of 0 and 1, corresponding to the nominal (30"/s) and fast (60"/s) scanning speeds as defined in HSPOT. Note that the nominal scanning speed is equal to the 'slow' speed when using parallel mode.

POF 5: Scan direction (A, B, PA, PB): This parameter specifies the scanning 'magic' angle of the array on the sky. The 'A' and 'B' options are equivalent to those stated in HSPOT. There is no option to perform the 'A and B' option; instead two separate simulated observations must be performed, one scanning at each angle. The 'PA' and 'PB' option sets up the same 'A' and 'B' scans but for parallel mode.

Number of repetitions: This parameter specifies the number of repetitions required for this particular observing run. All repetitions will be simulated before moving on to the next simulation run (when more than one run is requested). The output file name for a given run will be suffiexed with the repetition number. See section 3.1 for addtional information

Rotation of bolometer array on the sky (0.0): This parameter applies a rotation to the bolometer array on the sky. When this parameter is adjusted the scan pattern also changes equivalently to maintain the correct scanning angle (direction) defined abive.

Telescope absolute pointing error (3.7 arcsec): The absolute pointing error is the 1-sigma absolute error in the initial pointing of the telescope. While the nominal value for this parameter is 3.7 arcsec., in many cases it is useful to set this value to zero.

Telescope drift (0.0 arcsec/sec): The telescope drift parameter is a 1-sigma velocity drift in a random direction. It therefore implements a random, and constant, linear drift throughout the observation. There is no known nominal value for this parameter, therefore the user is recommended to use a value of 0.0 for now.

The observing function visulaiser: The observatory function visulaiser window can be used to display the observing pattern for the current parameters set in the parameters window. The pattern is displayed on top of an unconvolved input sky image. Initially the visuliser will appear blank; to display the observing pattern click on the 'Realise Observing Function' button below the display window. Each scan line performed by the array is shown on the map, and equates to an on-map region, i.e. the commanded map area. A dashed line is also shown which shows the SPIRE array centre throughout the entire observation, including telescope turn around.

When performing a POF 4 jiggle map three boxes will appear at the target location. The centre box represents the target source, and the other two boxes the two telescope nod positions.

If you are setting up multiple observations you can display the different observations by changing the number in the 'Choose simulation number' box. Pressing the 'Realise Observing Function' button again will refresh the display with the new observing pattern.

6.4    BSM

The BSM module does not contain any user defined parameters. The button remains on the SPS GUI console as a place holder for possible use in future versionsof the SPS. Parameters used to set up chopped and jiggled observations are contained within the Observatory Functions parameter window.

6.5 Optics

There are three user defined parameters in the optics module, as well as in interface in which the user can select the operational detectors. The units, and nominal values where appropriate, for each parameter are also shown in brackets after the parameter name.

optics GUI imageField distortion (1): The parameter is a flag to tell the simulator to use the measured field distortion in each array (1), or to assume no field distortion (0).

SPIRE FOV offset - z-axis (0 arcsec): The value of this parameter sets the offset of the SPIRE array borsight with respect to the telescope boresight along the z spacecraft coordinate axis.

SPIRE FOV offset - y-axis (659 arcsec): The value of this parameter sets the offset of the SPIRE array borsight with respect to the telescope boresight along the y spacecraft coordinate axis.

Pixel Selection (button): Pressing this button will bring up a new window displaying each of the three detector arrays. Each detector is represented by a check-box. Selecting a check-box for a particular detector indicates that that detector will operate in during the simulation. In addition to the check-boxes for each array, there are three additional boxes at the bottom of the window, 'All Pixels', 'All coaligned pixels', and '1 centralised pixel per band'. Checking the 'All Pixels' box will result in all detectors operating. NB: this is the recommended and nominal mode of operation. The 'All coaligned pixels', and '1 centralised pixel per band', operate only the coaligned pixels, and a single pixel in the centre of each array respectively. In addition to the selected pixels, the thermometers and dark pixels will always operate.

6.6    Thermal

The thermal module simulates thermal variations in the SPIRE photometer system. Thermal noise as defined here is unwanted variation in the thermal environment of SPIRE, and does NOT relate to Johnson or any other kind of noise processes within the detectors or read-out electronics.

At present the in-flight thermal environment of SPIRE is not well known, and thus the model used to simulate the thermal time lines is relatively crude. At present a thermal noise time line is generated with a given noise spectral density, and 1/f noise knee frequency. This time line is then low-pass filtered assuming an RC circuit filter profile. This represents physically the coupling of the  cooler tip to the detector arrays, which represent a large thermal mass. The time constant is different for each detector array, representing the different distances between each array and the cooler tip. For more information on this modelling see the SPS document.

At present most of the nominal values stated here are crude estimates, chosen to produce characteristic time lines, and should not be considered correct at this point. As a result these parameters should not be changed without input from a member of the instrument team.

Thermal noise (0): This parameter turns the thermal noise on (1) and off (0). At the time of writing this document there are no routines within either the SPIRE pipeline or SPS custom pipeline to remove the thermal noise drift, hence the nominal value is set to 0. This is expected to change to 1, however, once the required routines are available.

Nominal cooler temperature (0.3 K): This value specifies the nominal cooler (and thus also detector array) temperature.

Thermal noise spectral density (5e-5 KHz-1/2): This parameter defines the noise spectral density, i.e. the noise level.

Thermal noise knee frequency (0.1 Hz): This parameter states the 1/f noise knee frequency.

Thermal time constant in PSW band (70.0 s): This parameter specifies the time constant used in the low-pass RC filter for the PSW array.

Thermal time constant in PMW band (100.0 s): This parameter specifies the time constant used in the low-pass RC filter for the PMW array.

Thermal time constant in PLW band (130.0 s): This parameter specifies the time constant used in the low-pass RC filter for the PLW array.

6.7    Background

The background module defines the background power on the detectors from the optical elements in the system. There are only two user defined parameters in this module, both relating to the temperature gradient across the primary mirror. The nominal values stated here are rough estimates, and are given to allow characterisation of this systematic affect.

background GUI imageThermal gradient - z axis (0.00): This parameter specifies the fractional temperature gradient across the SPIRE field of view in the z telescope axis. This is the Earth-Sun direction, hence a temperature gradient of 2% is assumed. Since no routines are currently written to remove this affect from the data however, a nominal value of 0.0 is used. This will change once the require routine is present in the pipeline.

Thermal gradient - y axis (0.00): This parameter specifies the fractional temperature gradient across the SPIRE field of view in the y telescope axis. This is perpendicular to the Earth-Sun direction and is therefore assumed to be uniform (0.0).

 6.8  Astropower

The astropower module does not contain any user defined parameters. The button remains on the SPS GUI console as a place holder for possible use in future versions of the SPS.

  6.9    Detectors

The detectors module simulates the detector response to the total (background + astronomical) power seen by the detectors during a observation. The photon, Johnson, and amplifier noises are also added to the noiseless time lines within this module if requested.

Johnson + Photon noise (1): This parameter turns the noise generation in this module on (1) and off (0).

1/f noise (1): This parameter selects either white noise (0) or 1/f noise (1). If the user has selected to turn the noise off via the previous parameter, then the value of this parameter is not used.

1/f noise knee frequency (0.1 Hz): This parameter specifies the 1/f noise knee frequency when the operating with 1/f noise.

Real bolometer parameters (1): This parameter allows the user to use the bolometer parameters as measured in the instrument flight module test campaign (1), or the design bolometer parameters (0). When using the design parameters all detectors are assumed to be working, and to have identical values. When operating with the measured parameters (1) the measured 1/f noise knee frequency is used, overriding the value specified in the previous parameter.

PSW Voltage bias (21.2 mV): This parameter defines the RMS voltage bias across the detector for the PSW array.

PMW Voltage bias (21.2 mV): This parameter defines the RMS voltage bias across the detector for the PMW array.

PLW Voltage bias (21.2 mV): This parameter defines the RMS voltage bias across the detector for the PLW array.

  6.10   Sampling

The sampling module simulates the on-board SPIRE read-out electronics and samples the data at the requested rate. The data are filtered, and digitized in this process. The output data are in ADU, and have had the appropriate offset removed (see SPS document for details).

Sampling frequency (16 Hz): This parameter is the detector readout sampling frequency.

Sampling (1): This parameter selects whether the data pass through this module (1) or not (0). If this parameter is set to 0 then this module is by-passed and no output is generated.

AC bias frequency (130.0 Hz): This parameter sets the detector read-out bias modulation frequency. The value of this parameter should only be changed by an expert user.

JFET harness capacitance (50e-12 F): This parameter defines the capacitance of the JFET harness. The value of this parameter should only be changed by an expert user.

Demodulator phase difference between reference and input sources (0.0 deg.): This parameter specifies the phase difference between reference and input sources in the demodulator. The value of this parameter should only be changed by an expert user.

  6.11   House Keeping (HK)

The house keeping module creates level-0 keeping data, in hexadecimal format, corresponding to the chosen observing function. There are two user defined parameters in this module.

HK GUI imageHK sampling frequency (1 Hz): This parameter specifies the output sampling frequency for the house keeping data time lines.

Observation ID number: The observation ID number is an integer value (not hexadecimal) which is chosen by the user as a reference for the simulation to be performed. This value is simply a the OBSID counter, and not the full OBSID parameter. A typical value for this parameter would be 1.


7.   Known Issues

It is possible to access the list of known SPS issues and bugs via the SPS website - www.roe.ac.uk/~sib/SPS. Here you'll find a list of all of the bugs people have reported, and the action taken on each item. Patches and upgrades will become available to download as required. This section is expected to grow as the number of users increases. Please report all feedback to Bruce Sibthorpe at sib *at* roe.ac.uk, replacing the *at* in the normal way.


8.   Software Usage Permissions

This software is a tool of the SPIRE Instrument Control Centre (ICC) team. It is not to be distributed outside of the ICC without express permission of the author. The software is not be used for observing time estimation, and the sensitivities derived using this software should be considered subordinate to those quoted in the Herschel observation planning tool HSPOT. In order to reference this software in any documentation, please contact the author for the details of the official SPS paper, which is currently in prep.

Terms and Conditions of use:
This software may be used free of charge only for non-commercial research purposes. All copies of this software must contain this copyright statement and disclaimer. In the interests of avoiding the propagation of modified versions of the SPS, we would request that you do not edit or redistribute this software without first contacting the author, or a member of the SPS team. Instead, the latest version may be obtained from the United Kingdom Astronomy Technology Centre at www.roe.ac.uk/~sib/SPS.html.

The author also requests that any work resulting from the use of this simulator contain a reference to the SPS published A&A paper, along with the acknowledgement contained on the SPS website.

Disclaimer:
This software is available "as is", without warranty of any kind either expressed or implied, including the implied warranties of merchantability and fitness for a specific purpose.  By using this software you are assuming all risks and costs.  In no event is the United Kingdom Astronomy Centre, or the Science and Technology Facilities Council liable for any damages or losses that might result from the use of this software.


9.   Useful Documents

Document

Ref.

Comments

Operating Modes for the SPIRE Instrument (Chap. 5)

SPIRE-RAL-PRJ-000320; Issue 3.0, 4 January 2002

Describes the basic operations of chopping and nodding, and outlines the different observing modes and their parameters. 

SPIRE Sensitivity Models

SPIRE-QMW-NOT-000642; 21 May 2007

Presents detailed calculations of the instrument sensitivity in various observing modes, and summarises the values of various telescope and instrument parameters.  Simulator results should be basically compatible with it.

Herschel/Planck Instrument Interface Document Part A

SCI-PT-IIDA-04624
Issue 3, 1 July 2002

Provides information on Herschel pointing and slewing capabilities and parameters in Section 5.12

Herschel Pointing Modes

SCI-PT-RS-07725; Issue 3.0, 24 May 2002

Describes the Herschel pointing modes. Note: this doc. Is also Annex 4 of the IID-A

Herschel/SPIRE Detector Control Unit Design Document

SAp-SPIRE-FP-0063-02; Issue 0.3, 18 February 2003

Describes how the bolometer signals are processed and digitised by the DCU electronics

SPIRE Filter Specification Document

SPIRE-QMW-PRJ-000454

Issue: 2.2, 29 October 2002

Summarises the location of and requirements for the filters and dichroics.

Relative performance of filled and feedhorn-coupled focal plane architectures

Griffin, Bock, and Gear, Applied Optics 41, 6543, 2002.

Presents a general treatment of the performance of feedhorn-coupled detector arrays.

The SPIRE Analogue Signal Chain
and Photometer Detector Data Processing Pipeline

SPIRE-UCF-DOC-002890, Issue 2, 19 July 2007

 

Describes the analogue signal chain and photometer data processing pipeline, as implemented in this simulator.

SPIRE AOT Implementation Document

SPIRE-RAL-DOC-002663, draft 2, 15 January 2008

Describes the definition of the various house keeping parameters throughout the course of all observing modes.

Herschel Straylight Calculation Results

HP-2-ASED-TN-0023, 29 September 2004

Report on stray light in the Herschel telescope.

SPIRE Photometer Simulator

SPIRE-UCF-DOC-003094, Issue 2.0 (this document)

Describes the modelling and architecture of the photometer simulator



Appendix I: The IDL startup file

The IDL startup file is an IDL program file which is run each time IDL is started. A sample IDL startup file called start_up_example.pro is located in the SPS release. This can be edited, and used as required. This file is used to load your personal preferences.

The startup file can be specified in two ways, depending on the system you are using:

Windows: In windows IDL is accessed by the IDL development environment (IDLDE). The startup file can be specified by first clicking on the 'File' menu, and selecting 'Preferences'. This will load up the preferences window. Select the 'Startup' tab from this window, and enter the location, and name of your startup file. Alternatively you can use the 'Browse' button to navigate to your chosen file.

UNIX, LINUX, MAC OS: While IDL can be used via the IDLDE in this operating system, and the startup file selected in the same way as in Windows, it is not generally used. The startup file is more normally specified by setting the 'IDL_STARTUP' environment variable in the users .cshrc, or .tcshrc file, .e.g.:

setenv IDL_STARTUP /home/user/.idl_startup

Once the modificed .cshrc or .tcshrc file has been sourced, IDL will run the startup file upon initiallisation of each IDL session.


Appendix II: Expert Observatory Function Parameter Options

Observing Function: The observing function is an integer number which defines which observing function is to be simulated. It was found that only three of the original six observing functions were required. These are defined in Table 1 below. The number 2, 3, or 5 specified here should be the value input to the parameters window to achieve each observing mode.

Observation HSPOT name Photometer Observing Function (POF) Number
Point source photometry Point source 2
Field (jiggle) mapping Small map 3
Scan mapping Large map 5

Table 1: Definition of the available observing modes

Map centre position in RA (h:m:s, or deg.): This parameter specifies the centre of the observation in right ascension (RA). The input value be specified as either h:m:s or degree specified as a decimal.

Map centre position in DEC (h:m:s, or deg.): This parameter specifies the centre of the observation in declination (DEC). The input value be specified as either h:m:s or degree specified as a decimal.

Telescope absolute pointing error (3.7 arcsec): The absolute pointing error is the 1-sigma absolute error in the initial pointing of the telescope. While the nominal value for this parameter is 3.7 arcsec., in many cases it is useful to set this value to zero.

Telescope drift (0.0 arcsec/sec): The telescope drift parameter is a 1-sigma velocity drift in a random direction. It therefore implements a random, and constant, linear drift throughout the observation. There is no known nominal value for this parameter, therefore the user is recommended to use a value of 0.0 for now.

POF 2,3: Chop throw (126.0 arcsec): This parameter defines the chop throw of the BSM during POF 2 and 3 observations.

POF 2,3: Chop direction wrt z axis (90 deg.): This parameter defines the chop direction, with respect to the z-spacecraft axis, during POF 2 and 3 observations.

POF 2,3: Chop frequency (2.0 Hz): This parameter defines the BSM chop frequency during POF 2 and 3 observations.

POF 2,3: Chop cycles per jiggle position (16, 4): The parameter specifies the number of chop cycles are performed in each POF 2/3 jiggle position. The nominal values stated are for POFs 2 and 3 respectively.

POF 2,3: Nod operation (1): Flag to turn telescope nodding on (1) and off (0).

POF 2,3: Nod throw (126.0 arcsec): This parameter specifies the angular scale between telescope nod positions. Nominally it should be equal to the chop throw.

POF 2,3: Jiggle positions per nod cycle (8, 16): This parameter defines the number of jiggle positions per nod cycle. The nominal values stated are for POFs 2 and 3 respectively.

POF 2,3: Number of nod cycles per sub-map (2): This parameter defines the number of nod cycles per 'sub-map'. One POF 3 map is made up of 4 separate 16 point sub-maps. Therefore there are 8 nod cycles in total in a POF 3 observation. POF 2 contains no sub-maps, making the total number of nod cycles in a POF 2 observation 2.

POF 2,3: Number of repetitions: This parameter specifies the number of repeat POF 2/3 maps to be performed.

POF 2: Grid spacing (arcsec): This parameter applies only to the POF 2 mode, and specifies the separation of the different chop positions within the 7 point map.

POF 5: Number of line scans: This parameter denotes the number of line scans to be performed in a POF 5 (scan map) observation. The value stated must be an integer.

POF 5: Line separation (arcsec 348.0): This identifies the separation between POF 5 line scans. The separation varies depending on the scanning angle chosen. The nominal value shown here corresponds to a scan along the diagonal axis (the only axis allowed within HSPOT).

POF 5: Scan rate (30.0 arcsec/sec): This parameter specifies the telescope scanning rate in a POF 5 observation. This value corresponds to the HSPOT 'nominal' value as selected in the SPIRE large map option window, and 'slow' in the SPIRE/PACS parallel mode option window. For the 'fast' option in both HSPOT windows a scan rate of 60 arcsec/sec should be selected.

POF 5: Line length (arcsec): This parameter simply specifies the length of the on map scan line. Additional data will be taken at each end of this scan line associated with the telescope turn around.

POF 5: Scan direction (42.4 or -42.4 deg.): This parameter specifies the scanning 'magic' angle of the array on the sky. There are two nominal values, corresponding to the two  orthogonal scan direction used when cross-scanning (required for use with MADmap). The 42.4 degree angle corresponds to scan angle 'A' defined in the SPIRE large map mode window in HSPOT, and -42.4 with angle 'B'.

POF 5: Telescope acceleration (3.0 arcsec/sec2): This parameter defines the telescope acceleration and deceleration rate. This value should be set to the nominal value in almost all cases.

POF 5: Rotation of scan pattern on the sky (-2.6 or 87.4 deg.): This parameter applies a rotation to the scan pattern on the sky. The nominal values stated here correspond to the nominal scan direction values respectively. These values will result in the telescope scanning approximately along the map RA and DEC axes, thereby observing the majority of a square input map. This make optimal use of the input map, and ensures that the majority of sources within the map are observed.

The observing function visulaiser: The observatory function visulaiser window can be used to display the observing pattern for the current parameters set in the parameters window. The pattern is displayed on top of an unconvolved input sky image. Initially the visuliser will appear blank; to display the observing pattern click on the 'Realise Observing Function' button below the display window. Each scan line performed by the array is shown on the map, and equates to an on-map region, i.e. the commanded map area. A dashed line is also shown which shows the SPIRE array centre throughout the entire observation, including telescope turn around.

When performing a POF 4 jiggle map three boxes will appear at the target location. The centre box represents the target source, and the other two boxes the two telescope nod positions.

If you are setting up multiple observations you can display the different observations by changing the number in the 'Choose simulation number' box. Pressing the 'Realise Observing Function' button again will refresh the display with the new observing pattern.