EDB file format
The MMT mount computer is now able to use XEphem format database files.
These are most useful (for the MMT) for tracking non-sidereal objects
such as planets, comets, minor planets, earth-orbiting satellites, and
the like, but
can certainly be used for stellar objects also. The MMT uses (by permission)
code derived from XEphem
to parse these files and generate coordinates.
At the MMT, we daily update and maintain the following 4 catalogs in edb
format (dimmer and brighter objects are placed in separate files):
- AstLowell.edb
- AstLowell_dim.edb
- AstMPC.edb
- AstMPC_dim.edb
The first two provide elements for the roughly 30,000 asteroids in ASTORB, which is
maintained by
Lowell Observatory.
The second two are obtained from the
Harvard/CFA Minor Planet circulars (MPCORB).
Someday we also intend to do this for the DASTCOM database (163000+ objects)
which is provided by the
JPL HORIZONS System.
File format
This document describes the format of an XEphem database file. The
file name extension is .edb.
See the TLE document
for files containing two-line Earth satellite elements.
General format rules
- Each object occupies one line in the file.
- The order of objects in a file does not matter.
- Lines beginning with anything other than a-z, A-Z or 0-9 are
ignored and may be used for comments.
- Lines are separated into Fields using commas (,).
- Fields may be further subdivided into Subfields with vertical
bars (|).
- All date fields may be in either of two forms:
- month/day/year, where day may contain a fractional portion.
examples: 1/1/1993 and 1/1.234/1993 . Note the format of dates in
database files is always M/D/Y; or
- the year as real number as indicated by the presence of a
decimal point, such as 1993.123.
Format Details
The first two fields are required and
are always Name and Type. Remaining fields depend on Type.
Field 1
|
One or more object names, each
separated by the Subfield separator, |. Any number of characters may be
present in the file but only the first 20 characters of
each name and only the first 20 names are actually used.
|
Field 2 |
Type designation. Consists of a
single letter designation from the following set (case is significant):
f
|
fixed (or at most exhibits
constant curvilinear proper motion) |
e
|
heliocentric elliptical
orbit |
h
|
heliocentric hyperbolic
orbit |
p
|
heliocentric parabolic
orbit |
E
|
geocentric elliptical
orbit, i.e., Earth satellite |
P
|
built-in planet or natural
satellite name |
|
If
Field 2 is
f the object is fixed and
the
following fields and subfields are defined:
|
SubField 2A |
An optional SubField 2A can be
added to further define an object class code, consisting of
one character from the following list:
A
|
Cluster of galaxies |
B
|
Star, binary. Deprecated
as of version 3.6, gets turned into D internally. Use Field 2
type B if more than one position angle and separation or
orbital elements are
known.
|
C
|
Cluster, globular |
D
|
Star, visual double |
F
|
Nebula, diffuse |
G
|
Galaxy, spiral |
H
|
Galaxy, spherical |
J
|
Radio |
K
|
Nebula, dark |
L
|
Pulsar |
M
|
Star, multiple |
N
|
Nebula, bright |
O
|
Cluster, open |
P
|
Nebula, planetary |
Q
|
Quasar |
R
|
Supernova remnant |
S
|
Star |
T
|
Stellar object |
U
|
Cluster, with nebulosity |
Y
|
Supernova
|
V
|
Star, variable |
|
|
SubField 2B |
If SubField 2A is one of T, B,
D, S or V, optional SubField 2B may consist of up to two spectral
designation characters, typically one letter followed by one numerical
subclass designator. Two examples are O and G3. |
|
|
If SubField 2A is any other
class code, optional SubField 2B may consist of up to two additional
characters to further describe the type.
|
Field 3 |
RA
position coordinate, given as H:M:S. |
|
SubField 3A |
This optional subfield may
specify a proper motion in RA. It is in milliarcseconds per
year on the sky, i.e., ΔRA*cos(dec). |
Field 4 |
Declination
position coordinate, given as D:M:S. |
|
SubField 4A |
This optional subfield may
specify a proper motion in Dec. It is in milliarcseconds per
year on the sky |
Field
5
|
Magnitude
of the object. |
Field
6
|
This
optional field is the reference epoch. It is assumed to be
2000 if absent |
Field 7 depends on SubField 2A |
If SubField 2A is G
or H |
Field
7
|
Galaxy
major axis, in arcseconds |
|
SubField 7A |
Galaxy minor axis, in arcseconds |
|
SubField 7B |
Major axis position angle, in
degrees East of North |
If Subfield 2A is B
or D |
Field
7 |
star
pair separation, in arcseconds
|
|
SubField 7A |
reserved, set to 0 |
|
SubField 7B |
position angle, in degrees East
of North |
Otherwise Field 7 is
optional but if present |
Field
7 |
size of
the object, in arcseconds. It is assumed to be 0 if absent. |
If
Field 2 is
B the object is a true
binary pair and
the
following fields and subfields are defined.
|
SubField 2A |
An optional SubField 2A can be
added to further define an binary class code, consisting of
one character from the following list. This scheme is taken from the
Washington Multiplicity catalog for compliance with the IAU 2003
recommendation.
a
|
Astrometric binary
|
c
|
Cataclysmic variable
|
e
|
Eclipsing binary
|
x
|
High-mass X-ray binary
|
y
|
Low-mass X-ray binary
|
o
|
Occultation binary
|
s
|
Spectroscopic binary
|
t
|
Single-line spectroscopic
binary
|
u
|
Double-line spectroscopic
binary
|
v
|
Spectrum binary
|
b
|
Visual binary
|
d
|
Visual binary with common proper motion
|
q
|
Visual binary - optical
|
r
|
Visual binary - physical
|
p
|
Exoplanet
|
|
|
SubField 2B |
Up to two characters to specify
the spectral class of the primary star, typically one letter followed
by one numerical subclass designator. Two examples are O and G3. |
|
SubField 2C |
Up to two characters to specify
the spectral class of the secondary star,
typically one letter followed by one numerical subclass designator.
Two examples are O and G3. |
Field 3 |
RA
position coordinate, given as H:M:S. |
|
SubField 3A |
This optional subfield may
specify a proper motion in RA. It is in milliarcseconds per
year on the sky, i.e., ΔRA*cos(dec). |
Field 4 |
Declination
position coordinate, given as D:M:S. |
|
SubField 4A |
This optional subfield may
specify a proper motion in Dec. It is in milliarcseconds per
year on the sky |
Field
5
|
Magnitude
of each star in the pair. |
|
SubField 5A
|
Magnitude of the primary star
|
|
SubField 5B
|
Magnitude of the secondary star
|
Field
6
|
This
optional field is the reference equinox year. It is assumed to be
2000 if absent |
Field 7
|
This field may contain
either 3 or 6 subfields (one or two triples of year/separation/position
angle)
or 7 subfields (orbital elements).
|
|
If 3 or 6 subfields,
they define positions grouped as the following triplets:
|
|
SubField 7A/D |
Year of the separation and position angle given
in the next two fields, decimal year or month/day/year |
|
SubField 7B/E |
Separation, arc seconds
|
|
SubField 7C/F |
Position angle, degrees E of N, referenced to
equinox in field 6
|
|
If 7 subfields, they
define a
true orbit:
|
|
SubField 7A
|
Semi-major axis, arcseconds
|
|
SubField 7B |
Inclination from plane of sky, degrees
|
|
SubField 7C |
Longitude of node, degrees
|
|
SubField 7D |
Eccentricity
|
|
SubField 7E |
Epoch of periastron, decimal year or
month/day/year
|
|
SubField 7F |
Argument of periastron, degrees
|
|
SubField 7G |
Period. Units are designated by suffix y
for years, d for days, or h for hours. If no
designation the default is years.
|
If Field
2 is e the object type
is
elliptical heliocentric (eccentricity < 1) and the remaining fields
are defined as follows:
Field
3
|
i =
inclination, degrees |
Field
4
|
O =
longitude of ascending node, degrees |
Field
5
|
o =
argument of perihelion, degrees |
Field
6
|
a = mean
distance (aka semi-major axis), AU |
Field
7
|
n = mean
daily motion, degrees per day (computed from a**3/2 if
omitted) |
Field
8
|
e =
eccentricity, must be < 1
|
Field
9
|
M = mean anomaly,
i.e., degrees from perihelion |
Field
10
|
E = epoch date,
i.e., time of M |
|
SubField 10A |
First date these elements are
valid, optional
|
|
SubField 10B |
Last date these elements are
valid, optional
|
Field
11
|
D = the equinox
year, i.e., time of i, O and o |
Field
12
|
First component of
magnitude model, either g from (g,k) or
H from (H,G). Specify which by preceding the number with a "g"
or an "H". In absence of either specifier the default is (H,G) model.
See Magnitude models. |
Field 13
|
Second component of
magnitude model, either k or G
|
Field 14
|
s =
angular size at 1 AU, arc seconds, optional |
You may have other parameters
available
for elliptical orbits that can be converted into these. The
following relationships might be useful:
P
= sqrt(a*a*a)
p = O + o
n = 0.9856076686/P
T = E - M/n
q = a*(1-e)
AU = 149,597,870 km = 92,955,621 U.S. statute miles
where
P = the orbital period,
years;
p = longitude of
perihelion, degrees
T = epoch of perihelion
(add multiples of P for desired range)
q = perihelion distance, AU
Note that if you know T you can then set E = T and M = 0.
If
Field
2 is
h the object type
is
hyperbolic heliocentric (eccentricity > 1) and the remaining fields
are defined as follows:
Field
3
|
T = date
of the epoch of perihelion |
|
SubField 3A |
First date these elements are
valid, optional |
|
SubField 3B |
Last date these elements are
valid, optional |
Field
4
|
i =
inclination of orbital plane to ecliptic, degrees |
Field
5
|
O =
longitude of ascending node, degrees |
Field
6
|
o =
argument of perihelion, degrees |
Field
7
|
e =
eccentricity, must be > 1
|
Field
8
|
q =
perihelion distance, AU |
Field
9
|
D = the
equinox year (i.e., time of i/O/o) |
Field
10
|
g
component of magnitude model. See Magnitude
models. |
Field 11
|
k component of magnitude
model
|
Field
12
|
s =
angular size at 1 AU, arc seconds, optional |
As with elliptical elements, other
parameters might be available. The relationships are generally the
same, except:
q
= a*(e-1)
If
Field 2 is
p the object type is parabolic
heliocentric (eccentricity exactly equal to 1) and the remaining
fields are defined as follows:
Field
3
|
T = date
of epoch of perihelion |
|
SubField 3A |
First date these elements are
valid, optional |
|
SubField 3B |
Last date these elements are
valid, optional |
Field
4
|
i =
inclination, degrees |
Field
5
|
o =
argument of perihelion, degrees |
Field
6
|
q =
perihelion distance, AU |
Field
7
|
O = longitude of
ascending node, degrees |
Field
8
|
D = the equinox year
(i.e., time of i/O/o). |
Field
9
|
g component of
magnitude model. See Magnitude models. |
Field 10
|
k component of magnitude
model |
Field
11
|
s = angular size at
1 AU, arc seconds, optional |
If
Field
2 is
E (note upper
case)
the object type is Earth satellite and the remaining fields are defined
as follows:
Field
3
|
Epoch of the other
fields |
|
SubField 3A |
First date these elements are
valid, optional |
|
SubField 3B
|
Last date these elements are
valid, optional |
Field
4
|
inclination, degrees |
Field
5
|
RA of ascending
node, degrees |
Field
6
|
eccentricity, must
be < 1 |
Field
7
|
argument of perigee,
degrees |
Field
8
|
mean anomaly, degrees |
Field
9
|
mean motion, revs/day |
Field
10
|
orbit decay rate,
revolutions/day^2 |
Field
11
|
integral reference
orbit number at Epoch
|
Field
12
|
drag coefficient,
1/(earth radii); optional |
As an alternative to using the
E format,
files may be read directly, containing the venerable
Two-Line-Element (TLE) format.
See the
TLE document
for details.
If
Field
2 is
P (note upper case)
then
Field 1 must be the name
of a built-in object and no other fields are defined. The
following names are recognized:
Sun
Moon
Mercury
Venus
Mars
Phobos
Deimos
Jupiter
Io
Europa
Ganymede
Callisto
Saturn
Mimas
Enceladus
Tethys
Dione
Rhea
Titan
Hyperion
Iapetus
Uranus
Ariel
Umbriel
Titania
Oberon
Miranda
Neptune
Pluto
Magnitude models
(Magnitude information is presently ignored by MMT software.)
The g,k magnitude model
requires two parameters to be specified. One, the absolute magnitude,
g, is the visual magnitude of the object if it were one AU from both
the Sun and the Earth. The other, the luminosity index, k,
characterizes the brightness change of the object as a function of its
distance from the Sun. This is generally zero, or very small, for
inactive objects like asteroids. The model may be expressed as:
m
= g + 5*log10(D) + 2.5*k*log10(r)
where:
m
= resulting visual magnitude
g = absolute visual
magnitude
D = comet-earth distance,
in AU
k
= luminosity index
r
= comet-sun distance.
The H,G model also requires
two parameters. The first, H, is the magnitude of the object when one
AU from the Sun and the Earth. The other, G, attempts to model the
reflection characteristics of a passive surface, such as an asteroid.
The model may be expressed with the following code fragment:
beta
= acos((rp*rp + rho*rho - rsn*rsn)/ (2*rp*rho));
psi_t =
exp(log(tan(beta/2.0))*0.63);
Psi_1 = exp(-3.33*psi_t);
psi_t =
exp(log(tan(beta/2.0))*1.22);
Psi_2 = exp(-1.87*psi_t);
m = H + 5.0*log10(rp*rho) -
2.5*log10((1-G)*Psi_1 + G*Psi_2);
where:
m =
resulting visual magnitude
rp = distance from
sun to object
rho = distance from
earth to object
rsn = distance from
sun to earth
Note that neither model takes into account the phase angle of sun light.