next up previous 62
Next: COMPLEX_ARRAY Structure
Up: ARRAYStructure
Previous: [VARIANT] = `SPARSE'

[VARIANT] = `POLYNOMIAL'

The array is represented by an $n$-dimensional polynomial. (This variant does not conform to the guideline about variants since conversion of an array of numbers to a polynomial requires additional information. However, for clarity and because the reverse operation is possible--polynomial to an array of numbers--a variant of $<$ARRAY$>$ has been used.)


Table: Components of $<$ARRAY$>$ Structure, [VARIANT] = `POLYNOMIAL'
Component Name TYPE Brief Description
[VARIANT] $<$_CHAR$>$ `POLYNOMIAL'
[ORIGIN(NAXIS)] $<$integer$>$ origin of the data array
[DATA] $<$POLYNOMIAL$>$ polynomial representing array
[DIMENSIONS(NAXIS)] $<$integer$>$ dimension of equivalent
    $<$numeric$>$ array

NAXIS
The number of axes in the array being represented.
[ORIGIN]
The pixel origin in each dimension. If this object is not present, each origin is assumed to be 1. This avoids recomputing the polynomial coefficients if a subsection of a larger array is created.
[DATA]
The NAXIS-dimensional polynomial representing the array of numbers. Mandatory. The equivalent primitive type has the same TYPE as the polynomial coefficients. To generate the equivalent primitive array, the polynomial is evaluated at pixel centres, which start at 0.5 for the first pixel given a uniform bin.
[DIMENSIONS]
This array contains the axis dimensions of the full data array. It is used to generate the equivalent $<$narray$>$. Mandatory.

The `SPACED' variant may appear merely to be a degenerate form of the `POLYNOMIAL' variant. However, there are reasons for having a `SPACED' variant:

To reiterate, general-purpose applications will be able to process $<$ARRAY$>$ structures, though their performance will be degraded when the [VARIANT] is not `SIMPLE' because of the extra processing required. These options do not create a significant overhead for the normal case, the base variant. When the [VARIANT] is not `SIMPLE', users will probably be warned that their data are in a special format, be given the option to abort the application, and be directed to documentation for applications better suited to the data.


next up previous 62
Next: COMPLEX_ARRAY Structure
Up: ARRAYStructure
Previous: [VARIANT] = `SPARSE'

Starlink Standard Data Structures
Starlink General Paper 38
Malcolm J Currie, P T Wallace &
R F Warren-Smith
1989 January 20
E-mail:ussc@star.rl.ac.uk

Copyright © 2008 Science and Technology Facilities Council