Like all NDF components, each axis component has a logical state attribute associated with it which indicates whether or not it has a previously-assigned value. The state of an axis component may be determined by using the routine NDF_ASTAT, specifying the component name and the number of the axis about which information is required, as follows:
INTEGER IAXIS
LOGICAL STATE
...
CALL NDF_ASTAT( INDF, 'Width', IAXIS, STATE, STATUS )
In this example, a .TRUE. result would be returned via the logical STATE argument if values had previously been assigned to the width array of the axis identified by the IAXIS argument.
Unlike other NDF components, no error will result from attempting to read the value of an axis component while it is in an undefined state. This is because the NDF_ system will always supply a default value if necessary. Thus, an axis component's state merely serves to indicate whether a pre-assigned value will be used, as opposed to an internally-generated default.
NDF_ASTAT will also accept a list of axis component names and will return the logical ``AND'' of the results for all the specified components. An IAXIS value of zero may also be supplied to indicate that all the NDF's axes should be considered at the same time. Thus, the single call:
CALL NDF_ASTAT( INDF, 'Label,Units', 0, STATE, STATUS )
could be used to determine whether all the NDF's axes had previously-assigned values for both their label and units components.