reduced long-term maintenance costs. Another major benefit is
that the program can be brought up and running with minimal
functionality, allowing further capability to be easily and pain-
lessly incorporated as need arises.
Ease of extensibility is largely a result of object-oriented de-
sign, but it is also directly related to how good that design is.
Hence, considerable effort has gone and is still going into the
design of Newcomb. Experience in the software industry over
the last one to two decades abundantly shows that the payoff
later on in terms of maintenance and extensibility is far out of
proportion to the effort expended early on -- in the design
stages -- of the program life cycle.
The benefits of a RAD environment for development and
testing are also very attractive. Chief among the attractions is
the ease by which it is possible to create highly sophisticated
graphical user interfaces. During design, graphical interface
components -- such as buttons, edit fields, toolbars and so on
-- are "dropped" onto a window form or dialog box. Useful
properties of the components are settable at design time, in ad-
dition to being available during runtime. It is easy to create
custom components as well. For example, for Newcomb we
designed a custom component that is in fact a fully functional
and self-contained power spectral density (PSD) analysis pack-
age. All that is needed to add a PSD module to a program is to
drop the PSD component onto a form or dialog. Hence, build-
ing, changing, and extending the graphical user interface of a
program is astoundingly easy. This of course spills over and
makes changing or extending major program structural ele-
ments correspondingly painless.
4. PROJECT OUTLINE
In these beginning stages of the Newcomb project, tasks
naturally fall into three main categories: program design, docu-
mentation, and science applications. A rough outline of the
most obvious subjects that must be addressed is:
I.
Design Issues
A. numerical integration scheme
1. object-oriented design
2. Integrable objects have knowledge of dynamical
environment as well as the ability to dynamically
evolve in that environment.
B. exception handling
1. all exceptions fully recoverable
2. procedure stack traceback
C. robust parameter estimation
1. Singular Value Decomposition (SVD)
2. swipe a package from elsewhere
D. graphical user interface
1. use GUI application frameworks package (such
as ZAF from Zinc) to ensure platform portability
E. reduction of observations
F. individual class design and testing
II. Science Issues and Projects to Consider
A. asteroids
1. masses from orbital interactions
2. provide ephemerides (services to the community)
3. cumulative effects on planetary motions
a. Asteroids are the largest source of "noise" in
the orbits of Mars, EarthMoon system.
B. lunar motion
1. chaotic dynamics
a. predictions from numerical models
b. comparisons with LLR data
2. radiation pressure
[ref]
3. resonant interaction between tidal and GR terms
4. lunar librations
C. Nordtvedt h parameter (anomalous gravitational field
energy effects -- i.e., a difference between gravita-
tional and inertial mass proportional to the gravita-
tional binding energy of a body)
D. GR precession
1. lunar orbit
2. Earth's spin
E. bounds on time variation of the gravitational constant
F. millisecond pulsars
1. derive Earth orbit
G. bounds on dark matter in the solar system?
H. planetary satellites?
1. centroiding vs. satellitederived center of mass
I.
other science?
III. Documentation
A. code
1. source documentation model (see TM96-01)
2. interface ("user's manual")
B. algorithms
C. physics
1. GR and partial derivatives
D. parameter estimation and error and correlation analy-
sis
E. numerical integration design
F. reduction of observations
C
HAPTER
1: P
ROJECT
O
UTLINE
4