Some Computer Programs
for Research in the History of
Ancient and Medieval Astronomy
By Benno van Dalen,
former research associate at the Institut für
Geschichte
der Naturwissenschaften, Frankfurt am Main (Germany).
Contents of this
page: General,
Parameter
Database, Sexagesimal Calculator,
Calendar
Conversion, Table-Analysis, Mean-Motion
Tables, Links
(at the moment only gives a link to my homepage).
Recommended escape
routes: Benno van Dalen's homepage, Description
of the astronomical parameter database Params.
Most recent changes to this page: In September 1999, the
executables
of SCTR, CALH, TA and MM were replaced by basically identical versions
without the bug of TurboPascal 7 which prevented them from running on
machines
faster than 200 MHz. New versions 1.2 of TA and MM, with many new
commands,
corrections and improvements, were made available in February 1999. At
the same time, a slightly modified version 2.2 of SCTR was released.
General
Below you will
find links for downloading a number of computer programs
for DOS-PC / Windows, which I hope may be useful in doing research on
the
history of ancient and medieval astronomy. I wrote these programs
during
my doctoral research at the Mathematical Institute of Utrecht
University
(Netherlands) and a postdoctoral fellowship of the Alexander von
Humboldt
Foundation which enabled me to work at the Institute for History of
Science
in Frankfurt am Main (Germany). Except for the database of parameter
values
occurring in Islamic astronomy, the programs are keyboard-driven DOS
programs.
PARAMS, a database
of astronomical parameters occurring in Islamic
sources,
developed with Delphi and CodeBase during my stay in Frankfurt am Main
in 1997/1998, will in the end be available in versions for Windows 3.1
(16 bits) and Windows 95 and later (32 bits). Because of lack of time,
the
addition
of a number of functions (such as more sophisticated queries) and the
input
of the remaining parameter data contained in Prof. Kennedy's
handwritten
file has not yet been carried out. The presently available
PARAMS16
(see below) has to be considered as a
test version. I hope that some future project will allow me to make the
full database available, but it is still unclear when this will happen.
The sexagesimal
calculator SCTR and the calendar conversion program
CALH display on the screen at any time a complete overview of all
available
operations and include brief manuals. I hope that Windows
users will appreciate them as auxiliary programs in a (relatively
small)
DOS window.
TA is a powerful
command-line program for the input, analysis, and
output
of astronomical tables of Ptolemaic type. It has context-sensitive help
(invoked by pressing F1) and a brief manual explaining its general
principles.
MM shares the manual and most of the available functions with TA, but
operates
especially on (pseudo-linear) mean motion tables. Since MM does not
contain
a context-sensitive help system, it might be recommendable to get
acquainted
with TA first.
All programs are
available as zipped files, which you can download
onto
your computer by clicking the appropriate links below. No special
installation
is required; simply copy all files in the ZIP archives into a single
directory
and run the file with extension .EXE.
PARAMS (Database
of parameter values
occurring in Islamic astronomical sources)
This program for
Windows 3.1 / 95 / 98 presents the around 2000 values of
various
astronomical parameters, such as the obliquity of the ecliptic, solar,
lunar and planetary mean motions, eccentricities, and epicycle radii,
latitude
and eclipse parameters, that Prof. E.S. Kennedy encountered in both
primary
and secondary sources dealing with Islamic astronomy. For every value
the
astronomers with which the value can be associated and precise
references
(with page and sometimes line numbers) to places where the value was
found
are given. In an Extra-Info field, additional references to sources and
cross-references to related parameter values may be listed. The
parameter
database can be sorted using the "Greek" representation of the
sexagesimal
values (e.g., 365;14,48 for Ptolemy's length of the solar year) or a
purely
sexagesimal one (6,5,14,48 for the same value). Various types of
queries
allow the user to select, for instance, all parameter values associated
with a particular astronomer, or all values occurring in a given
primary
or secondary source.
The version of
PARAMS that can be downloaded through the link below
is a preliminary one which still requires a lot of work. In particular,
only around 400 values from Kennedy's original cardbox have been
entered
until now (these include all obliquity values, the solar mean motion
parameters,
the year lengths and the excesses of revolution). Furthermore, more
complicated
queries (for example, to select all values of a certain parameter found
in a particular primary source) still have to be implemented. I would
be
very grateful for any suggestions that can make PARAMS a really useful
tool for scholars working on Islamic astronomy.
SCTR (Sexagesimal
Calculator)
This DOS-program
implements a pocket-type calculator with the Reverse
Polish
system. It includes a sexagesimal calculator as well as a decimal one.
Conversions between the two systems can be performed with a single
keystroke
and sexagesimal numbers can be shown in various forms (purely
sexagesimal,
in signs and degrees, with decimal integer part). Possible operations
include
the square root and a complete set of trigonometric functions, all
performed
to an accuracy of 16 sexagesimal places (19 in the decimal calculator).
CALH (Calendar
conversion program)
This is a DOS
program which converts conveniently between the Gregorian
and Julian calendars, Julian Day Numbers, and around 10 calendars found
in medieval Islamic astronomical sources. These include common ones
such
as the Hijra, Yazdigird, and Seleucid calendars as well as more exotic
ones such as the Maliki and Chinese-Uighur. After a date has been
specified
in any of these calendars, the corresponding dates in all other
calendars
and the day of the week are displayed on a single screen. By pressing a
single key one can then move a day, week, month, year, decade, or
century
backwards or forwards. With function keys one can jump to New Year of
the
present year or to the epoch of the present calendar. Up to 10 dates
can
be kept in memory for later usage and the number of days between any
two
dates can be conveniently counted.
A very similar
program CALM includes a number of calendars used in
more recent times. Besides the Gregorian and Julian calendars, these
are
the Muslim, Jewish, Coptic, French revolutionary, and Iranian Hijri-i
Shamsî
calendars. CALM does not come with a separate manual and does not have
all the advanced possibilities that CALH offers.
TA (Table-Analysis)
In TA,
astronomical tables of Ptolemaic type can be conveniently
entered,
analysed and printed. Little less than one hundred types of tables can
be treated automatically, including tables for trigonometric functions,
spherical astronomical functions (declination, right and oblique
ascension,
etc.), the equation of time, solar, lunar and planetary equations,
planetary
latitudes, eclipses, etc.
Tables of many
of these types can be entered by giving certain tabular
values and then correcting the predicted remaining values with presses
of the + or - or numerical keys. Two versions of each tabular value can
be kept, called "manuscript" and "corrected". The tables can be saved
in
files with extension .ZIJ and can be shown on the screen and written to
text files in various formats, including LaTeX.
Among the
available commands for analysing astronomical tables are:
calculation of tabular differences; checking of symmetry; estimation of
parameters with least squares, least number of errors criterion,
Fourier
estimation, or direct calculation from 1, 2 or 3 tabular values.
Various
functions have been implemented that can be used to check the
statistical
conditions for the application of the various estimators. Arbitrary
types
of tables can be calculated with the command TC (Table-Calculator) and
various types of first- and second order interpolation in given tables
can be simulated.
A new version 1.2 of
TA was released
in February 1999. It includes not only corrections of mistakes, but
also
various improvements in the way in which data are entered and new
commands,
such as SE for displaying the scribal errors in a table, LB for
displaying
the external zijes in a whole directory branch, and CV for copying a
range
of values from one table into another. Seven new types of functions
(all
related to planetary equations) were added and the context-sensitive
help
system was updated completely. A new manual is not yet available, but
the
file TACHANGE.TXT lists all changes in versions 1.1 and 1.2 of TA.
MM (Mean-Motion
tables)
The program MM
(in full: Very Useful Program for Analysing Mean Motion
Tables) is very similar to TA but operates exclusively on mean motion
tables.
A convenient way of entering the various subtables of a mean motion
table
(collected, extended and single years, months, days, etc.) is provided,
which even gives the possibility to change the specification of the
table
while the tabular values are entered. This is particularly useful for
manuscripts
with many scribal errors, from which the precise specifications may not
be reliably extracted at once.
The entered mean
motion tables may be saved in files with extension
.MMT and can be recomputed, compared, and printed on the screen. The
underlying
mean motion parameters can be estimated in one of several ways, of
which
the Least Number of Errors criterion, which finds the parameter values
for which a recomputation contains the least number of differences with
the entered table, is usually the most accurate.
MM differs from
TA in particular in the internal representation of
the sexagesimal tabular values. Whereas TA uses a 10-byte decimal
representation,
MM actually saves all numbers sexagesimally and carries out all
necessary
calculations with an accuracy of up to 12 sexagesimal digits. The
peculiar
structure of mean motion tables, whose subtables may or may not be
based
on the same parameter value and whose tabular values are almost always
given modulo 360 (i.e., complete rotations are left out) was the other
mean reason to make TA and MM two separate programs.
A new version 1.2 of
MM was released
in February 1999. Besides some corrections of mistakes, it contains
many
improvements in the way in which data are entered and new commands,
such
as CA (Calculate Almanac) for calculating mean motion positions from a
given table for a set of dates to be specified, SE for displaying the
scribal
errors in a table, and LB for displaying the external zijes in a whole
directory branch. The Maliki (or Jalali) calendar, a true solar
calendar
based on the vernal equinox, was added to the set of calendars handled
by MM and more general forms of the Julian and Byzantine calendars were
implemented. A new manual is not available, but the file MMCHANGE.TXT
lists
all changes in versions 1.1 and 1.2 of MM.
Links
Last modification:
January 3, 2011.