Keywords: sic-gdfv2

Next: Improvements between GDFV1 and Up: Type description Previous: Header description Contents

### Data description

The kind of data stored is described by the parameter `form` in the leading information of the header (see section 3.1.1). In most radioastronomy applications, single precision floats are sufficient: The code `fmt_r4` is used by default, but double precision floats (`fmt_r8`), standard (`fmt_i4`), or long integers (`fmt_i8`), and single precision complex (`fmt_c4`) are also supported.

As for the header parameters, the values are stored in the native system of the machine (little endian or big endian) at the file creation time. The codes detailed in table 1 ensure that the values can be re-read and updated by any system.

The data is stored in the file in column-major order (Fortran-like). Its dimensions are described by the dimension section. While using standard (32 bits) or long (64 bits) integers when in memory (depending on the hardware capabilities), they are always stored in the file as long integers. The limit is then elements per dimension. The total number of elements in the data uses the same limit. Note that cubes larger than 2 GB (512 mega-elements of single precision floats) reach the RAM limit of 32 bits machines. This means that the whole data block cannot fit in memory. Such big data files ( GB) are not supported on 32 bit machines.

The parameters `nhb` and `ndb` indicate the number of header blocks, and of data blocks, respectively. Moreover, the parameter `ntb` has been provisioned to handle trailing blocks after the data. All blocks are 512 Bytes long in the current version, but the total number of blocks `nhb+ndb+ntb` is rounded (upwards) to a multiple of 16, so that reading can proceed with physical blocks of 8192 Bytes for better efficiency. A particular effort has also been made here to ensure that there is no `integer(4)` limit on the number of Fortran records (blocks) in the file, i.e., all computations and descriptive numbers related to records use `integer(8)` values.

Next: Improvements between GDFV1 and Up: Type description Previous: Header description Contents