next up previous contents
Next: General Concepts of the Up: OBSERVING version 1.2 Previous: Introduction

Real Versus Integer Data Files

The decision to use integer files rather than real ones was made in the interest of conserving disk space. However, there is a serious consequence to be borne in mind. Integers stored in the VAX range from -32767 to +32767. All overflows or underflows resulting from floating point numbers being transformed into integers or integers being summed or multiplied, etc. are translated to -32767. This is no problem for frames containing original data, as the CCD readout never gets above 32767 anyway. But once one begins to do arithmetic operations on integer frames, overflows or underflows may occur. In all the words which have been written for OBSERVING, we have tried to ensure that all arithmetic operations internal to a given command are done in floating point when desirable, and only the final answer is stored as an integer array. However, overflows are possible in the final conversion, particularly in the flattening of direct images (see the notes on DFLAT in Section XIV). If overflows or underflows occur, a message is typed out indicating how many pixels were affected.

FIGARO itself, when starting with an integer frame, will create output two dimensional frames which are also integer. Depending on the exact command used, the internal calculations may be done in floating point or may be done in integer. Many commands have been slightly recoded for maximum speed with integer files, and in such cases the internal calculations are done with short integer arrays, unless it is obvious that use of short integer arrays compromises the accuracy of the result. If you create a 1d extraction (i.e., a spectrum) out of an integer frame, the 1d spectrum is always real (floating point) rather than integer.


next up previous contents
Next: General Concepts of the Up: OBSERVING version 1.2 Previous: Introduction
Patrick Shopbell
7/2/1998