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
Daniel S. Kahan
Section 332
Jet Propulsion Laboratory
4800 Oak Grove Dr.
Pasadena, California, 91109 USA
Version 2.3
11 September 2013
|======================================================================|
| |
| 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 |
|======================================================================|
| 2.0 |13/04/17 | All |Adapted to include GRAIL |
|======================================================================|
| 2.1 |13/05/22 | All |Minor edits |
|======================================================================|
| 2.2 |13/06/18 | All |Revised SHBDR naming convention |
|======================================================================|
| 2.3 |13/09/11 | Appendices |Revised Appendices B & C for GRAIL |
|======================================================================|
Contents
Document Change Log................................................2
Contents...........................................................3
Acronyms and Abbreviations.........................................5
1. General Description.............................................6
1.1. Overview......................................................6
1.2. Scope.........................................................6
1.3. Applicable Documents..........................................6
1.4. System Siting.................................................8
1.4.1. Interface Location and Medium...............................8
1.4.2. Data Sources, Transfer Methods, and Destinations............8
1.4.3. Generation Method and Frequency.............................8
1.5. Assumptions and Constraints...................................8
1.5.1. Usage Constraints...........................................8
1.5.2. Priority Phasing Constraints................................8
1.5.3. Explicit and Derived Constraints............................8
1.5.4. Documentation Conventions...................................8
1.5.4.1. Data Format Descriptions..................................8
1.5.4.2. Time Standards............................................9
1.5.4.3. Coordinate Systems........................................9
1.5.4.4. Limits of This Document...................................9
1.5.4.5. Typographic Conventions..................................10
2. Interface Characteristics......................................11
2.1. Hardware Characteristics and Limitations.....................11
2.1.1. Special Equipment and Device Interfaces....................11
2.1.2. Special Setup Requirements.................................11
2.2. Volume and Size..............................................11
2.3. Labeling and Identification..................................11
2.4. Interface Medium Characteristics.............................12
2.5. Failure Protection, Detection, and Recovery Procedures.......12
2.6. End-of-File Conventions......................................12
3. Access.........................................................13
3.1. Programs Using the Interface.................................13
3.2. Synchronization Considerations...............................13
3.2.1. Timing and Sequencing Considerations.......................13
3.2.2. Effective Duration.........................................13
3.2.3. Priority Interrupts........................................13
3.3. Input/Output Protocols, Calling Sequences....................13
4. Detailed Interface Specifications..............................14
4.1. Structure and Organization Overview..........................14
4.2. Detached PDS Label...........................................14
4.2.1. Label Header...............................................14
4.2.2. TABLE Object Definitions...................................18
4.2.2.1. SHBDR Header Object Definition...........................18
4.2.2.2. SHBDR Names Object Definition............................20
4.2.2.3. SHBDR Coefficient Object Definition......................21
4.2.2.4 SHBDR Covariance Object Definition........................22
4.3. Data File....................................................23
4.3.1. SHBDR Header Object/Block..................................23
4.3.2. SHBDR Name Block...........................................23
4.3.3. SHBDR Coefficients Block...................................24
4.3.4. SHBDR Covariances Block....................................24
Appendix A. Description of Spherical Harmonic Model Normalization.26
A.1 Definition of Model for the Potential.........................26
A.2 Definition of the normalization used..........................27
Appendix B. Binary Data Format....................................28
Appendix C. Example Data Products.................................29
C.1. Example Label................................................29
C.2. Example Data Object..........................................35
Tables
4-3-1. SHBDR Header Block.........................................23
4-3-2. SHBDR Names Block..........................................24
4-3-3. SHBDR Coefficients Block...................................24
4-3-4. SHBDR Covariance Block.....................................25
Figures
4-2-1. SHBDR Label Header.........................................15
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
GRAIL Gravity Recovery and Interior Laboratory
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), Lunar Prospector (LP), Mars Reconnaissance Orbiter (MRO),
and MESSENGER missions. This update of the SIS was made to include the
Gravity Recovery and Interior Laboratory (GRAIL) mission [16]. Some of the
original mission-specific documentation has been omitted, but the file
format descriptions should still be applicable for the GRAIL mission.
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], the Mars Global Surveyor Mission, and
the GRAIL 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. F, Planetary Science Data Dictionary Document, Jet
Propulsion Laboratory, Pasadena, California, October 20, 2008.
(http://pds.jpl.nasa.gov/documents/psdd/psdd.pdf)
[15] JPL D-7669 Part 2, Planetary Data System Standards Reference, PDS
Version 3.8, Jet Propulsion Laboratory, February 27, 2009.
(http://pds.jpl.nasa.gov/documents/sr/index.html)
[16] Roncoli, R. B., and K. K. Fujii, Mission Design Overview for the
Gravity Recovery and Interior Laboratory (GRAIL) Mission, AIAA/AAS
Astrodynamics Specialist Conference, Toronto, Ontario, Canada, 2010.
http://arc.aiaa.org/doi/pdf/10.2514/6.2010-8383.
[17] Standish, E. M., Jr. (November 1982), Conversion of positions and
proper motions from B1950.0 to the IAU system at J2000.0, Astronomy and
Astrophysics 115 (1): 20-22. Bibcode 1982A&A...115...20S.
http://adsabs.harvard.edu/full/1982A%26A...115...20S
[18] Folkner, William M., The Planetary and Lunar Ephemeris DE 421, 2009.
IPN Progress Report 42-178.
http://ipnpr.jpl.nasa.gov/progress_report/42-178/178C.pdf
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 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].
GRAIL uses the DE 421 Lunar Body-Fixed Frame [17] as defined in the DE 421
planetary ephemeris [18].
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 fewer characters before the
period delimiter and 3 characters after the period delimiter. 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 GRAIL gravity products the following file naming convention is used:
GTsss_nnnnvv_SHB_Lccc.DAT
where
"G" denotes the generating institution
"J" for the Jet Propulsion Laboratory
"G" or Goddard Space Flight Center
"M" for Massachusetts Institute of Technology
"T" indicates the type of data represented
"G" for gravity 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 GRX
for the pair of GRAIL spacecraft.
"_" 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 GRAIL, this modifier
indicates the degree and order of the solution for the gravity field,
topography or magnetic field.
"SHB" denotes that this is a Binary file of Spherical Harmonic coefficients
and error covariance information
"Lccc" is a 2- to 4-character modifier specified by the data producer to
indicate the degree and order to which degree (L) the gravity covariance has
been truncated, if applicable.
".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_Lccc.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.
The EXTRAS directory contains ASCII files to be used as a reference for the
user to confirm proper reading of the SHBDR binary file format.
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_Lccc.DAT",1) where "GTsss_nnnnvv_SHB_Lccc.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_Lccc.DAT",1) |
| ^SHBDR_NAMES_TABLE = ("GTsss_nnnnvv_SHB_Lccc.DAT ",1) |
| ^SHBDR_COEFFICIENTS_TABLE = ("GTsss_nnnnvv_SHB_Lccc.DAT ",nn) |
| ^SHBDR_COVARIANCE_TABLE = ("GTsss_nnnnvv_SHB_Lccc.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 is no Coefficients
Table. Set to ("GTsss_nnnnvv_SHB_Lccc.DAT",nn) where
"GTsss_nnnnvv_SHB_Lccc.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_Lccc.DAT",nn) where "GTsss_nnnnvv_SHB_Lccc.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_Lccc.DAT",nn) where "GTsss_nnnnvv_SHB_Lccc.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", and "GRAVITY RECOVERY AND
INTERIOR LABORATORY".
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
and GRAIL 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. Set to "LUNAR GRAVITY RANGING SYSTEM" for GRAIL.
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;
-Set to "GRAIL-L-LGRS-5-RDR-Vn.m" for GRAIL.
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". For products generated by the GRAIL
Science Data System set to "SDS".
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 body."
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 body. 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 | |
|========|========|========|========|================================|
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]. For GRAIL, which used a
different measurement technique, the gravity signal to noise ratio was very
strong and the truncation was at a high degree. nmax was unprecedented 660
for the Prime Mission. The field size is expected to exceed 1000 for the
combined Prime and Extended missions solution.
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
See PDS 3.8 Standards Reference, Appendix C.7, for the PC binary format.
APPENDIX C EXAMPLE DATA PRODUCTS
Appendix C.1 Example Label
The following lists an example SHBDR LBL file for a GRAIL-derived lunar
gravity solution, "GGGRX_0660PM" (GRGM660PRIM), prepared by the GRAIL
gravity team at NASA GSFC.
GRGRM660PRIM is a 660x660 gravity model based on primary mission data,
and in this example only the covariance of that solution to 50x50 is provided.
The full reference for this solution is:
Lemoine, F.G., S. Goossens, T.J. Sabaka et al., "High-degree gravity models
from GRAIL primary mission data", J. Geophys. Res., 118(8), 1676-1698,
doi: 10.1002/jgre.20118.
PDS_VERSION_ID = "PDS3"
FILE_NAME = "GGGRX_0660PM_SHB_L50.DAT"
RECORD_TYPE = FIXED_LENGTH
RECORD_BYTES = 512
FILE_RECORDS = 52998
^SHBDR_HEADER_TABLE = ("GGGRX_0660PM_SHB_L50.DAT",1)
^SHBDR_NAMES_TABLE = ("GGGRX_0660PM_SHB_L50.DAT",2)
^SHBDR_COEFFICIENTS_TABLE = ("GGGRX_0660PM_SHB_L50.DAT",43)
^SHBDR_COVARIANCE_TABLE = ("GGGRX_0660PM_SHB_L50.DAT",84)
INSTRUMENT_HOST_NAME = {"GRAVITY RECOVERY AND INTERIOR LABORATORY A",
"GRAVITY RECOVERY AND INTERIOR LABORATORY B"}
TARGET_NAME = "MOON"
INSTRUMENT_NAME = {"LUNAR GRAVITY RANGING SYSTEM A",
"LUNAR GRAVITY RANGING SYSTEM B"}
DATA_SET_ID = "GRAIL-L-LGRS-5-RDR-V1.0"
OBSERVATION_TYPE = "GRAVITY FIELD"
PRODUCT_ID = "GRGM660PRIM"
PRODUCT_RELEASE_DATE = 2012-07-31
DESCRIPTION = "
This file contains coefficients and related data for the GSFC Lunar gravity
field GRGM660PRIM, a degree and order 660 spherical harmonic model. It is
a preliminary GSFC gravity field that includes the entire nominal mission of
GRAIL tracking data (March 1, 16:30 to May 29, 16:36, 2012).
Some details describing this model are:
The spherical harmonic coefficients are fully normalized.
The reference radius = 1738.0 km
The planetary ephemeris is de421 and defines the lunar body-fixed
coordinate system.
A Kaula type power law constraint is applied to the spherical harmonics
coefficients for degrees >330 (2.5e-4/n^2).
The weighting of the data is 0.05 microns/sec for the 5-s KBRR data and
0.12mm/s for the 10-s 2-way S-band DSN tracking data.
The estimated tidal Love numbers are:
k20 = 0.024165 +/- 0.000091
k21 = 0.023915 +/- 0.000013
k22 = 0.024852 +/- 0.000017
for an aggregate k2 = 0.02427 +/- 0.000054
k30 = 0.007342+/-0.001534
This product contains the truncated n=50 covariance of the GRGM660PRIM
gravity model or GGGRX_0660PM_SHA.
The reference for the GRGM660PRIM gravity field is LEMOINEETAL2013,
published in the Journal of Geophysical Research with the DOI number
10.1002/jgre.20118 .
This product is a set of binary tables:
a header table, a names table, a coefficients table, and a covariance
table. Definitions of the tables follow. This GRAIL moon gravity model
is in the form of a Spherical Harmonics Binary Data Record (SHBDR)."
START_TIME = 2012-03-01T16:28:00.000
STOP_TIME = 2012-05-29T16:36:00.000
PRODUCT_CREATION_TIME = 2013-06-06T00:00:00.000
PRODUCER_FULL_NAME = "GSFC LEVEL-2 TEAM"
PRODUCER_INSTITUTION_NAME = "GODDARD SPACE FLIGHT CENTER"
PRODUCT_VERSION_TYPE = "PRELIMINARY"
PRODUCER_ID = "GRAIL"
/* Structure Objects */
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 which 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 = PC_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 = PC_REAL
START_BYTE = 9
BYTES = 8
UNIT = "N/A"
DESCRIPTION = "For a gravity field model
the 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 = PC_REAL
START_BYTE = 17
BYTES = 8
UNIT = "N/A"
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
model, set to 0."
END_OBJECT = COLUMN
OBJECT = COLUMN
NAME = "DEGREE OF FIELD"
DATA_TYPE = LSB_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 = LSB_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 = LSB_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 = LSB_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 = PC_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 = PC_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 = 2602
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 = 2602
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 = PC_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 = 3386503
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 as rowwise
vector storage of the upper triangular matrix formed by
the product of the SHBDR Names Table with its transpose.
For example, if the Names Table has four entries A, B,
C, and D, then the covariances are given by the row
vectors in the upper triangular matrix of
| A | [ A B C D ] = | AA AB AC AD |
| B | | BA BB BC BD |
| C | | CA CB CC CD |
| D | | DA DB DC DD |
That is, the covariance table will list (in this order)
AA, AB, AC, AD, BB, BC, BD, CC, CD, and DD.
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 = PC_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
gggrx_0660pm_shb_l50.dat gravity field solution covariance.
We describe below the extracts from a FORTRAN program to read the above
gggrx_0660pm_shb_l50.dat covariance file, the error covariance of the
gravity solution GRGM660PRIM.
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='gggrx_0660pm_shb_l50.dat', 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 = 1738.0
gm = 4902.799807 | GM in km**3/sec**2
gmsig = 7.74E-06 | GM sigma in km**3/sec**2
lmax = 50
mmax = 50
inorm = 1
nvar = 2602 | 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:
GM K002000 K002001 K002002 K003000 C002000 C002001 S002001
C002002 S002002 C003000 C003001 S003001 C003002 S003002 C003003
S003003 C004000 C004001 S004001 C004002 S004002 C004003 S004003
C004004 S004004 C005000 C005001 S005001 C005002 S005002 C005003
S005003 C005004 S005004 C005005 S005005 C006000 C006001 S006001
C006002 S006002 C006003 S006003 C006004 S006004 C006005 S006005
C006006 S006006 C007000 C007001 S007001 C007002 S007002 C007003
S007003 C007004 S007004 C007005 S007005 C007006 S007006 C007007
Record 42 contains the last few coefficient names of the solution:
C050030 S050030 C050031 S050031 C050032 S050032 C050033 S050033
C050034 S050034 C050035 S050035 C050036 S050036 C050037 S050037
C050038 S050038 C050039 S050039 C050040 S050040 C050041 S050041
C050042 S050042 C050043 S050043 C050044 S050044 C050045 S050045
C050046 S050046 C050047 S050047 C050048 S050048 C050049 S050049
C050050 S050050
The Coefficients table begins at Record 43:
The first eight variables of that record are:
4.90280E+03 2.41948E-02 2.38352E-02 2.49544E-02 7.34222E-03
-9.08828E-05 1.19428E-10 9.47060E-10
The first coefficient value is for GM.
The Coefficients table ends at Record 83 with 42 valid records and the
remainder zero filled:
-1.07382E-07 5.81702E-08 -2.50231E-07 -1.53542E-07 1.11406E-07
1.78570E-08 -9.91932E-08 6.97906E-08
-6.72927E-08 -6.43053E-08 5.34257E-09 9.84231E-08 -1.49303E-07
4.46417E-08 2.29334E-07 7.48138E-08
1.63668E-07 1.93044E-07 -1.20901E-09 6.59939E-08 1.98945E-07
1.22273E-07 5.10204E-08 1.89710E-08
-4.17405E-08 6.61186E-08 2.04331E-07 2.61453E-07 1.96770E-07
1.85188E-07 -2.70291E-07 3.54506E-09
-3.07759E-07 1.00677E-08 -5.41954E-09 5.20505E-08 1.19688E-07
3.69751E-07 -2.46317E-08 1.62949E-07
2.85172E-07 5.79127E-08
..........
The last valid record is the value of S(50,50) for this solution, as per
the order specified in the names record.