PDS_VERSION_ID = PDS3

RECORD_TYPE = STREAM

RECORD_BYTES = 80

OBJECT = TEXT

PUBLICATION_DATE = 2008-07-28

NOTE = "Software Interface Specification for

the Spherical Harmonics Binary Data

Record (SHBDR) file. Formatted for

display or printing at 60 lines per

page with up to 78 constant width

characters per line."

END_OBJECT = TEXT

END

SOFTWARE INTERFACE SPECIFICATION

 

 

SPHERICAL HARMONICS BINARY DATA RECORD (SHBDR)

prepared by

 

      Frank G. Lemoine

Code 698, Planetary Geodynamics Laboratory

NASA Goddard Space Flight Center

Greenbelt, Maryland, 20771 USA

 

Peggy L. Jester

SGT, Inc / Code 614.1

NASA GSFC / Wallops Flight Facility

Wallops Island, VA 23337 USA

 

 

Version 1.2

28 July 2008

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

|====================================================================|

| |

| DOCUMENT CHANGE LOG |

| |

|====================================================================|

|REVISION|REVISION | SECTION | REMARK |

| NUMBER | DATE | AFFECTED | |

|--------+--------+------------+-------------------------------------|

| 1.0 |06/02/20 | All |Adapted MGS SHBDR SIS to include |

| | | |Mars Reconnaissance Orbiter and |

| | | |MESSENGER. |

|--------+--------+------------+-------------------------------------|

| 1.0 |06/03/15 | All |Miscellaneous edits |

| | | | |

|====================================================================|

| 1.0 |06/06/29 | All |Integrate PDS review comments |

|====================================================================|

| 1.1 |05/04/29 | All |Fix minor formatting issues |

|====================================================================|

| 1.2 |08/07/28 | 2.3 |Updated file naming convention |

| | | | for MRO |

|====================================================================|

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Contents

Document Change Log............................................ii

Contents.......................................................iii

Acronyms and Abbreviations......................................v

1. General Description..........................................1

1.1. Overview.................................................1

1.2. Scope..................................................É.1

1.3. Applicable Documents....................................1

1.4. System Siting............................................2

1.4.1. Interface Location and Medium....................É2

1.4.2. Data Sources, Transfer Methods, and Destinations....2

1.4.3. Generation Method and Frequency......................3

1.5. Assumptions and Constraints..............................3

1.5.1. Usage Constraints....................................3

1.5.2. Priority Phasing Constraints.........................3

1.5.3. Explicit and Derived Constraints.....................3

1.5.4. Documentation Conventions............................3

1.5.4.1. Data Format Descriptions.........................3

1.5.4.2. Time Standards...................................4

1.5.4.3. Coordinate Systems...............................4

1.5.4.4. Limits of This Document..........................4

1.5.4.5. Typographic Conventions..........................4

2. Interface Characteristics....................................5

2.1. Hardware Characteristics and Limitations.................5

2.1.1. Special Equipment and Device Interfaces..............5

2.1.2. Special Setup Requirements...........................5

2.2. Volume and Size..........................................5

2.3. Labeling and Identification..............................5

2.4. Interface Medium Characteristics.........................6

2.5. Failure Protection, Detection, and Recovery Procedures...6

2.6. End-of-File Conventions..................................6

3. Access.......................................................7

3.1. Programs Using the Interface.............................7

3.2. Synchronization Considerations...........................7

3.2.1. Timing and Sequencing Considerations.................7

3.2.2. Effective Duration...................................7

3.2.3. Priority Interrupts..................................7

3.3. Input/Output Protocols, Calling Sequences................7

4. Detailed Interface Specifications............................8

4.1. Structure and Organization Overview......................8

4.2. Detached PDS Label.......................................8

4.2.1. Label Header.........................................8

4.2.2. TABLE Object Definitions............................12

4.2.2.1. SHBDR Header Object Definition....................12

4.2.2.2. SHBDR Names Object Definition.....................14

4.2.2.3. SHBDR Coefficient Object Definition...............14

4.2.2.4 SHBDR Covariance Object Definition................15

4.3. Data File...............................................17

4.3.1. SHBDR Header Object/Block...........................17

4.3.2. SHBDR Name Block....................................18

4.3.3. SHBDR Coefficients Block............................18

4.3.4. SHBDR Covariances Block.............................18

5. Support Staff and Cognizant Personnel.......................19

 

Appendix A. Description of Spherical Harmonic Model Normalization.20

A.1 Definition of Model for the Potential....................20

A.2 Definition of the normalization used.....................21

Appendix B. Binary Data Format................................22

B.1. IEEE Integer Fields.....................................22

B.2. IEEE Floating-Point Fields..............................22

Appendix C. Example Data Products.............................24

C.1. Example Label...........................................24

C.2. Example Data Object.....................................30

Tables

4-3-1. SHBDR Header Block....................................17

4-3-2. SHBDR Names Block.....................................18

4-3-3. SHBDR Coefficients Block..............................18

4-3-4. SHBDR Covariance Block................................19

Figures

4-2-1. SHBDR Label Header.....................................9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ACRONYMS AND ABBREVIATIONS

ANSI American National Standards Institute

APL Applied Physics Laboratory

ARC Ames Research Center

ARCDR Altimetry and Radiometry Composite Data Record

ASCII American Standard Code for Information Interchange

CCSDS Consultative Committee for Space Data Systems

CD-WO Compact-disc write-once

CNES Centre National d'Etudes Spatiales

CR Carriage Return

dB Decibel

DSN Deep Space Network

DVD Digital Video Disc or Digital Versatile Disc

EGM96 Earth Gravitational Model 1996

FEA Front End Assembly

GSFC Goddard Space Flight Center

IEEE Institute of Electrical and Electronic Engineers

IAU International Astronomical Union

JHU Johns Hopkins University

JPL Jet Propulsion Laboratory

J2000 IAU Official Time Epoch

K Degrees Kelvin

kB Kilobytes

km Kilometers

LAST Laser Altimeter Science Team (MESSENGER)

LF Line Feed

LP Lunar Prospector (mission or spacecraft)

MB Megabytes

MESSENGER MErcury Surface Space ENvironment, GEochemistry,

and Ranging (acronym for mission to Mercury)

MGN Magellan

MGS Mars Global Surveyor

MIT Massachusetts Institute of Technology

MLA MESSENGER Laser Altimeter

MO Mars Observer

MRO Mars Reconnaissance Orbiter

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

RST Radio Science Team

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

SPARC Sun Scaleable Processor Architecture

SPK Spacecraft and Planet Kernel Format, from NAIF

TBD To Be Determined

UTC Universal Time Coordinated

 

 

 

 

 

 

 

 

 

 

1. GENERAL DESCRIPTION

1.1. Overview

This Software Interface Specification (SIS) describes Spherical

Harmonics Binary Data Record (SHBDR) files. The SHBDR 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 SHBDR is produced.

 

The SHBDR was defined initially for gravity models derived from

Magellan (MGN and Mars Observer (MO) radio tracking data [1], but

the format is more generally useful. The original SHBDR has been

adapted for the Mars Global Surveyor (MGS) and the Lunar Prospector (LP)

missions; this is the adaptation for the Mars Reconnaissance Orbiter (MRO)

and MESSENGER missions. 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

ASCII Data Record is also defined [3], which may be more suitable when

error covariances are not included in the final product.

 

The Jet Propulsion Laboratory (JPL), Pasadena, California, manages the Mars Reconnaissance Orbiter Mission [4], and the Mars Global Surveyor Mission for the National Aeronautics and Space Administration (NASA). The Johns Hopkins University, Laurel, Maryland, USA manages the MESSENGER

mission [5,6] for NASA.

 

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] Lemoine, F.G., Software Interface Specification: Spherical Harmonics

ASCII Data Record (SHADR), 2006.

 

[4] Mars Reconnaissance Orbiter Mission Plan, Revision C: July 2005, prepared

by Robert Lock. Document JPL D-22239, MRO-31-201.

 

[5] McAdams, J. V. (JHU/APL), MESSENGER mission overview and trajectory

design, American Institute of Aeronautics and Astronautics, American

Astronautical Society (AIAA/AAS) Astrodynamics Specialist Conference,

Paper AAS 03-541, 20 pp., Big Sky, MT, August 3-7, 2003.

 

 

[6] McAdams, J. V., D. W. Dunham, R. W. Farquhar, A. H. Taylor, and

B. G. Williams, Trajectory design and maneuver strategy for the MESSENGER

mission to Mercury, 15th American Astronautical Society (AAS)/American

Institute of Aeronautics and Astronautics (AIAA) Space Flight Mechanics

Conference, Paper AAS 05-173, 21 pp., Copper Mountain, CO, Jan. 23-27, 2005.

 

[7] Seidelmann, P.K., V.K. Abalakin, M. Bursa, M. E. Davies, C. de Bergh,

J. H. Lieske, J. Oberst, J. L. Simon, E. M. Standish, P. Stooke, P. C.

Thomas, Report of the IAU/IAG Working Group on Cartographic Coordinates and Rotational Elements of the Planets and Satellites: 2000, Celes. Mechanics and Dyn. Astronomy, 82, 83-110, Dec 2002.

[8] MRO-D-22685, Rev B., Planetary Constants and Models, 05-15-2003.

[9] Konopliv, A.S, C.F. Yoder, E. M. Standish, D.-N. Yuan, and W. L. Sjogren,

A global solution for the Mars static and seasonal gravity, Mars orientation,

Phobos, Deimos Masses, and Mars Ephemeris, Icarus, 182(1), 23-50, 2006.

 

[10] Konopliv A.S., S.W. Asmar, E. Carranza, W.L. Sjogren, and D.N. Yuan, Recent Gravity models as a results of the Lunar

Prospector Mission, Icarus, 150, 1-18, 2001.

 

[11] Lambeck, Kurt, Geophysical Geodesy, Oxford University Press,

Oxford, UK, 1988.

 

[12] Kaula, William M., Theory of Satellite Geodesy, Applications of

satellites to geodesy, Dover Publications, Mineola, NY, 2000.

 

[13] Lemoine, F.G., S.C. Kenyon, J.K. Factor, R.G. Trimmer, N.K. Pavlis, C.M.

Cox, S.M. Klosko, S.B. Luthcke, M.H. Torrence, Y.M. Wang, R.G. Williamson,

E.C. Pavlis, R.H. Rapp and T.R. Olson, The Development of the Joint NASA GSFC

and the National Imagery and Mapping Agency (NIMA) Geopotential Model EGM96,

NASA/TP-1998-206861, NASA Goddard Space Flight Center,

Greenbelt, Maryland 20771, July 1998.

[14] JPL D-7116, Rev. E, Planetary Science Data Dictionary Document,

Jet Propulsion Laboratory, Pasadena, California, August 28, 2002.

(http://pds.jpl.nasa.gov/documents/psdd/psdd.pdf)

[15] JPL D-7669 Part 2, Planetary Data System Standards Reference,

PDS Version 3.6, Jet Propulsion Laboratory, August 1, 2003.

(http://pds.jpl.nasa.gov/documents/sr/index.html)

 

1.4. System Siting

1.4.1. Interface Location and Medium

SHBDR files are created at the institution conducting the science

analysis. SHBDR files can be electronic files or can be stored

on compact-disc write-once (CD-WO) or DVD type media.

 

1.4.2. Data Sources, Transfer Methods, and Destinations

SHBDR 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 (such as the PDS) specified by the managing institution.

 

 

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 with complete sampling (in terms of longitude and

latitude coverage on the planet), so that SHBDR 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

 

SHBDR 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 SHBDR uses the appropriate planetocentric fixed body

coordinate system [7,8]. This may be an IAU system (e.g. IAU2000 [7]

or for the new body-fixed Mars reference frame defined by Konopliv

et al. [9]. At present, the MESSENGER mission has adopted the

IAU2000 model for Mercury [7].

 

The coordinate system for lunar geopotential models will be a body

figure axis system defined by the lunar librations, which are resolved by

lunar laser ranging [10], or a coarser frame defined by the IAU [7].

 

1.5.4.4. Limits of This Document

This document applies only to SHBDR 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 approximately 80 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 SHBDR product must have access to the data system

(or to media) on which SHBDR files are stored.

2.1.2. Special Setup Requirements

None.

2.2. Volume and Size

SHBDR 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 include approximately N**2 terms and therefore

the number of terms in the covariance matrix will be of order N**4.

For 8-byte storage and N=50, the total SHBDR volume will be about 30 MB.

For N=100, the total SHBDR volume will be approximately 416 MB.

Vector quantities (e.g., magnetic field) may be described by a single

SHBDR (in which all components are represented) or by a separate SHBDR for

each field component. If the single SHBDR 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 is recommended over the SHADR [3] when the data

include error covariances because of the smaller data volume associated

with binary formats.

2.3. Labeling and Identification

The length of file names is limited to 27 or less characters before the period delimeter and 3 characters after the period delimeter.

Each file has a name which describes its contents. The name

includes the following structure which uniquely identifies

it among SHBDR products. Beginning with the MRO gravity products the following file naming convention is used:

GTsss_nnnnvv_SHB.DAT

where

"G" denotes the generating institution

"J" for the Jet Propulsion Laboratory

"G" or Goddard Space Flight Center

"C" or Centre National d'Etudes Spatiales

"M" for Massachusetts Institute of Technology

 

"T" indicates the type of data represented

"G" for gravity field

"T" for topography

"M" for magnetic field

 

"sss" is a 3-character modifier specified by the data producer. This

modifier is used to indicate the source spacecraft or Project,

such as MRO for the Mars Reconnaisance Orbiter.

 

"_" the underscore character is used to delimit modifiers in the

file name for clarity.

 

"nnnnvv" is a 4- to 6-character modifier specified by the data

producer. Among other things, this modifier may be

used to indicate the target body, whether the SHBDR

contains primary data values as specified by "T" or

uncertainties/errors, and/or the version number. For MRO, this

modifier indicates the degree and order of the solution for the

gravity field, topography or magnetic field.

"_" the underscore character is used to delimit modifiers in the

file name for clarity.

 

"SHBÓ denotes that this is a Binary file of Spherical

Harmonic coefficients and error covariance information

 

".DAT" indicates the data is stored in binary format.

 

Each SHBDR file is accompanied by a detached PDS label; that

label is a file in its own right, having the name GTsss_nnnnvv_SHB.LBL.

 

2.4. Interface Medium Characteristics

 

SHBDR 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 standards for the medium on

which the files are stored.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3. ACCESS

 

3.1. Programs Using the Interface

 

Data contained in SHBDR 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 SHBDR is a file generated by software at the institution

conducting scientific data analysis. Each SHBDR file is accompanied

by a detached PDS label.

 

4.2. Detached PDS Label

 

The detached PDS label is a file with two parts -- a header,

and a set of one to four PDS TABLE object definitions.

The header contains information about the origin of the file and its

general characteristics such as record type and size.

The TABLE object definitions describe the format and content of the

tables that make up the SHBDR data file. The SHBDR Header Table Object

definition is required. The SHBDR Names Object Definition is required

if there is an SHBDR Names Object in the file. The SHBDR Coefficients

Table Object definition is required if there is a SHBDR Coefficients Table

in the file; the SHBDR Covariance Table Object definition is required

if there is a SHBDR Covariance Table.

Each detached PDS label is constructed of ASCII records; each record

in the label contains exactly 80 characters. The last two characters in

each record are the carriage-return (ASCII 13) and line-feed (ASCII 10)

characters.

 

An example of a complete label and data object is given in Appendix C.

 

4.2.1 Label Header

The structure of the label header is illustrated in Figure 4-2-1.

Keyword definitions are given below.

PDS_VERSION_ID =

The version of the Planetary Data System for which these data have been

prepared; set to PDS3 by agreement between the mission and PDS.

RECORD_TYPE =

The type of record. Set to "FIXED_LENGTH" to indicate that all logical

records have the same length.

RECORD_BYTES =

The number of bytes per (fixed-length) record.

FILE_RECORDS =

The number of records in the SHBDR file: instance dependent.

 

^SHBDR_HEADER_TABLE=

File name and record number at which SHBDR_HEADER_TABLE begins. Set to

("GTsss_nnnnvv_SHB.DAT ",1) where " GTsss_nnnnvv_SHB.DAT " is the file name as described in Section 2.3, and 1 is the record number since this is the first record in the SHBDR file.

 

|====================================================================|

| |

| Figure 4-2-1 SHBDR Label Header |

| |

|====================================================================|

| |

| PDS_VERSION_ID = PDS3

| RECORD_TYPE = FIXED_LENGTH |

| RECORD_BYTES = nnn |

| FILE_RECORDS = nnn |

| ^SHBDR_HEADER_TABLE = ("GTsss_nnnnvv_SHB.DAT",1) |

| ^SHBDR_NAMES_TABLE = ("GTsss_nnnnvv_SHB.DAT ",1) |

| ^SHBDR_COEFFICIENTS_TABLE = ("GTsss_nnnnvv_SHB.DAT ",nn) |

| ^SHBDR_COVARIANCE_TABLE = ("GTsss_nnnnvv_SHB.DAT ",nnn) |

| INSTRUMENT_HOST_NAME = "cccccccccccccccccccc" |

| TARGET_NAME = "cccc" |

| INSTRUMENT_NAME = "ccccccccccccccccccccccc" |

| DATA_SET_ID = "ccccccccccccccccccccccc" |

| OBSERVATION_TYPE = "ccccccccccccc" |

| ORIGINAL_PRODUCT_ID = "ccccccccccccc" |

| PRODUCT_ID = "GTnnnnvv.SHB" |

| PRODUCT_RELEASE_DATE = YYYY-MM-DD |

| DESCRIPTION = "cccccccccccccccccc" |

| START_ORBIT_NUMBER = nnnn |

| STOP_ORBIT_NUMBER = nnnn |

| START_TIME = YYYY-MM-DDThh:mm:ss |

| STOP_TIME = YYYY-MM-DDThh:mm:ss |

| PRODUCT_CREATION_TIME = YYYY-MM-DDThh:mm:ss.fff |

| PRODUCER_FULL_NAME = "cccccccccccc" |

| PRODUCER_INSTITUTION_NAME = "ccccccccccc" |

| PRODUCT_VERSION_TYPE = "cccccccccccc" |

| PRODUCER_ID = "ccccccc" |

| SOFTWARE_NAME = "ccccccc;Vn.m" |

|====================================================================|

^SHBDR_NAMES_TABLE =

File name and record number at which the SHBDR_NAMES_TABLE begins. The

Names Table is required if the Coefficients Table is included in the file.

This pointer will not appear in the SHBDR label if there are no Coefficients

Table. Set to ("GTsss_nnnnvv_SHB.DAT ",nn) where " GTsss_nnnnvv_SHB.DAT " is the file name as described in Section 2.3, and "nn" is the record number in the file where the Names Table begins.

 

^SHBDR_COEFFICIENTS_TABLE=

File name and record number at which SHBDR_COEFFICIENTS_TABLE begins. The

Coefficients Table is optional; this pointer will not appear in the SHBDR

label if there is no Coefficients Table. Set to ("GTsss_nnnnvv_SHB.DAT ",nn) where " GTsss_nnnnvv_SHB.DAT " is the file name as described in Section 2.3, and "nn" is the record number in the file where the Coefficients Table begins.

^SHBDR_COVARIANCE_TABLE=

File name and record number at which SHBDR_COVARIANCE_TABLE begins. The

Covariance Table is optional; this pointer will not appear in the SHBDR label

if there is no Covariance Table. Set to ("GTsss_nnnnvv_SHB.DAT ",nn) where

" GTsss_nnnnvv_SHB.DAT " is the file name as described in Section 2.3, and "nn" is the record number in the file where the Covariance Table begins.

INSTRUMENT_HOST_NAME =

Name of the spacecraft; acceptable names include "MARS GLOBAL SURVEYOR"

"LUNAR PROSPECTOR", "MARS RECONNAISSANCE ORBITER", and "MERCURY SURFACE, SPACE, ENVIRONMENT, GEOCHEMISTRY, AND RANGING".

 

TARGET_NAME =

A character string that identifies the target body. For MRO- and MGS-

derived SHBDR files, the character string will be "MARS". For MESSENGER

SHBDR files the character string will be "MERCURY". For Lunar Prospector

SHBDR files, the character string will be "MOON".

 

INSTRUMENT_NAME =

Name of the instrument; set to "RADIO SCIENCE SUBSYSTEM" for products

generated from radio science data, or set to other instrument names

as appropriate.

DATA_SET_ID =

Identifier for the data set of which this SHBDR product is a member.

-Set to "MRO-M-RSS-5-SDP-Vn.m" for Mars Reconnaissance Orbiter;

-Set to "MESS-H-RSS-5-SDP-Vn.m" for MESSENGER;

-Set to "MGS-M-RSS-5-SDP-Vn.m" for MGS; and "

-Set to "LP-L-RSS-5-SHGBDR-L2-Vn.m" for Lunar Prospector;

The suffix Vn.m indicates the version number of the data set.

 

OBSERVATION_TYPE =

A character string that identifies the data in the product. For

the spherical harmonic model of a gravity field, the character

string "GRAVITY FIELD". For a model of planet topography,

the character string "TOPOGRAPHY".

ORIGINAL_PRODUCT_ID =

Optional. An identifier for the product provided by the producer.

Generally a file name, different from PRODUCT_ID, which would be

recognized at the producer's home institution.

PRODUCT_ID =

A unique identifier for the product within the collection identified

by DATA_SET_ID. Generally, the file name used in pointers

^SHBDR_HEADER_TABLE. The naming convention is defined in Section 2.3.

 

PRODUCT_RELEASE_DATE =

The date on which the product was released to the Planetary Data

System; entered in the format "YYYY-MM-DD", where components are

defined in Section 1.5.4.2.

 

DESCRIPTION =

A short description of the SHBDR product.

START_ORBIT_NUMBER =

Optional. The first orbit represented in the SHBDR product. An integer.

STOP_ORBIT_NUMBER =

Optional. The last orbit represented in the SHBDR product. An integer.

 

START_TIME =

Optional. The date/time of the first data included in the model, expressed

in the format "YYYY-MM-DDThh:mm:ss" where the components are defined

in section 1.5.4.2.

 

STOP_TIME =

Optional. The date/time of the last data included in the model, expressed

in the format "YYYY-MM-DDThh:mm:ss" where the components are defined in

section 1.5.4.2.

PRODUCT_CREATION_TIME =

The time at which this SHBDR was created; expressed in the format

"YYYY-MM- DDThh:mm:ss.fff" where the components are

defined in Section 1.5.4.2.

 

PRODUCER_FULL_NAME=

The name of the person primarily responsible for production of this SHBDR

file. Expressed as a character string, for example "JOHANNES KEPLER".

 

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"

"MASSACHUSETTS INSTITUTE OF TECHNOLOGY"

 

PRODUCT_VERSION_TYPE=

The version of this SHBDR.

Standard values include "PREDICT", "PRELIMINARY", and "FINAL".

 

PRODUCER_ID =

The entity responsible for creation of the SHBDR product. For products

generated by the Mars Reconnaissance Orbiter Gravity Science Team set to

"MRO GST". For products generated by the MESSENGER Laser Altimeter Science

Team, set to "MESS LAST". For products generated by the Mars Global Surveyor

Radio Science Team, set to "MGS RST".

 

SOFTWARE_NAME =

The name and version number of the program creating this SHBDR file;

expressed as a character string in the format "PROGRAM_NAME;n.mm"

where "PROGRAM_NAME" is the name of the software and "n.mm" is

the version number. (e.g. "SOLVE;200201.02")

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.2.2 TABLE Object Definitions

 

4.2.2.1 SHBDR Header Object Definition

 

Each SHBDR 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. The SHBDR Header Object Definition

is a required part of the SHBDR label file. It immediately follows

 

OBJECT = SHBDR_HEADER_TABLE

ROWS = 1

COLUMNS = 9

ROW_BYTES = 56

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR header includes descriptive

information about the spherical harmonic coefficients that follow in

SHBDR_COEFFICIENTS_TABLE. The header consists of a single record of

nine data columns requiring 56 bytes. The Header is followed by a

pad of binary integer zeroes to ensure alignment with RECORD_BYTES."

OBJECT = COLUMN

NAME = "REFERENCE RADIUS"

DATA_TYPE = IEEE_REAL

START_BYTE = 1

BYTES = 8

UNIT = "KILOMETER"

DESCRIPTION = "The assumed reference radius

of the spherical planet."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "CONSTANT"

DATA_TYPE = IEEE_REAL

START_BYTE = 9

BYTES = 8

UNIT = "KM^3/S^2"

DESCRIPTION = "For a gravity field model

the assumed gravitational constant GM in kilometers 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 = IEEE_REAL

START_BYTE = 17

BYTES = 8

UNIT = "KM^3/S^2"

DESCRIPTION = "For a gravity field model the uncertainty

in the gravitational constant GM in kilometers cubed per seconds squared

for the planet. For a topography, set to 0."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "DEGREE OF FIELD"

DATA_TYPE = MSB_INTEGER

START_BYTE = 25

BYTES = 4

UNIT = "N/A"

DESCRIPTION = "The degree of model field."

END_OBJECT = COLUMN

OBJECT = COLUMN

NAME = "ORDER OF FIELD"

DATA_TYPE = MSB_INTEGER

START_BYTE = 29

BYTES = 4

UNIT = "N/A"

DESCRIPTION = "The order of the model field."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "NORMALIZATION STATE"

DATA_TYPE = MSB_INTEGER

START_BYTE = 33

BYTES = 4

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 = "NUMBER OF NAMES"

DATA_TYPE = MSB_INTEGER

START_BYTE = 37

BYTES = 4

UNIT = "N/A"

DESCRIPTION = "Number of valid names in the SHBDR Names

Table. Also, the number of valid coefficients in the SHBDR

Coefficients Table."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "REFERENCE LONGITUDE"

POSITIVE_LONGITUDE_DIRECTION = "EAST"

DATA_TYPE = IEEE_REAL

START_BYTE = 41

BYTES = 8

UNIT = "DEGREE"

DESCRIPTION = "The reference longitude

for the spherical harmonic expansion; normally 0."

END_OBJECT = COLUMN

OBJECT = COLUMN

NAME = "REFERENCE LATITUDE"

DATA_TYPE = IEEE_REAL

START_BYTE = 49

BYTES = 23

FORMAT = "E23.16"

UNIT = "DEGREE"

DESCRIPTION = "The reference latitude

for the spherical harmonic expansion; normally 0."

END_OBJECT = COLUMN

 

END_OBJECT = SHBDR_HEADER_TABLE

4.2.2.2 SHBDR Names Object Definition

 

The SHBDR Names Object is completely defined by the Names

Object Definition in the label. The definition below

illustrates general structural form. The SHBDR Names Object is an

optional part of the SHBDR file. If the Names Object is not

included, either the Names Object Definition will be omitted or the

number of rows will be set to zero (ROWS = 0). If the Names Object

is not included, the pointer ^SHBDR_NAMES_TABLE will not appear in

the Standard Keywords and Values. If the Coefficients Object is

included in the SHBDR file, the Names Object is required.

 

OBJECT = SHBDR_NAMES_TABLE

ROWS = *

COLUMNS = 1

ROW_BYTES = 8

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR Names Table contains names

for the solution parameters (including gravity field coefficients) which

will follow in the SHBDR_COEFFICIENTS_TABLE. The order of the names

in the SHBDR_NAMES_TABLE corresponds identically to the order

of the parameters in the SHBDR_COEFFICIENTS_TABLE. Each coefficient

name is of the form Cnm or Snm where n is the degree of the

coefficient and m is the order of the coefficient.

Both indices are three-digit zero-filled right-justified ASCII

character strings (for example, C010005 for the 10th degree 5th order

C coefficient, or S002001 for the 2nd degree 1st order S coefficient).

The eighth byte in the table is an ASCII blank used to ensure

that the row length is equal to RECORD_BYTES. Names of other solution

parameters are limited to 8 ASCII characters; if less than 8, they

will be left-justified and padded with ASCII blanks. The Names Table

itself will be padded with ASCII blanks, if necessary, so that

its length is an integral multiple of RECORD_BYTES."

 

OBJECT = COLUMN

NAME = "PARAMETER NAME"

DATA_TYPE = CHARACTER

START_BYTE = 1

BYTES = 8

UNIT = "N/A"

DESCRIPTION = "The name of the coefficient or other

solution parameter, left-justified and padded with ASCII blanks

(if needed) to 8 characters."

END_OBJECT = COLUMN

END_OBJECT = SHBDR_NAMES_TABLE

 

4.2.2.3 SHBDR Coefficients Object Definition

The SHBDR Coefficients Object is completely defined by the

Coefficients Object Definition in the label. Small differences in

DESCRIPTION values should be expected from product to product. The

structure outlined in the Definition below should not vary, however.

The SHBDR Coefficients Object is an optional part of the

SHBDR data file. This allows the SHBDR 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 Covariance Object is included in the

SHBDR, the Coefficients Object is required.

 

If the Coefficients Object is not included in the SHBDR

file, either the SHBDR Coefficients Object Definition will be

omitted or the number of rows will be set to zero (ROWS = 0).

If the SHBDR Coefficients Object is not included, the pointer

^SHBDR_COEFFICIENTS_TABLE will not appear in the label header.

If the SHBDR Coefficients Object Definition is included in the

label, it immediately follows the SHBDR Names Object Definition.

The order in which coefficients appear in the Coefficients

Object is defined by the Names Object [2].

 

OBJECT = SHBDR_COEFFICIENTS_TABLE

ROWS = *

COLUMNS = 1

ROW_BYTES = 8

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR Coefficients Table

contains the coefficients and other solution parameters

for the spherical harmonic model. The order of the

coefficients in this table corresponds exactly to the

order of the coefficient and parameter names in

SHBDR_NAMES_TABLE. The SHBDR Coefficients Table will be

padded with double precision DATA_TYPE zeroes so that

its total length is an integral multiple of RECORD_BYTES."

 

OBJECT = COLUMN

NAME = "COEFFICIENT VALUE"

DATA_TYPE = *

START_BYTE = 1

BYTES = 8

UNIT = "N/A"

DESCRIPTION = "A coefficient Cnm or

Snm or other solution parameter as specified in the

SHBDR Names Table."

END_OBJECT = COLUMN

END_OBJECT = SHBDR_COEFFICIENTS_TABLE

 

4.2.2.4 SHBDR Covariance Object Definition

 

The SHBDR Covariance Object is completely defined by the

Covariance Object Definition in the 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 SHBDR Covariance Object is an optional part of the SHBDR

data 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 SHBDR Covariance Object is not

included, the pointer ^SHBDR_COVARIANCE_TABLE will not appear in the

label header. If the SHBDR Covariance Object Definition is included

in the label, it immediately follows the SHBDR Coefficients Object

Definition.

The order in which covariance terms appear in the Covariance

Object is defined by the Names Object [2].

 

 

 

OBJECT = SHBDR_COVARIANCE_TABLE

ROWS = *

COLUMNS = 1

ROW_BYTES = 8

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR Covariance Table

contains the covariances for the spherical harmonic model

coefficients and other solution parameters. The order of

the covariances in this table is defined by the product

of the SHBDR Names Table with its transpose, except that

redundant terms are omitted on their second occurrence.

The SHBDR Covariance Table will be padded with double

precision DATA_TYPE zeroes so that its total length is

an integral multiple of RECORD_BYTES."

OBJECT = COLUMN

NAME = "COVARIANCE VALUE"

DATA_TYPE = *

START_BYTE = 1

BYTES = 8

UNIT = "N/A"

DESCRIPTION = "The covariance value

for the coefficients and other solution parameters

specified by the product of SHBDR_NAMES_TABLE with

its transpose, after omitting redundant terms."

END_OBJECT = COLUMN

END_OBJECT = SHBDR_COVARIANCE_TABLE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.3. Data File

 

Each SHBDR data file comprises one or more data blocks. The

data objects were defined in Section 4.2. The data blocks are

illustrated below.

 

The Header Object is required in each SHBDR file; the Names

Object, the Coefficients Object, and the Covariance Object are

optional. If the Covariance Object is included, both the Coefficients

Object and the Names Object are required; if the Coefficients Object

is included, the Names Object is required.

 

 

 

4.3.1. SHBDR Header Object/Block

 

The SHBDR Header Object contains the parameters necessary to

interpret the data in the SHBDR file. The structure and content of

the SHBDR Header Object are defined in Section 4.2.2.1. The SHBDR

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-3-1.

 

|====================================================================|

| |

| Table 4-3-1. SHBDR Header Block |

| |

|====================================================================|

| Col No | Offset | Length | Format | Column Nam |

|--------|--------|--------|--------|--------------------------------|

| 1 | +0 | 8 | double |Planetary Radius |

|--------|--------|--------|--------|--------------------------------|

| 2 | 8 | 8 | double |Constant |

|--------|--------|--------|--------|--------------------------------|

| 3 | 16 | 8 | double |Uncertainty in Constant |

|--------|--------|--------|--------|--------------------------------|

| 4 | 24 | 4 | long |Degree of Field |

|--------|--------|--------|--------|--------------------------------|

| 5 | 28 | 4 | long |Order of Field |

|--------|--------|--------|--------|--------------------------------|

| 6 | 32 | 4 | long |Normalization State |

|--------|--------|--------|--------|--------------------------------|

| 7 | 36 | 4 | long |Number of Names |

|--------|--------|--------|--------|--------------------------------|

| 8 | 40 | 8 | double |Reference Longitude |

|--------|--------|--------|--------|--------------------------------|

| 9 | 48 | 8 | double |Reference Latitude |

|--------|--------|--------|--------|--------------------------------|

| | +56 | |

|========|========|========|========|================================|


 

4.3.2. SHBDR Names Block

 

The SHBDR Names Object comprises one or more SHBDR Names

Blocks. Each block contains the name of one coefficient or solution

parameter in the Spherical Harmonic Model. The structure and content

of the SHBDR Names Object are defined in Section 4.2.2.2. The

structure of an individual block is shown in Table 4-3-2.

 

 

|====================================================================|

| |

| Table 4-3-2. SHBDR Names Block |

| |

|====================================================================|

| Col No | Offset | Length | Format | Column Name |

|--------|--------|--------|--------|--------------------------------|

| 1 | +0 | 8 | A8 |Coefficient or Solution |

| | | | |Parameter Name |

|--------|--------|--------|--------|--------------------------------|

| | +8 | |

|========|========|========|========|================================|

 

 

4.3.3. SHBDR Coefficients Block

 

The SHBDR Coefficients Object comprises one or more SHBDR

Coefficients Blocks. Each block contains the value of one

coefficient or other solution parameter for the overall model defined

by the SHBDR product. The structure and content of the SHBDR

Coefficients Object are defined in Section 4.2.2.3. The structure

of an individual block is shown in Table 4-3-3.

 

 

|====================================================================|

| |

| Table 4-3-3. SHBDR Coefficients Block |

| |

|====================================================================|

| Col No | Offset | Length | Format | Column Name |

|--------|--------|--------|--------|--------------------------------|

| 1 | +0 | 8 | double |Coefficient Cnm or Snm or |

| | | | |other solution parameter |

|--------|--------|--------|--------|--------------------------------|

| | +8 | |

|========|========|========|========|================================|

 

 

4.3.4. SHBDR Covariance Block

 

The SHBDR Covariance Object comprises one or more SHBDR

Covariance Blocks. Each SHBDR Covariance Block contains one

covariance for the overall model defined by the SHBDR product. The

structure and content of the SHBDR Covariance Object are defined in

Section 4.2.2.4. The structure of an individual block is shown in

Table 4-3-4. The SHBDR Covariance Object is an optional component of

the SHBDR file.

 

 

 

|====================================================================|

| |

| Table 4-3-4. SHBDR Covariance Block |

| |

|====================================================================|

| Col No | Offset | Length | Format | Column Name |

|--------|--------|--------|--------|--------------------------------|

| 1 | +0 | 8 | double |Covariance Value |

|--------|--------|--------|--------|--------------------------------|

| | +8 | |

|========|========|========|========|================================|

5. SUPPORT STAFF AND COGNIZANT PERSONNEL

 

The following persons may be contacted for information.

 

Mars Reconnaissance Orbiter Gravity Science Team

Frank G. Lemoine

Code 698, Planetary Geodynamics Laboratory

NASA Goddard Space Flight Center

Greenbelt, Maryland 20771 U.S.A.

Phone: 301-614-6109

FAX: 301-614-6522

Electronic mail: Frank.Lemoine@gsfc.nasa.gov

 

MESSENGER Laser Altimeter Science Team

Maria T. Zuber

Department of Earth, Atmospheric, and Planetary

Sciences

Massachusetts Institute of Technology

54-918

Cambridge, MA 02139-4307

Phone: 617-253-0149

FAX: 617-253-8298

 

Planetary Data System:

PDS Operator

Planetary Data System

MS 202-101

Jet Propulsion Laboratory

4800 Oak Grove Drive

Pasadena, CA 91109-8099

Phone: 818-354-4321

Electronic Mail: pds_operator@jpl.nasa.gov

 

 

 

 

 

 

 

 

 

 

 

 

 

 

APPENDIX A.

 

A.1 Definition of Spherical harmonic models for the geopotential.

 

Spherical harmonics satisfy Laplace's equation in spherical coordinates.

The gravity potential field of the planets and the mathematical

representation of magnetic fields and topographic fields are readily

expressed in terms of spherical harmonics. Useful reviews are by Lambeck

[11] (Section 2.2, Elements of Potential Theory) and Kaula [12] (Section 1.1

Potential Theory, and Section 1.2 Spherical Harmonics).

V = (GM/r) + (GM/r)*SUMMATION_n SUMMATION_m (Re/r)**n [Cnm" cos(mL) + Snm" sin(mL)]* Pnm"(sin(phi))

(Equation A-1-1)

 

where GM is the gravitational constant of the planet, r is the radial

distance of the test point from the origin, and Re is the assumed reference

radius of the spherical planet for which the coefficients were calculated.

The summations take place from degree n=1 to infinity, and order m=0 to n;

Cnm" and Snm" refer to the normalized spherical harmonic coefficients (see

Section A.2 below); L is the longitude; the Pnm" are the normalized

associated Legendre functions of degree n and order m; and phi is the

latitude of the test point. If we assume the origin is at the center of mass, the degree one terms vanish, and the summation in degree starts at degree n=2.

 

A "solution" for a spherical harmonic model of the geopotential refers

to a solution for these spherical harmonic coefficients and the gravitational

constant, GM, of the body.

 

In practice the spherical harmonic series is truncated at a maximum

degree nmax. For MRO, the likely degree of truncation will be between n=100

and n=120. For MESSENGER gravity solutions of the planet Mercury, solutions

will likely be truncated at degree 20. The degree of truncation depends on

the quality of the tracking data, and the orbits of the spacecraft in the

geopotential solution. For Lunar Prospector derived gravity solutions,

the maximum degree has ranged from n=100 to n=165 [10].

 

If the origin is placed at the center of mass, the degree 1 terms

vanish from the spherical harmonic expansion, and

the first summation above is then from (n=2) to the maximum degree, nmax.

 

Figure 1, section 1.2 from Kaula [11] gives examples of spherical

harmonics. The zonal terms, m=0, have n zeros in a distance pi along a

meridian N-S in other words they represent only latitudinal varations

in the potential.

 

Zonal terms may be represented in the literature as Jn = - Cn0.

 

Aside from GM, C20 is the most significant term in the gravity field

(for planets such as the Earth and Mars), and reflects the dynamical

expression of the planet's polar flattening.

 

Tesseral harmonics (coefficients where n is not equal to m, and m > 0,

have n-m zeros in a distance pi along a meridian

(like the tesserae of a mosaic).

 

Sectoral harmonics are coefficients where n=m and are constant

in sectors of longitude (N-S) and have n zero crossings in a distance pi

along a meridian of latitude (E-W).

 

A.2 Definition of the normalization used for geopotential coefficients.

The normalization for spherical harmonic coefficients is given by Lambeck[11]

 

Cnm" = Cnm/PI_nm

(Equation A-2-1)

where Cnm" is normalized and Cnm is un-normalized, and

 

[PI_nm]**2 = (2 - delta_0m) * (2n+1) * (n-m)! / (n+m)!

(Equation A-2-2)

 

delta_0m refers to the Kronecker delta function -- unity for coefficients

where m=0 (the zonal terms), zero for order m > 0.

 

For zonal coefficients (m=0) the relation reduces to

Cnm" = Cnm / sqrt(2n+1)

 

For example, for the Earth C20 = -1.08262668355E-03 (un-normalized) so

C20" = C20 / sqrt(5) = -4.8416537173572E-04 (normalized)

 

Working the process backwards for Earth's C22 we have

 

C22" = .24391435239839D-05

(from the Earth Gravitational Model 1996, EGM96, [13])

 

[PI_nm]**2 = (2-0)*(2n+1) (2-2)! / (4)!

= 2*5*1/(4!) = 5/12

 

which yields

 

C22 = sqrt(5/12) * (.24391435239839E-05) = 1.5744604E-06

closely matching Lambeck's [11] result (page 14).

 

 

Likewise for Earth's S22, we have S22" = -.14001668365394E-05

(normalized from the Earth Gravitational Model 1996, EGM96, [13])

 

Thus,

 

S22= sqrt(5/12) * (-.14001668365394E-05) = -9.038038E-07 (un-normalized)

 

which matches closely the example given by Lambeck [11].

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

APPENDIX B. BINARY DATA FORMAT

B.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.

 

B.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).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

APPENDIX C EXAMPLE DATA PRODUCTS

 

Appendix C.1 Example Label

 

The following lists an example SHBDR LBL file for a

Mars gravity solution, GGM2BC80.SHB, prepared by Frank Lemoine

of NASA GSFC.

For MESSENGER the "INSTRUMENT_HOST_NAME" would be listed

instead of "MESSENGER" instead of "MARS RECONNAISSANCE ORBITER".

The DESCRIPTION would be changed to reflect the data content of the

MESSENGER gravity solutions. Other fields

(e.g., PRODUCT_RELEASE_DATE, PRODUCT_ID, INSTRUMENT NAME, START_TIME,

STOP_TIME, PRODUCT_CREATION TIME) would also be changed as appropriate.

 

PDS_VERSION_ID = "PDS3"

FILE_NAME = "GGM2BC80.SHB"

RECORD_TYPE = FIXED_LENGTH

RECORD_BYTES = 512

FILE_RECORDS = 336254

^SHBDR_HEADER_TABLE = ("GGM2BC80.SHB",1)

^SHBDR_NAMES_TABLE = ("GGM2BC80.SHB",2)

^SHBDR_COEFFICIENTS_TABLE = ("GGM2BC80.SHB",105)

^SHBDR_COVARIANCE_TABLE = ("GGM2BC80.SHB",208)

 

INSTRUMENT_HOST_NAME = "MARS RECONNAISSANCE ORBITER"

TARGET_NAME = "MARS"

INSTRUMENT_NAME = "RADIO SCIENCE SUBSYSTEM"

DATA_SET_ID = "MRO-M-RSS-5-SDP-V1.0"

OBSERVATION_TYPE = "GRAVITY FIELD"

PRODUCT_ID = "GGM2BC80.SHB"

PRODUCT_RELEASE_DATE = 2006-02-28

DESCRIPTION = "

 

The data in this covariance matrix are stored row-wise,

in upper triangular form. The error covariance contains

21506961 elements and has 336254 records. There are 6558

parameters in the GGM2BC80.SHB covariance matrix: the

C and S gravity coefficients from degree 2 to 80 (inclusive)

and the GM of the Mars gravity field. The data format is big endian.

This file contains coefficients and related data for a spherical

harmonic model of the Mars gravity field. Input data are from

radio tracking of the Mars Global Surveyor spacecraft; no Mariner 9

or Viking data are included. Coordinate system is IAU 1991 (Davies

et al., Celestial Mechanics and Dynamical Astronomy, 53, 377-397,

1992).

The model was constructed from 955,115 observations, summarized

in the table below. MGS data are limited to tracking from the

Aerobraking Hiatus and Science Phasing Orbit (SPO) subphases of the

Orbit Insertion phase of the mission and to February 1999 to

February 2000 after the orbit was circularized.

 

 

 

 

 

 

 

Time Periods Total

Arcs Observations

----------------------- ---- ------------

Hiatus 2 24119

SPO-1 8 31001

SPO-2 16 157972

Feb-Mar 1999 9 76813

Apr 1999 - Feb 2000 47 665210

----------------------- ---- ------------

Total 955115

Orbit reconstruction was improved using Mars Orbiter Laser Altimeter

(MOLA) data on 5 arcs between March and December 1999. Inter-arc

and intra-arc crossovers at 21343 points were included in the orbit

solutions.

The gravity model was derived using a Kaula type constraint:

sqrt(2)*13*10**(-5)/L**2 (Kaula, W.M., Theory of Satellite Geodesy,

Blaisdell, Waltham, MA, 1966).

The analysis and results were described by F.G. Lemoine,

D.D. Rowlands, D.E. Smith, D.S. Chinn, G.A. Neumann, and M.T. Zuber

at the Spring Meeting of the American Geophysical Union, May 30 -

June 3, 2000, Washington. DC.

Further improvements to the model are expected as additional MGS

data are incorporated.

This product is a set of two ASCII tables: a header table and a

coefficients table. Definitions of the tables follow.

This Mars gravity model was produced by F.G. Lemoine under the

direction of D.E. Smith of the MGS Radio Science Team.

A reference for this gravity model is as follows:

 

An improved solution of the gravity field of Mars (GMM-2B)

from Mars Global Surveyor, F.G. Lemoine, D.E. Smith, D.D. Rowlands,

M.T. Zuber, G.A. Neumann, D.S. Chinn, and D.E. Pavlis,

J. Geophys. Res., 106(E10), pp. 23359-23376. October 25, 2001."

 

START_TIME = 1997-10-13T00:00:00

STOP_TIME = 2000-02-29T12:05:00

START_ORBIT_NUMBER = 19

STOP_ORBIT_NUMBER = 4375

PRODUCT_CREATION_TIME = 2000-09-18T00:00:00.000

PRODUCER_FULL_NAME = "FRANK G. LEMOINE"

PRODUCER_INSTITUTION_NAME = "GODDARD SPACE FLIGHT CENTER"

PRODUCT_VERSION_TYPE = "FINAL"

PRODUCER_ID = "MRO GST"

SOFTWARE_NAME = "SOLVE.F90INLINE3;2000.01"

 

 

 

 

 

 

 

 

 

OBJECT = SHBDR_HEADER_TABLE

ROWS = 1

COLUMNS = 9

ROW_BYTES = 56

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR Header includes

descriptive information about the spherical harmonic

coefficients that follow in SHBDR_COEFFICIENTS_TABLE.

The header consists of a single record of nine data

columns requiring 56 bytes. The Header is followed by

a pad of binary integer zeroes to ensure alignment

with RECORD_BYTES."

 

OBJECT = COLUMN

NAME = "REFERENCE RADIUS"

DATA_TYPE = IEEE_REAL

START_BYTE = 1

BYTES = 8

UNIT = "KILOMETER"

DESCRIPTION = "The assumed reference

radius of the spherical planet."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "CONSTANT"

DATA_TYPE = IEEE_REAL

START_BYTE = 9

BYTES = 8

UNIT = "KM^3/S^2"

DESCRIPTION = "For a gravity field model

the gravitational constant GM in km 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 = IEEE_REAL

START_BYTE = 17

BYTES = 8

UNIT = "KM^3/S^2"

DESCRIPTION = "For a gravity field model

the uncertainty in the gravitational constant GM in km

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 = MSB_INTEGER

START_BYTE = 25

BYTES = 4

UNIT = "N/A"

DESCRIPTION = "Degree of the model field."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "ORDER OF FIELD"

DATA_TYPE = MSB_INTEGER

START_BYTE = 29

BYTES = 4

UNIT = "N/A"

DESCRIPTION = "Order of the model field."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "NORMALIZATION STATE"

DATA_TYPE = MSB_INTEGER

START_BYTE = 33

BYTES = 4

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 = "NUMBER OF NAMES"

DATA_TYPE = MSB_INTEGER

START_BYTE = 37

BYTES = 4

UNIT = "N/A"

DESCRIPTION = "Number of valid names in

the SHBDR Names Table. Also, the number of valid

coefficients in the SHBDR Coefficients Table."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "REFERENCE LONGITUDE"

POSITIVE_LONGITUDE_DIRECTION = "EAST"

DATA_TYPE = IEEE_REAL

START_BYTE = 41

BYTES = 8

UNIT = "DEGREE"

DESCRIPTION = "The reference longitude for

the spherical harmonic expansion; normally 0."

END_OBJECT = COLUMN

 

OBJECT = COLUMN

NAME = "REFERENCE LATITUDE"

DATA_TYPE = IEEE_REAL

START_BYTE = 49

BYTES = 8

UNIT = "DEGREE"

DESCRIPTION = "The reference latitude for

the spherical harmonic expansion; normally 0."

END_OBJECT = COLUMN

 

END_OBJECT = SHBDR_HEADER_TABLE

 

 

 

 

 

OBJECT = SHBDR_NAMES_TABLE

ROWS = 6558

COLUMNS = 1

ROW_BYTES = 8

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR Names Table

contains names for the solution parameters (including

gravity field coefficients) which will follow in

SHBDR_COEFFICIENTS_TABLE. The order of the names

in SHBDR_NAMES_TABLE corresponds identically to the

order of the parameters in SHBDR_COEFFICIENTS_TABLE.

Each coefficient name is of the form Cij or Sij

where i is the degree of the coefficient and j is

the order of the coefficient. Both indices are three-

digit zero-filled right-justified ASCII character strings

(for example, C010005 for the 10th degree 5th order C

coefficient, or S002001 for the 2nd degree 1st order

S coefficient). The eighth byte in the table is an

ASCII blank used to ensure that the row length

is equal to RECORD_BYTES. Names of other solution

parameters are limited to 8 ASCII characters; if less

than 8, they will be left-justified and padded with

ASCII blanks. The Names Table itself will be padded

with ASCII blanks, if necessary, so that its length is

an integral multiple of RECORD_BYTES."

 

OBJECT = COLUMN

NAME = "PARAMETER NAME"

DATA_TYPE = CHARACTER

START_BYTE = 1

BYTES = 8

UNIT = "N/A"

DESCRIPTION = "The name of the

coefficient or other solution parameter, left-

justified and padded with ASCII blanks (if needed)

to 8 characters."

END_OBJECT = COLUMN

 

END_OBJECT = SHBDR_NAMES_TABLE

 

OBJECT = SHBDR_COEFFICIENTS_TABLE

ROWS = 6558

COLUMNS = 1

ROW_BYTES = 8

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR Coefficients Table

contains the coefficients and other solution parameters

for the spherical harmonic model. The order of the

coefficients in this table corresponds exactly to the

order of the coefficient and parameter names in

SHBDR_NAMES_TABLE. The SHBDR Coefficients Table will be

padded with double precision DATA_TYPE zeroes so that

its total length is an integral multiple of RECORD_BYTES."

 

 

 

 

 

 

 

OBJECT = COLUMN

NAME = "COEFFICIENT VALUE"

DATA_TYPE = IEEE_REAL

START_BYTE = 1

BYTES = 8

UNIT = "N/A"

DESCRIPTION = "A coefficient Cij or

Sij or other solution parameter as specified in the

SHBDR Names Table."

END_OBJECT = COLUMN

 

END_OBJECT = SHBDR_COEFFICIENTS_TABLE

 

OBJECT = SHBDR_COVARIANCE_TABLE

ROWS = 21506961

COLUMNS = 1

ROW_BYTES = 8

INTERCHANGE_FORMAT = BINARY

DESCRIPTION = "The SHBDR Covariance Table

contains the covariances for the spherical harmonic model

coefficients and other solution parameters. The order of

the covariances in this table is defined by the product

of the SHBDR Names Table with its transpose, except that

redundant terms are omitted on their second occurrence.

The SHBDR Covariance Table will be padded with double

precision DATA_TYPE zeroes so that its total length is

an integral multiple of RECORD_BYTES."

 

OBJECT = COLUMN

NAME = "COVARIANCE VALUE"

DATA_TYPE = IEEE_REAL

START_BYTE = 1

BYTES = 8

UNIT = "N/A"

DESCRIPTION = "The covariance value

for the coefficients and other solution parameters

specified by the product of SHBDR_NAMES_TABLE with

its transpose, after omitting redundant terms."

END_OBJECT = COLUMN

 

END_OBJECT = SHBDR_COVARIANCE_TABLE

 

END

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Appendix C.2 Example SHBDR Data Object Output

 

The following lists the first few lines from an example SHBDR file,

the GGM2BC80.SHB Gravity field solution covariance.

 

We describe below the extracts from a FORTRAN program to read the above

GGM2BC280.SHB covariance file, the error covariance of the gravity solution

GMM2B.

 

The SHB file is opened with the following FORTRAN open statement.

The key is that the SHB file is a direct access binary file with a

record length (in this example) of 512 bytes.

 

i.e.

open (10, file='ggm2bc80.shb', status ='old', access='DIRECT', RECL=512)

 

The first record reads the general solution information, where the variables

have been carefully predefined at the top of the program.

...................................

real*8 ae, gm, gmsig, reflon, reflat

integer*4 lmax,mmax,inorm, nvar

read(10,rec=1)ae, gm, gmsig, lmax, mmax, inorm, nvar, reflon, reflat

...................................

On output these records are:

ae = 3397.0

gm = 42828.371901 | GM in km**3/sec**2

gmsig = 7.40E-05 | GM sigma in km**3/sec**2

lmax = 80

mmax = 80

inorm = 1

nvar = 6558 | total number of parameters in the solution.

reflon = 0.0E+0

reflat = 0.0E+0

 

The next step is to read the coefficient name table and compute

the number of lines in the coefficient name table. In this example file

there are 64 8 byte characters per record of 512 bytes.

.....................

nline = (nvar/64) + 1

.....................

c integer multiplication on the following line is intentional

c we need to know number of variables on the last line

..........................

jend = nvar - (nvar/64)*64

..........................

 

Record 2, or the first record of the names table contains the following:

C002000 C002001 C002002 C003000 C003001 C003002 C003003 C004000

C004001 C004002 C004003 C004004 C005000 C005001 C005002 C005003

C005004 C005005 C006000 C006001 C006002 C006003 C006004 C006005

C006006 C007000 C007001 C007002 C007003 C007004 C007005 C007006

C007007 C008000 C008001 C008002 C008003 C008004 C008005 C008006

C008007 C008008 C009000 C009001 C009002 C009003 C009004 C009005

C009006 C009007 C009008 C009009 C010000 C010001 C010002 C010003

C010004 C010005 C010006 C010007 C010008 C010009 C010010 C011000

 

 

 

 

 

Record 104 contains the last few coefficient names of the solution+GM:

S080052 S080053 S080054 S080055 S080056 S080057 S080058 S080059

S080060 S080061 S080062 S080063 S080064 S080065 S080066 S080067

S080068 S080069 S080070 S080071 S080072 S080073 S080074 S080075

S080076 S080077 S080078 S080079 S080080 GM

 

 

The Coefficients table begins at Record 105:

The first eight variables of that record are:

 

-0.87451D-03 0.13938D-09 -0.84178D-04 -0.11887D-04 0.39053D-05

-0.15863D-04 0.35339D-04 0.51258D-05

 

The first coefficient value is for C20.

 

The Coefficients table ends at Record 207 with 30 valid records and

the remainder zero filled:

-0.39660D-07 0.25145D-08 0.27213D-07 0.60636D-07 0.25307D-07

0.40813D-08 0.16849D-07 0.16050D-07

-0.30849D-07 -0.26461D-07 -0.79262D-08 0.35247D-07 0.53467D-08

0.33029D-07 0.35339D-07 0.28539D-07

-0.30311D-10 0.38384D-07 -0.19836D-07 0.75625D-07 -0.19420D-07

0.34309D-09 -0.17577D-07 0.36022D-07

0.42967D-07 0.42482D-07 -0.40326D-07 -0.19721D-07 -0.53860D-07

0.42828D+14

..........

 

The last valid record is the value of GM for this solution, as per

the order specified in the names record.