PDS_VERSION_ID = PDS3 RECORD_TYPE = STREAM SPACECRAFT_NAME = MAGELLAN TARGET_NAME = VENUS OBJECT = TEXT PUBLICATION_DATE = 1997-08-01 NOTE = "Software Interface Specification V1.0" END_OBJECT = TEXT END SOFTWARE INTERFACE SPECIFICATION SPHERICAL HARMONICS ASCII DATA RECORD (SHADR) prepared by Richard A. Simpson Durand Bldg - Room 232 Stanford University Stanford, CA 94305-4055 Version 1.0 11 June 1993 Acronyms and Abbreviations ANSI American National Standards Institute ARCDR Altimetry and Radiometry Composite Data Record ASCII American Standard Code for Information Interchange CCSDS Consultative Committee for Space Data Systems CNES Centre National d'Etudes Spatiales CR Carriage Return dB Decibel DEC Digital Equipment Corporation DSN Deep Space Network FEA Front End Assembly GSFC Goddard Space Flight Center IEEE Institute of Electrical and Electronic Engineers IAU International Astronomical Union JPL Jet Propulsion Laboratory J2000 IAU Official Time Epoch K Degrees Kelvin kB Kilobytes km Kilometers LF Line Feed MB Megabytes MO Mars Observer NAIF Navigation and Ancillary Information Facility NASA National Aeronautics and Space Administration NAV Navigation Subsystem/Team ODL Object Definition Language (PDS) PDB Project Data Base PDS Planetary Data System RS Radio Science SCET Space Craft Event Time SFDU Standard Formatted Data Unit SHADR Spherical Harmonics ASCII Data Record SHBDR Spherical Harmonics Binary Data Record SHM Spherical Harmonics Model SIS Software Interface Specification SOPC Science Operations Planning Computer SPARC Sun Scaleable Processor Architecture SPK Spacecraft and Planet Kernel Format, from NAIF TBD To Be Determined TDB Temps Dynamique Barycentrique - IAU Standard Ephemeris Time 1. General Description 1.1. Overview This Software Interface Specification (SIS) describes Spherical Harmonics ASCII Data Record (SHADR) files. The SHADR is intended to be general and may contain coefficients for spherical harmonic expansions of gravity, topography, magnetic, and other fields. 1.2. Scope The format and content specifications in this SIS apply to all phases of the project for which a SHADR is produced. The SHADR has been defined initially for gravity models derived from Magellan (MGN) and Mars Observer (MO) radio tracking data [1], but the format is more generally useful. Specifics of the various models are included in [2], which will be updated as data for new spherical harmonic models are incorporated within the SHADR definition. A Spherical Harmonic Binary Data Record is also defined [3], which may be more suitable for large models or when all covariances will be included in the final product. The Magellan and Mars Observer Missions are managed by the Jet Propulsion Laboratory (JPL) for the National Aeronautics and Space Administration. 1.3. Applicable Documents [1] Tyler, G.L., G. Balmino, D.P. Hinson, W.L. Sjogren, D.E. Smith, R. Woo, S.W. Asmar, M.J. Connally, C.L. Hamilton, and R.A. Simpson, Radio Science Investigations with Mars Observer, J. Geophys. Res., 97, 7759-7779, 1992. [2] Simpson, R.A., Interpretation and Use of Spherical Harmonics ASCII Data Record (SHADR) and Spherical Harmonics Binary Data Record (SHBDR), Version 1.0, 1993. [3] Simpson, R.A., Software Interface Specification: Spherical Harmonics Binary Data Record (SHBDR), Version 1.0, 1993. [4] MGN 630-7, Rev. D, Magellan Planetary Constants and Models, D.T. Lyons, Mission Design, Jet Propulsion Laboratory, 9 January 1991. [5] MO 642-321, Mars Observer Planetary Constants and Models, JPL D- 3444, November 1990. [6] JJPL-0006-01-00, JPL SFDU Description and Usage. Issue 5, March 7 1988. [7] D-7116, Rev. C, Planetary Science Data Dictionary Document, PDS Version 3.0, Jet Propulsion Laboratory, 20 November 1992. 1.4. System Siting 1.4.1. Interface Location and Medium SHADR files are created at the institution conducting the science analysis. SHADR files are electronic files. 1.4.2. Data Sources, Transfer Methods, and Destinations SHADR files are created from radio tracking, vertical sounding, in situ, and/or other measurements at the institution conducting the scientific data analysis. They are transferred to and deposited in a data system specified by the managing institution. Magellan files will be deposited in a Magellan Science Workstation; Mars Observer files will be deposited in the Mars Observer Project Data Base (PDB). 1.4.3. Generation Method and Frequency Spherical Harmonic Models are developed separately at each institution conducting scientific analyses on raw data; each model meets criteria specified by the investigators conducting the analysis. Each model requires data from a large number of latitudes and longitudes, so that SHADR files will be issued infrequently and on schedules which cannot be predicted at this time. 1.5. Assumptions and Constraints 1.5.1. Usage Constraints None. 1.5.2. Priority Phasing Constraints None. 1.5.3. Explicit and Derived Constraints None. 1.5.4. Documentation Conventions 1.5.4.1. Data Format Descriptions The reference data unit is the byte. Data may be stored in fields with various sizes and formats, viz. one-, two-, and four-byte binary integers, four- and eight-byte binary floating-point numbers, and character strings. Data are identified throughout this document as char 8 bits character uchar 8 bits integer short 16 bits integer long 32 bits integer float 32 bits floating point (sign, exponent, and mantissa) double 64 bits floating point (sign, exponent, and mantissa) u (prefix) unsigned (as with ulong for unsigned 32-bit integer) other special data structures such as time, date, etc. which are described within this document If a field is described as containing n bytes of ASCII character string data, this implies that the leftmost (lowest numbered) byte contains the first character, the next lowest byte contains the second character, and so forth. An array of n elements is written as array[n]; the first element is array[0], and the last is array[n-1]. Array[n][m] describes an n x m element array, with first element array[0][0], second element array[0][1], and so forth. Floating point (real) numbers are represented as double precision character strings in the FORTRAN 1P1E23.16 format. Fixed point (integer) numbers are represented using the FORTRAN I5 format. 1.5.4.2. Time Standards SHADR files use the January 1.5, 2000 epoch as the standard time. Within the data files, all times are reported in Universal Coordinated Time (UTC) as strings of 23 ASCII characters. The time format is "YYYY-MM-DDThh:mm:ss.fff", where "-", "T", ":", and "." are fixed delimiters; "YYYY" is the year "19nn" or "20nn"; "MM" is a two- digit month of year; "DD" is a two-digit day of month; "T" separates the date and time segments of the string; "hh" is hour of day; "mm" is the minutes of hour (00-59); "ss" is the seconds of minute (00-59); and "fff" is fractional seconds in milliseconds. The date format is "YYYY-MM-DD", where the components are defined as above. 1.5.4.3. Coordinate Systems The SHADR uses the appropriate planetocentric fixed body coordinate system [4, 5]. 1.5.4.4. Limits of This Document This document applies only to SHADR data files. 1.5.4.5. Typographic Conventions This document has been formatted for simple electronic file transfer and display. Line lengths are limited to 72 ASCII characters, including line delimiters. No special fonts or structures are included within the file. Constant width characters are assumed for display. 2. Interface Characteristics 2.1. Hardware Characteristics and Limitations 2.1.1. Special Equipment and Device Interfaces Users of the SHADR product must have access to the data system (or to backup media) on which SHADR files are stored. 2.1.2. Special Setup Requirements None. 2.2. Volume and Size SHADR products have variable length, depending on the degree and order of the model and the number of tables included. A model of degree and order N will require approximately 60*N*N bytes for storage of spherical harmonic coefficients and associated uncertainties. If the covariance matrix is included, the file size will be 15*N**4 larger. For N=50, the coefficients would require approximately 160 kB and the covariances another 100 MB. Vector quantities (e.g., magnetic field) may be described by a single SHADR (in which all components are represented) or by a separate SHADR for each field component. If the single SHADR includes covariances, the file size will be approximately 27 times larger than the combined volumes of the three component files because of the inter-component covariance terms. In general, the SHBDR [3] is recommended when the data include covariances because of the smaller data volume associated with binary formats. 2.3. Labeling and Identification Each file has a name which describes its contents. The name includes the following structure which uniquely identifies it among SHADR products: SHTGnnnn.Avv where "SH" denotes that this is a file of Spherical Harmonic coefficients, "T" indicates the type of data represented "G" for gravity field "T" for topography "M" for magentic field "G" denotes the generating institution "J" for the Jet Propulsion Laboratory "G" for Goddard Space Flight Center "C" for Centre National d'Etudes Spatiales) "nnnn" is a 4-character (or fewer) modifier specified by the data producer "A" is a file name modifier denoting ASCII format "vv" is a decimal version number which is initialized at "01" for each product and is incremented by 1 for each subsequent iteration of that product. For test products, "vv" consists of the single character "T" followed by a decimal number which is initialized at "1" for each test product and is incremented by 1 for each subsequent iteration of that product. 2.4. Interface Medium Characteristics SHADR products are electronic files. 2.5. Failure Protection, Detection, and Recovery Procedures None. 2.6. End-of-File Conventions End of file labeling complies with SFDU standards (see Section 4) and with standards of the data system on which SHADR files are initially deposited. 3. Access 3.1. Programs Using the Interface Data contained in SHADR files will be accessed by programs at the home institutions of science investigators. Those programs cannot be identified here. 3.2. Synchronization Considerations 3.2.1. Timing and Sequencing Considerations N/A 3.2.2. Effective Duration N/A 3.2.3. Priority Interrupts None. 3.3. Input/Output Protocols, Calling Sequences None. 4. Detailed Interface Specifications 4.1. Structure and Organization Overview The SHADR is a file generated by software at the institution conducting scientific data analysis. It uses Standard Format Data Unit structures (SFDU) as defined in Applicable Document [6]. The overall format is illustrated in Figure 4-1. For purposes of discussion here, the structure from the first CCSDS Header through the I-Label and its associated length field will be called "The Label;" the remainder of the file is made up of the "Header Object" and up to two "results" objects. Examples of a complete Label and set of results objects are given in Appendix B. |====================================================================| | | | Figure 4-1 SHADR File - Block Format | | | |====================================================================| |T| |CCSD3ZF00001 |CCSDS Label| CCSDS | |-+-+-------------------------------------------+------------| | |L| |00000001 |Length Field| Header| |-+-+-------------------------------------------+------------+-------| |V|T|NJPL3KS0PDSX | K-Label | | | |-+-------------------------------------------+------------| | | |L|##mark## |Start Marker| | | |-+-------------------------------------------+------------| | | |V|PDS_VERSION_ID=PDS3 | Standard | | | | |FILE_NAME="SHTGnnnn.Avv" | Keywords | | | | | ... | and | | | | |SOFTWARE_NAME="cccccccc" | Values |Keyword| | | |-------------------------------------------+------------| and | | | |OBJECT=SHADR_HEADER_TABLE | | Value | | | | ROWS=nnn | | SFDU | | | | COLUMNS=nnn | | | | | | ROW_BYTES=nnn | Data | | | | | ... | Object | | | | |OBJECT=SHADR_COEFFICIENTS_TABLE | Definitions| | | | | ROWS=nnn | | | | | | COLUMNS=nnn | | | | | | ... | | | |-+-+-------------------------------------------+------------+-------| |T| |CCSD$$MARKER | CCSDS Label| CCSDS | |-+-+-------------------------------------------+------------| | |L| |##mark## | End Marker | Header| |-+-+-------------------------------------------+------------+-------| |V|T|NJPL3IF00033 | I-Label | | | |-+-------------------------------------------+------------| | | |L|00000001 |Length Field| | | |-+-------------------------------------------+------------| | | |V| | | Data | | | | Data Fields: Header Object | | SFDU | | | | Coefficients Object (opt) | Data | | | | | Covariance Object (optional) | | | | | | | | | |=|=|===========================================|============|=======| Label Components CCSDS Label "CCSD3ZF00001", the CCSDS primary SFDU label. The "F" indicates that the contents of the file are delimited by a file mark. Length Field Eight bytes, ASCII (not used in this SFDU format; set to default value "00000001" -- one file mark). Keyword and Value SFDU Contains standard keyword-value entries and object definitions which follow (see Section 4.2) CCSDS Label "CCSD$$MARKER", end marker for the preceding Label-Value Object. Length Field Eight bytes ASCII "##mark##", denoting the end of The Label after the next 20 bytes. I-Label "NJPL3IF00033" denotes beginning of the data objects. "0033" is a four-character identifier uniquely assigned to this data type by the JPL SFDU Control Authority as the "Spherical Harmonics ASCII Data Record." Length Field Eight bytes, ASCII (not used in this SFDU format; set to default value "00000001"). Data Components Header Object See Section 4.2.1.2.1 (and Section 4.2.2.1) Coefficients Object See Section 4.2.1.2.2 (and Section 4.2.2.2) Covariance Object See Section 4.2.1.2.3 (and Section 4.2.2.3) 4.2. Substructure Definition and Format Substructure of the SHADR includes the Keyword and Value SFDU (which identifies and defines the data product) and the Data SFDU (made up of data blocks which contain the results of the analyses). 4.2.1. Keyword and Value SFDU The Keyword and Value SFDU includes two components: a section of Standard Keyword and Value entries and the Data Object Definitions. The general structure is shown in Figure 4-2. |====================================================================| | | | Figure 4-2. Keyword-Value SFDU Block Structure | | | |====================================================================| | T | NJPL3KS0PSDX | K-Label | |---+-------------------------------------------------+--------------| | L | ##mark## | Start Marker | |---+-------------------------------------------------+--------------| | V | PDS_VERSION_ID=PDS3 | | | | FILE_NAME="SHTGnnnn.Avv" | Standard | | | RECORD_TYPE=FIXED_LENGTH | Keywords | | | RECORD_BYTES=nnn | and | | | FILE_RECORDS=nnn | Values | | | ... | | | | SOFTWARE_NAME="ccccc" | | | | | | | | OBJECT=SHADR_HEADER_TABLE | Data | | | ... | Object | | | END_OBJECT=SHADR_HEADER_TABLE | Definitions | | | ... | | |===|=================================================|==============| Object Definitions are series of statement groups of the form OBJECT=OBJECT_NAME ATTRIBUTE_1=ATTRIBUTE_1_VALUE ATTRIBUTE_2=ATTRIBUTE_2_VALUE ... ATTRIBUTE_N=ATTRIBUTE_N_VALUE END_OBJECT=OBJECT_NAME where each indented line specifies an attribute of the object (its size, line length, etc.). Attributes can themselves be object definitions, allowing nesting within the definition statement. For example, a primary Object Definition may specify a table; nested Object Definitions can be used to specify each of the columns within the table. The only required data object within the SHADR is the Header Object. The Coefficients Object and the Covariance Object are optional. Each contains data in tabular form represented by ASCII characters. Each Object Definition first defines the table itself; nested subsidiary Object Definitions are used to define each of the table columns. Although not shown here and in the following subsections, each line in the Standard Keyword and Value section and each line in the Object Definition section is terminated by both the ASCII carriage return (hex 0D) and the ASCII line feed (hex 0A) characters. Further, if the total length of the Standard Keyword and Value section and the Object Definition section is not an even number of bytes, a single ASCII blank (hex 20) is added at the end (before the final ). 4.2.1.1. Standard Keywords and Values Keyword-value pairs are shown in Figure 4-3 and defined in the text which follows (see also [7]). Note that an entry beginning with "^" is a pointer to a data object which follows the Keyword and Value SFDU. Each line in Figure 4-3 ends with an ASCII carriage-return line-feed pair, which is not shown. |====================================================================| | | | Figure 4-3. Standard Keyword and Value Pairs | | | |====================================================================| | | | | PDS_VERSION_ID=PDS3 | | | FILE_NAME="SHTGnnnn.Avv" | | | RECORD_TYPE=FIXED_LENGTH | | | RECORD_BYTES=nnn | | | FILE_RECORDS=nnn | | | LABEL_RECORDS=nnn | | | ^SHADR_HEADER_TABLE=nnn | | | ^SHADR_COEFFICIENTS_TABLE=nnn | | | ^SHADR_COVARIANCE_TABLE=nnn | | | SPACECRAFT_NAME="ccccccccccc" | | | TARGET_NAME="ccccccc" | Standard | | INSTRUMENT_NAME="cccccccccccccc" | Keywords | | DATA_SET_ID="cccccccccccc" | and | | OBSERVATION_TYPE="cccccccccc" | Values | | PRODUCT_ID="RS-SHTGnnnn.Avv" | | | PRODUCT_RELEASE_DATE=YYYY-MM-DD | | | DESCRIPTION="cccccccccccccccccc" | | | START_ORBIT_NUMBER=nnn | | | STOP_ORBIT_NUMBER=nnn | | | PRODUCT_CREATION_TIME=YYYY-MM-DDThh:mm:ss.fff | | | PRODUCER_FULL_NAME="cccccccccccccccccc" | | | PRODUCER_INSTITUTION_NAME="cccccccccccccccccc" | | | PRODUCT_VERSION_TYPE="cccccccccccccccccc" | | | PRODUCER_ID="ccccccccccccccc" | | | SOFTWARE_NAME="ccccccc;Vn.m" | | | | | |=========================================================|==========| Each definition below includes a Mars Observer (MO) "policy value," which indicates handling of the keyword by the MO data base. Handling is as follows: |====================================================================| | | | Table 4-1. MO PDB Policy Values | | | |====================================================================| | Policy Value | MO Handling | |--------------+-----------------------------------------------------| | A |Keyword is required, but value is not cataloged | |--------------+-----------------------------------------------------| | B |Keyword is required; value must be valid and will be | | |cataloged. | |--------------+-----------------------------------------------------| | C |Keyword is optional; if present, the value will be | | |cataloged. | |--------------+-----------------------------------------------------| | D |Keyword is optional; value is ignored. | |==============|=====================================================| PDS_VERSION_ID= The version of the Planetary Data System for which these data have been prepared (for Magellan and Mars Observer, set to PDS3 by agreement with PDS). MO policy value A. FILE_NAME= The file name in the format "SHTGnnnn.Avv" where the components are defined in Section 2.3. MO policy value C. RECORD_TYPE= The type of record. Set to "FIXED_LENGTH" to indicate that all logical records have the same length. MO policy value A. RECORD_BYTES= The number of bytes per (fixed-length) record. RECORD_BYTES is set equal to the number of bytes (122) in each data block in the Covariance Object (Section 4.2.2.3). MO policy value A. FILE_RECORDS= The number of records in the SHADR file; instance dependent. MO policy value A. LABEL_RECORDS= The number of records in the SHADR label; instance dependent. MO policy value A. ^SHADR_HEADER_TABLE= Record number at which SHADR_HEADER_TABLE begins. Record counting begins with 1; instance dependent. MO has no policy values for pointers; pointers are ignored. ^SHADR_COEFFICIENTS_TABLE= Record number at which SHADR_COEFFICIENTS_TABLE begins. The Coefficients Object is optional; this pointer will not appear in the Keyword and Value SFDU if there is no Coefficients Object. Instance dependent. MO has no policy values for pointers; pointers are ignored. ^SHADR_COVARIANCE_TABLE= Record number at which SHADR_COVARIANCE_TABLE begins. The Covariance Object is optional; this pointer will not appear in the Keyword and Value SFDU if there is no Covariance Object. Instance dependent. MO has no policy values for pointers; pointers are ignored. SPACECRAFT_NAME= Name of the spacecraft. Standard values include "MAGELLAN" and "MARS OBSERVER". MO policy value A. TARGET_NAME= A character string which identifies the target body. For Magellan, the character string "VENUS"; for Mars Observer, the character string "MARS", "PHOBOS", or "DEIMOS". MO policy value B. INSTRUMENT_NAME= Name of the instrument. Standard values include "RADIO SCIENCE SUBSYSTEM". MO policy value B. DATA_SET_ID= Identifier for the data set of which this SHADR product is a member. Standard values include "MGN-V-RSS-5-GRAVITY-L2-Vn.m" Magellan Venus gravity models produced at JPL "MGN-V-RDRS-5-TOPO-L2-Vn.m" Magellan Venus topography models produced at JPL "MO-M-RSS-5-SHM-L2-Vn.m" Mars spherical harmonic models from (primarily) Mars Observer data "MO-MSA-RSS-5-SHM-L2-Vn.m" Mars satellite spherical harmonic models from (primarily) Mars Observer data "Vn.m" indicates the version number of the data set, starting from "V1.0". MO policy value B. OBSERVATION_TYPE= A character string which identifies the data in the product. For a spherical harmonic model of a gravity field, the characer string "GRAVITY FIELD". For a model of planet topography, the character string "TOPOGRAPHY". PRODUCT_ID= A unique identifier for the product within a NASA Flight Project collection of data sets. For Radio Science data, constructed by prepending the characters "RS-" to the FILE_NAME. MO policy value B. PRODUCT_RELEASE_DATE= The date at which the product may be released by the NASA Flight Project to the Planetary Data System; entered in the format "YYYY-MM-DD", where components are defined in Section 1.5.4.2. MO policy value B. DESCRIPTION= A short description of the SHADR product. MO policy value A. START_ORBIT_NUMBER= The lowest orbit number for which data are included in this SHADR file. MO policy value D. STOP_ORBIT_NUMBER= The highest orbit number for which data are included in this SHADR file. MO policy value D. PRODUCT_CREATION_TIME= The time at which this SHADR was created; expressed in the format "YYYY-MM- DDThh:mm:ss.fff" where the components are defined in Section 1.5.4.2. MO policy value B. PRODUCER_FULL_NAME= The name of the person primarily responsible for production of this SHADR file. Expressed as a character string, for example "LESLIE R. JONES". MO policy value D. PRODUCER_INSTITUTION_NAME= The name of the institution primarily responsible for production of this SHADR. Standard values include "STANFORD UNIVERSITY" "GODDARD SPACE FLIGHT CENTER" "JET PROPULSION LABORATORY" "CENTRE NATIONAL D'ETUDES SPATIALES" MO policy value D. PRODUCT_VERSION_TYPE= The version of this SHADR. Standard values include "PREDICT", "PRELIMINARY", and "FINAL". MO policy value D. PRODUCER_ID= The entity responsible for creation of the SHADR product. Standard values include "MO RS TEAM" "MGN GRAVSCI TEAM" MO policy value B. SOFTWARE_NAME= The name and version number of the program creating this SHADR product, represented in the form "ccccccc;Vn.m" where "ccccccc" is the program name and "Vn.m" indicates the version. MO policy value B. 4.2.1.2 Data Object Definitions Data Object Definitions completely define the Data Objects for each SHADR file. Minor tailoring of the Definitions for different OBSERVATION_TYPES precludes specification of exact Definitions here. DESCRIPTION values, for example, will likely be modified slightly for each product type. In no case should the structure of the Data SFDU (Figure 4-1) be changed, however. Entries "*" are provided by the label generating program based on information supplied elsewhere. 4.2.1.2.1 SHADR Header Object Definition Each SHADR Header Object is completely defined by the Header Object Definition in its Label. The definition which follows gives the structure of the Header Object; some of the DESCRIPTION values may vary from product to product (see 4.2.1.2). The SHADR Header Object is a required part of the SHADR coefficients file. OBJECT = SHADR_HEADER_TABLE ROWS = 1 COLUMNS = 8 ROW_BYTES = 137 ROW_SUFFIX_BYTES = 107 INTERCHANGE_FORMAT = ASCII DESCRIPTION = "The SHADR header includes descriptive information about the spherical harmonic coefficients which follow in SHADR_COEFFICIENTS_TABLE. The header consists of a single record of eight (delimited) data columns requiring 137 bytes, a pad of 105 ASCII blank characters, an ASCII carriage-return, and an ASCII line-feed." OBJECT = COLUMN NAME = "REFERENCE RADIUS" DATA_TYPE = ASCII_REAL START_BYTE = 1 BYTES = 23 FORMAT = "E23.16" UNIT = "KILOMETER" DESCRIPTION = "The assumed reference radius of the spherical planet." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "CONSTANT" DATA_TYPE = ASCII_REAL START_BYTE = 25 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "For a gravity field model the assumed gravitational constant GM in meters cubed per seconds squared for the planet. For a topography model, set to 1." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "UNCERTAINTY IN CONSTANT" DATA_TYPE = ASCII_REAL START_BYTE = 49 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "For a gravity field model the uncertainty in the gravitational constant GM in meters cubed per seconds squared for the planet. For a topography model, set to 0." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "DEGREE OF FIELD" DATA_TYPE = ASCII_INTEGER START_BYTE = 73 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree of model field." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "ORDER OF FIELD" DATA_TYPE = ASCII_INTEGER START_BYTE = 79 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order of the model field." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "NORMALIZATION STATE" DATA_TYPE = ASCII_INTEGER START_BYTE = 85 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The normalization indicator. For gravity field: 0 coefficients are unnormalized 1 coefficients are normalized 2 other." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "REFERENCE LONGITUDE" POSITIVE_LONGITUDE_DIRECTION = "EAST" DATA_TYPE = ASCII_REAL START_BYTE = 91 BYTES = 23 FORMAT = "E23.16" UNIT = "DEGREE" DESCRIPTION = "The reference longitude for the spherical harmonic expansion; normally 0." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "REFERENCE LATITUDE" DATA_TYPE = ASCII_REAL START_BYTE = 115 BYTES = 23 FORMAT = "E23.16" UNIT = "DEGREE" DESCRIPTION = "The reference latitude for the spherical harmonic expansion; normally 0." END_OBJECT = COLUMN END_OBJECT = SHADR_HEADER_TABLE 4.2.1.2.2 SHADR Coefficients Object Definition The SHADR Coefficients Object is completely defined by the Object Definition in its Label. Small differences in DESCRIPTION values should be expected from product to product (see 4.2.1.2) The structure outlined in the definition below should not vary, however. The SHADR Coefficients Object is an optional part of the SHADR coefficients file. This allows the SHADR to be used for targets which are too small or too remote to have easily discerned coefficients, but for which estimates of mass have been obtained (e.g., satellites Phobos and Deimos). If the Coefficients Object is not included in the SHADR file, either the Coefficients Object Definition will be omitted or the number of rows will be set to zero (ROWS = 0). If the SHADR Coefficients Object is not included, the pointer ^SHADR_COEFFICIENTS_TABLE will not appear in the Standard Keywords and Values. No requirements are placed on the order in which coefficient values appear in the table. Nor is there a requirement that all possible combinations of the pairs {m,n} be included. The coefficients are defined by their COEFFICIENT DEGREE and COEFFICIENT ORDER; see [2] for interpretation. OBJECT = SHADR_COEFFICIENTS_TABLE ROWS = * COLUMNS = 6 ROW_BYTES = 107 ROW_SUFFIX_BYTES = 15 INTERCHANGE_FORMAT = ASCII DESCRIPTION = "The SHADR coefficients table contains the coefficients for the spherical harmonic model. Each row in the table contains the degree index m, the order index n, the coefficients Cmn and Smn, and the uncertainties in Cmn and Smn. The (delimited) data require 107 ASCII characters; these are followed by a pad of 13 ASCII blank characters, an ASCII carriage- return, and an ASCII line-feed." OBJECT = COLUMN NAME = "COEFFICIENT DEGREE" DATA_TYPE = ASCII_INTEGER START_BYTE = 1 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree index m of the C and S coefficients in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT ORDER" DATA_TYPE = ASCII_INTEGER START_BYTE = 7 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order index n of the C and S coefficients in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "C" DATA_TYPE = ASCII_REAL START_BYTE = 13 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The coefficient Cmn for this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "S" DATA_TYPE = ASCII_REAL START_BYTE = 37 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The coefficient Smn for this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "C UNCERTAINTY" DATA_TYPE = ASCII_REAL START_BYTE = 61 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The uncertainty in the coefficient Cmn for this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "S UNCERTAINTY" DATA_TYPE = ASCII_REAL START_BYTE = 85 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The uncertainty in the coefficient Smn for this spherical harmonic model." END_OBJECT = COLUMN END_OBJECT = SHADR_COEFFICIENTS_TABLE 4.2.1.2.3 SHADR Covariance Object Definition The SHADR Covariance Object is completely defined by the Object Definition in its Label. Small differences in DESCRIPTION values should be expected from product to product. The structure established by the definition below should not change, however. The SHADR Covariance Object is an optional part of the SHADR coefficients file. If the Covariance Object is not included, either the Covariance Object Definition will be omitted or the number of rows will be set to zero (ROWS = 0). If the SHADR Covariance Object is not included, the pointer ^SHADR_COVARIANCE_TABLE will not appear in the Standard Keywords and Values. No requirements are placed on the order in which covariance values appear in the table. Nor is there a requirement that all possible combinations of the quadruplet values {i,j,m,n} be included. By careful editing and use of symmetry arguments, it may be possible to define all covariances with fewer than the maximum number of rows in the table. OBJECT = SHADR_COVARIANCE_TABLE ROWS = * COLUMNS = 8 ROW_BYTES = 119 ROW_SUFFIX_BYTES = 3 INTERCHANGE_FORMAT = ASCII DESCRIPTION = "The SHADR covariance table contains the covariances for the spherical harmonic model coefficients. For each index quadruplet {i,j,m,n} the covariances of CijCmn, SijSmn, CijSmn, and SijCmn are given. In each row of the table the (delimited) indices occupy 24 ASCII characters, the (delimited) covariances occupy 95 ASCII characters; these are followed by an ASCII blank, an ASCII cariage-return and an ASCII line-feed." OBJECT = COLUMN NAME = "COEFFICIENT DEGREE i" DATA_TYPE = ASCII_INTEGER START_BYTE = 1 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree index i of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT ORDER j" DATA_TYPE = ASCII_INTEGER START_BYTE = 7 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order index j of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT DEGREE m" DATA_TYPE = ASCII_INTEGER START_BYTE = 13 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree index m of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT ORDER n" DATA_TYPE = ASCII_INTEGER START_BYTE = 19 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order index n of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Cij,Cmn}" DATA_TYPE = ASCII_REAL START_BYTE = 25 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Cij,Cmn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Sij,Smn}" DATA_TYPE = ASCII_REAL START_BYTE = 49 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Sij,Smn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Cij,Smn}" DATA_TYPE = ASCII_REAL START_BYTE = 73 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Cij,Smn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Sij,Cmn}" DATA_TYPE = ASCII_REAL START_BYTE = 97 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Sij,Cmn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN END_OBJECT = SHADR_COVARIANCE_TABLE 4.2.2. Data SFDU The Data SFDU consists of two parts: the I-label and its associated Length Field and the Data Objects themselves. The I-label and its Length Field have been defined in Section 4.1; they are considered part of The Label for the SHADR and will not be discussed further here. Each Data Object comprises one or more data blocks. The Data Objects are defined in Section 4.2.1.2. The Data Blocks are illustrated below. The Header Object is required in each SHADR file. The Coefficients Object and the Covariance Object are optional. 4.2.2.1. SHADR Header Object/Block The SHADR Header Object contains the parameters necessary to interpret the data in the SHADR file. The structure of the SHADR Header Object is defined in Section 4.2.1.2.1. The SHADR Header Object is a one-row table; hence the Header Object and the Header Block are logically synonymous. The structure of the Header Block is shown in Table 4-2. Note that the logical content of the Header Object is delimited by the ASCII carriage return and line feed characters but that the physical block is padded to 244 bytes (an integral multiple of RECORD_BYTES). |====================================================================| | | | Table 4-2. SHADR Header Block | | | |====================================================================| | Col No | Offset | Length | Format | Column Name | |--------+--------+--------+--------+--------------------------------| | 1 | +0 | 23 | E23.16 |Planetary Radius | |--------+--------+--------+--------+--------------------------------| | 2 | 24 | 23 | E23.16 |Constant | |--------+--------+--------+--------+--------------------------------| | 3 | 48 | 23 | E23.16 |Uncertainty in Constant | |--------+--------+--------+--------+--------------------------------| | 4 | 72 | 5 | I5 |Degree of Field | |--------+--------+--------+--------+--------------------------------| | 5 | 78 | 5 | I5 |Order of Field | |--------+--------+--------+--------+--------------------------------| | 6 | 84 | 5 | I5 |Normalization State | |--------+--------+--------+--------+--------------------------------| | 7 | 90 | 23 | E23.16 |Reference Longitude | |--------+--------+--------+--------+--------------------------------| | 8 | 114 | 23 | E23.16 |Reference Latitude | |--------+--------+--------+--------+--------------------------------| | | 137 | 105 | | blanks | |--------+--------+--------+--------+--------------------------------| | | 242 | 1 | | carriage return | |--------+--------+--------+--------+--------------------------------| | | 243 | 1 | | line feed | |--------+--------+--------+--------+--------------------------------| | | +244 | | |========|========|========|========|================================| 4.2.2.2. SHADR Coefficients Block The SHADR Coefficients Object is made up of one or more SHADR Coefficients Blocks. Each block contains one pair of coefficients and associated uncertainties for the overall model defined by the SHADR product. The structure of the SHADR Coefficients Object is defined in Section 4.2.1.2.2. The structure of an individual block is shown in Table 4-3. Note that the logical content of the Coefficients Block is delimited by the ASCII carriage return and line feed characters. The Coefficients Block is, by definition, an integral multiple of RECORD_BYTES. |====================================================================| | | | Table 4-3. SHADR Coefficients Block | | | |====================================================================| | Col No | Offset | Length | Format | Column Name | |--------+--------+--------+--------+--------------------------------| | 1 | +0 | 5 | I5 |Coefficient Degree m | |--------+--------+--------+--------+--------------------------------| | 2 | 6 | 5 | I5 |Coefficient Order n | |--------+--------+--------+--------+--------------------------------| | 3 | 12 | 23 | E23.16 |Cmn | |--------+--------+--------+--------+--------------------------------| | 4 | 36 | 23 | E23.16 |Smn | |--------+--------+--------+--------+--------------------------------| | 5 | 60 | 23 | E23.16 |Uncertainty in Cmn | |--------+--------+--------+--------+--------------------------------| | 6 | 84 | 23 | E23.16 |Uncertainty in Smn | |--------+--------+--------+--------+--------------------------------| | | 107 | 13 | | blanks | |--------+--------+--------+--------+--------------------------------| | | 120 | 1 | | carriage return | |--------+--------+--------+--------+--------------------------------| | | 121 | 1 | | line feed | |--------+--------+--------+--------+--------------------------------| | | +122 | | |========|========|========|========|================================| 4.2.2.3. SHADR Covariance Block The SHADR Covariance Object is made up of one or more SHADR Covariance Blocks. Each block contains the CijCmn, SijSmn, CijSmn, and SijCmn covariances for the overall model defined by the SHADR product. The structure of the SHADR Covariance Object is defined in Section 4.2.1.2.3. The structure of an individual block is shown in Table 4-4. Note that the logical content of the Covariance Block is delimited by the ASCII carriage return and line feed characters. The SHADR Covariance Block is, by definition, an integral multiple of RECORD_BYTES. |====================================================================| | | | Table 4-4. SHADR Covariance Block | | | |====================================================================| | Col No | Offset | Length | Format | Column Name | |--------+--------+--------+--------+--------------------------------| | 1 | +0 | 5 | I5 |Coefficient Degree i | |--------+--------+--------+--------+--------------------------------| | 2 | 6 | 5 | I5 |Coefficient Order j | |--------+--------+--------+--------+--------------------------------| | 3 | 12 | 5 | I5 |Coefficient Degree m | |--------+--------+--------+--------+--------------------------------| | 4 | 18 | 5 | I5 |Coefficient Order n | |--------+--------+--------+--------+--------------------------------| | 5 | 24 | 23 | E23.16 |Covariance {Cij,Cmn} | |--------+--------+--------+--------+--------------------------------| | 6 | 48 | 23 | E23.16 |Covariance {Sij,Smn} | |--------+--------+--------+--------+--------------------------------| | 7 | 72 | 23 | E23.16 |Covariance {Cij,Smn} | |--------+--------+--------+--------+--------------------------------| | 8 | 96 | 23 | E23.16 |Covariance {Sij,Cmn} | |--------+--------+--------+--------+--------------------------------| | | 119 | 1 | | blank | |--------+--------+--------+--------+--------------------------------| | | 120 | 1 | | carriage return | |--------+--------+--------+--------+--------------------------------| | | 121 | 1 | | line feed | |--------+--------+--------+--------+--------------------------------| | | +122 | | |========|========|========|========|================================| Appendix A. Binary Data Format A.1. IEEE Integer Fields 0 7 1-byte (char; uchar) --------- | [0] | --------- 0 15 2-byte (short; ushort) --------- --------- | [0] | [1] | --------- --------- 0 31 4-byte (long; ulong) --------- --------- --------- --------- | [0] | [1] | [2] | [3] | --------- --------- --------- --------- IEEE binary integers are stored in one, two, or four consecutive 8-bit bytes. Unsigned integers uchar, ushort, ulong, which always represent positive values, contain 8, 16, or 32 binary bits, respectively. As illustrated above, the significance increases from the rightmost bit to the leftmost (bit 0). Signed integers (char, short, long) are stored in the same way, except that negative values are formed by taking the corresponding positive value, complementing each bit, then adding unity -- known as "two's complement" format. As a consequence, a negative value always has bit 0 set "on". Integers are written externally in increasing byte-number order, i.e. [0], [1], etc., so that more significant bits always precede less significant ones. For example, the short value -2 is stored as a pair of bytes valued 0xff, 0xfe. A.2. IEEE Floating-Point Fields 0 1 8 9 31 4-byte (float) --------- --------- --------- --------- | | [0] | | [1] | [2] | [3] | --------- --------- --------- --------- 0 1 8 9 31 8-byte (double) --------- --------- --------- --------- | | [0] | | [1] | [2] | [3] | --------- --------- --------- --------- 32 63 --------- --------- --------- --------- | [4] | [5] | [6] | [7] | --------- --------- --------- --------- IEEE single- (double-) precision floating point numbers (known to IEEE enthusiasts as E-type floating-point formats, respectively) are stored in four (eight) consecutive bytes. Bit number 0 contains a sign indicator, S. Bits 1 through 8 (11) contain a binary exponent, E. The significance increases from bit 8 (11) through bit 1. Bits 9 (12) through 31 (63) contain a mantissa M, a 23-bit (52-bit) binary fraction whose binary point lies immediately to the left of bit 9 (12). The significance increases from bit 31 (63) through bit 9 (11). The value of the single-precision field is given by S E-127 (-1) *2 *(1+M) The value of the double-precision field is given by S E-1023 (-1) *2 *(1+M) The numbers are stored externally in increasing byte-number order, i.e. [0], [1], etc. For example, the maximum single-precision float value +3.40282347E+38 is stored as four bytes valued 0x7f, 0x7f, 0xff, 0xff. Special single-precision float values are represented as +Infinity (0x7f800000), -Infinity (0xff800000), quiet NaN (not a number) (0xffffffff), and signaling NaN (0x7f800001). A.3. VAX Integer Fields 0 7 1-byte (char; uchar) --------- | [0] | --------- 0 15 2-byte (short; ushort) --------- --------- | [1] | [0] | --------- --------- 0 31 4-byte (long; ulong) --------- --------- --------- --------- | [3] | [2] | [1] | [0] | --------- --------- --------- --------- VAX binary integers are stored in one, two, or four consecutive 8-bit bytes. Unsigned integers uchar, ushort, and ulong (which always represent positive values) contain 8, 16, or 32 binary bits, respectively. As illustrated above, the significance increases from the rightmost bit to the leftmost (bit 0). Signed integers (char, short, long) are stored in the same way, except that negative values are formed by taking the corresponding positive value, complementing each bit, then adding unity -- known as "two's complement" format. As a consequence, a negative value always has bit 0 set or "on." Integers are written externally in increasing byte-number order, i.e. [0], [1], etc., so that less significant bits always precede more significant ones. For example, the short value -2 is stored as a pair of bytes valued 0xfe, 0xff. (This section has been adapted from a description by P.G. Ford in the Magellan ARCDR SIS). A.4. VAX Floating-Point Fields 0 1 8 9 31 4-byte (float) --------- --------- --------- --------- | | [1] | | [0] | [3] | [2] | --------- --------- --------- --------- 0 1 8 9 31 8-byte (double) --------- --------- --------- --------- | | [1] | | [0] | [3] | [2] | --------- --------- --------- --------- 32 63 --------- --------- --------- --------- | [5] | [4] | [7] | [6] | --------- --------- --------- --------- VAX single- (double-) precision floating point numbers (known to VAX enthusiasts as F-type and D-type floating-point formats, respectively) are stored in four (eight) consecutive bytes. Bit number 0 contains a sign indicator, S. Bits 1 through 8 contain a binary exponent, E. The significance increases from bit 8 through bit 1. Bits 9 through 31 (63) contain a mantissa M, a 23-bit (55-bit) binary fraction whose binary point lies immediately to the left of bit 9. The significance increases from bit 31 (63) through bit 9. The value of the field is given by S E-129 (-1) *2 *(1+M) The numbers are stored externally in increasing byte-number order, i.e. [0], [1], etc. For example, the float value +1.0 is stored as four bytes valued 0x80, 0x40, 0x00, 0x00. (This section has been adapted from a description by P.G. Ford in the Magellan ARCDR SIS). Appendix B. Example SHADR Label and Data Object B.1 Example Label The following is an example Label for a Spherical Harmonic ASCII Data Record (SHADR). In the next section, an example data object is shown CCSD3ZF0000100000001NJPL3KS0PDSX##mark## /* File information */ PDS_VERSION_ID = "PDS3" FILE_NAME = "SHGJnnnn.A01" RECORD_TYPE = FIXED_LENGTH RECORD_BYTES = 122 FILE_RECORDS = 127 LABEL_RECORDS = 116 ^SHADR_HEADER_TABLE = 117 ^SHADR_COEFFICIENTS_TABLE = 119 ^SHADR_COVARIANCE_TABLE = 122 SPACECRAFT_NAME = "MAGELLAN" TARGET_NAME = "VENUS" INSTRUMENT_NAME = "RADIO SCIENCE SUBSYSTEM" DATA_SET_ID = "MGN-V-RSS-5-GRAVITY-L2-V1.0" OBSERVATION_TYPE = "GRAVITY FIELD" PRODUCT_ID = "RS-SHGJnnnn.A01" PRODUCT_RELEASE_DATE = 1993-05-15 DESCRIPTION = "This file contains coefficients and related data for a Spherical Harmonic model of the Venus gravity field. Input data are from radio tracking of the Magellan spacecraft. This product is a set of ASCII tables: a header table, a coefficients table, and a covariance table. Definitions of the tables follow. The Magellan Venus gravity model is known as the Spherical Harmonics ASCII Data Record (SHADR) and is produced by the Magellan Gravity Science Team at JPL under the direction of W.L. Sjogren." START_ORBIT_NUMBER = 4830 STOP_ORBIT_NUMBER = 4831 PRODUCT_CREATION_TIME = 1993-01-15T12:43:55.129 PRODUCER_FULL_NAME = "JODY MARSHALL" PRODUCER_INSTITUTION_NAME = "JET PROPULSION LABORATORY" PRODUCT_VERSION_TYPE = "PRELIMINARY" PRODUCER_ID = "MGN GRAVSCI TEAM" SOFTWARE_NAME = "SHGJ;V4.57" /* Structure Objects */ OBJECT = SHADR_HEADER_TABLE ROWS = 1 COLUMNS = 8 ROW_BYTES = 137 ROW_SUFFIX_BYTES = 107 INTERCHANGE_FORMAT = ASCII DESCRIPTION = "The SHADR header includes descriptive information about the spherical harmonic coefficients which follow in SHADR_COEFFICIENTS_TABLE. The header consists of a single record of eight (delimited) data columns requiring 137 bytes, a pad of 105 ASCII blank characters, an ASCII carriage-return, and an ASCII line-feed." OBJECT = COLUMN NAME = "REFERENCE RADIUS" DATA_TYPE = ASCII_REAL START_BYTE = 1 BYTES = 23 FORMAT = "E23.16" UNIT = "KILOMETER" DESCRIPTION = "The assumed reference radius of the spherical planet." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "CONSTANT" DATA_TYPE = ASCII_REAL START_BYTE = 25 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "For a gravity field model the assumed gravitational constant GM in meters cubed per seconds squared for the planet. For a topography model, set to 1." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "UNCERTAINTY IN CONSTANT" DATA_TYPE = ASCII_REAL START_BYTE = 49 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "For a gravity field model the uncertainty in the gravitational constant GM in meters cubed per seconds squared for the planet. For a topography model, set to 0." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "DEGREE OF FIELD" DATA_TYPE = ASCII_INTEGER START_BYTE = 73 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree of model field." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "ORDER OF FIELD" DATA_TYPE = ASCII_INTEGER START_BYTE = 79 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order of the model field." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "NORMALIZATION STATE" DATA_TYPE = ASCII_INTEGER START_BYTE = 85 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The normalization indicator. For gravity field: 0 coefficients are unnormalized 1 coefficients are normalized 2 other." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "REFERENCE LONGITUDE" POSITIVE_LONGITUDE_DIRECTION = "EAST" DATA_TYPE = ASCII_REAL START_BYTE = 91 BYTES = 23 FORMAT = "E23.16" UNIT = "DEGREE" DESCRIPTION = "The reference longitude for the spherical harmonic expansion; normally 0." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "REFERENCE LATITUDE" DATA_TYPE = ASCII_REAL START_BYTE = 115 BYTES = 23 FORMAT = "E23.16" UNIT = "DEGREE" DESCRIPTION = "The reference latitude for the spherical harmonic expansion; normally 0." END_OBJECT = COLUMN END_OBJECT = SHADR_HEADER_TABLE OBJECT = SHADR_COEFFICIENTS_TABLE ROWS = 3 COLUMNS = 6 ROW_BYTES = 107 ROW_SUFFIX_BYTES = 15 INTERCHANGE_FORMAT = ASCII DESCRIPTION = "The SHADR coefficients table contains the coefficients for the spherical harmonic model. Each row in the table contains the degree index m, the order index n, the coefficients Cmn and Smn, and the uncertainties in Cmn and Smn. The (delimited) data require 107 ASCII characters; these are followed by a pad of 13 ASCII blank characters, an ASCII carriage- return, and an ASCII line-feed." OBJECT = COLUMN NAME = "COEFFICIENT DEGREE" DATA_TYPE = ASCII_INTEGER START_BYTE = 1 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree index m of the C and S coefficients in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT ORDER" DATA_TYPE = ASCII_INTEGER START_BYTE = 7 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order index n of the C and S coefficients in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "C" DATA_TYPE = ASCII_REAL START_BYTE = 13 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The coefficient Cmn for this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "S" DATA_TYPE = ASCII_REAL START_BYTE = 37 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The coefficient Smn for this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "C UNCERTAINTY" DATA_TYPE = ASCII_REAL START_BYTE = 61 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The uncertainty in the coefficient Cmn for this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "S UNCERTAINTY" DATA_TYPE = ASCII_REAL START_BYTE = 85 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "The uncertainty in the coefficient Smn for this spherical harmonic model." END_OBJECT = COLUMN END_OBJECT = SHADR_COEFFICIENTS_TABLE OBJECT = SHADR_COVARIANCE_TABLE ROWS = 6 COLUMNS = 8 ROW_BYTES = 119 ROW_SUFFIX_BYTES = 3 INTERCHANGE_FORMAT = ASCII DESCRIPTION = "The SHADR covariance table contains the covariances for the spherical harmonic model coefficients. For each index quadruplet {i,j,m,n} the covariances of CijCmn, SijSmn, CijSmn, and SijCmn are given. In each row of the table the (delimited) indices occupy 24 ASCII characters, the (delimited) covariances occupy 95 ASCII characters; these are followed by an ASCII blank, an ASCII cariage-return and an ASCII line-feed." OBJECT = COLUMN NAME = "COEFFICIENT DEGREE i" DATA_TYPE = ASCII_INTEGER START_BYTE = 1 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree index i of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT ORDER j" DATA_TYPE = ASCII_INTEGER START_BYTE = 7 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order index j of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT DEGREE m" DATA_TYPE = ASCII_INTEGER START_BYTE = 13 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The degree index m of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COEFFICIENT ORDER n" DATA_TYPE = ASCII_INTEGER START_BYTE = 19 BYTES = 5 FORMAT = "I5" UNIT = "N/A" DESCRIPTION = "The order index n of the C and S terms in this record." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Cij,Cmn}" DATA_TYPE = ASCII_REAL START_BYTE = 25 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Cij,Cmn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Sij,Smn}" DATA_TYPE = ASCII_REAL START_BYTE = 49 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Sij,Smn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Cij,Smn}" DATA_TYPE = ASCII_REAL START_BYTE = 73 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Cij,Smn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN OBJECT = COLUMN NAME = "COVARIANCE {Sij,Cmn}" DATA_TYPE = ASCII_REAL START_BYTE = 97 BYTES = 23 FORMAT = "E23.16" UNIT = "N/A" DESCRIPTION = "Covariance {Sij,Cmn} for the coefficients of this spherical harmonic model." END_OBJECT = COLUMN END_OBJECT = SHADR_COVARIANCE_TABLE END CCSD$$MARKER##mark##NJPL3IF00033 00000001 B.2 Example Data Object The example below shows an example data object for the Spherical Harmonic ASCII Data Record (SHADR). 6.0510000000000000E+03, 3.8000000000000000E+04, 1.0000000000000000E+0 0, 2, 2, 1, 0.0000000000000000E+00, 0.0000000000000000E+00 1, 1, 0.0000000000000000E+00, 0.0000000000000000E+00, 2.4567890 123456789E-07, 7.1120046299578932E-06 2, 1, 3.9495201726800000E-08, 2.3001274973200000E-09, 3.5460567 833512129E-16, 3.9925112394634588E-15 2, 2, 8.3536522788900000E-07,-1.0334544028500000E-07, 8.8893451 139572660E-23, 2.4567890123456789E-24 1, 1, 1, 1, 1.0000000000000000E+00, 1.0000000000000000E+0 0, 1.0000000000000000E-10, 1.0000000000000000E-10 1, 1, 2, 1, 2.9495201726800000E-08, 2.3001274973200000E-0 9, 2.3001274973200000E-09, 0.0000000000000000E+00 1, 1, 2, 2, 3.9495201726800000E-08, 2.3001274973200000E-0 9, 2.3001274973200000E-09, 0.0000000000000000E+00 2, 1, 2, 1, 7.9495201726800000E-08, 2.3001274973200000E-0 9, 7.3001274973200000E-09, 7.3001274973200000E-09 2, 1, 2, 2, 8.9495201726800000E-08, 2.3001274973200000E-0 9, 2.3001274973200000E-09, 0.0000000000000000E+00 2, 2, 2, 2, 9.9495201726800000E-08, 2.3001274973200000E-0 9, 9.3001274973200000E-09, 9.3001274973200000E-09