100% found this document useful (1 vote)
21 views

PDF ADA Programming Everything you need to know about ADA Programming language 2nd Edition Claudia Alves download

ADA

Uploaded by

bidotyorroxk
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
21 views

PDF ADA Programming Everything you need to know about ADA Programming language 2nd Edition Claudia Alves download

ADA

Uploaded by

bidotyorroxk
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 65

Download the Full Version of textbook for Fast Typing at textbookfull.

com

ADA Programming Everything you need to know about


ADA Programming language 2nd Edition Claudia Alves

https://textbookfull.com/product/ada-programming-everything-
you-need-to-know-about-ada-programming-language-2nd-edition-
claudia-alves/

OR CLICK BUTTON

DOWNLOAD NOW

Download More textbook Instantly Today - Get Yours Now at textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Scala Programming A comprehensive beginner s guide to


Scala 2nd Edition Claudia Alves

https://textbookfull.com/product/scala-programming-a-comprehensive-
beginner-s-guide-to-scala-2nd-edition-claudia-alves/

textboxfull.com

Cockpit Confidential: Everything You Need to Know about


Air Travel: Guestions, Answers, and Reflections 2nd
Edition Patrick Smith
https://textbookfull.com/product/cockpit-confidential-everything-you-
need-to-know-about-air-travel-guestions-answers-and-reflections-2nd-
edition-patrick-smith/
textboxfull.com

Law 101: Everything You Need To Know About American Law,


5th edition Jay M. Feinman

https://textbookfull.com/product/law-101-everything-you-need-to-know-
about-american-law-5th-edition-jay-m-feinman/

textboxfull.com

The Internet Book: Everything You Need to Know about


Computer Networking and How the Internet Works 5th Edition
Douglas Comer
https://textbookfull.com/product/the-internet-book-everything-you-
need-to-know-about-computer-networking-and-how-the-internet-works-5th-
edition-douglas-comer/
textboxfull.com
How to Raise Chickens Everything You Need to Know Updated
Revised Third Edition Christine Heinrichs

https://textbookfull.com/product/how-to-raise-chickens-everything-you-
need-to-know-updated-revised-third-edition-christine-heinrichs/

textboxfull.com

Leadership: All You Need To Know 2nd edition David


Pendleton

https://textbookfull.com/product/leadership-all-you-need-to-know-2nd-
edition-david-pendleton/

textboxfull.com

How It Works Book of Incredible History: Everything You


Need to Know about the World We Lived In 12th Edition
Philippa Grafton
https://textbookfull.com/product/how-it-works-book-of-incredible-
history-everything-you-need-to-know-about-the-world-we-lived-in-12th-
edition-philippa-grafton/
textboxfull.com

Digital Signal Processing 101 Second Edition Everything


You Need to Know to Get Started Michael Parker

https://textbookfull.com/product/digital-signal-processing-101-second-
edition-everything-you-need-to-know-to-get-started-michael-parker/

textboxfull.com

Betty Crocker Cookbook Everything You Need to Know to Cook


from Scratch 12th Edition Betty Crocker

https://textbookfull.com/product/betty-crocker-cookbook-everything-
you-need-to-know-to-cook-from-scratch-12th-edition-betty-crocker/

textboxfull.com
ADA programming

Everything you need to know about


ADA Programming language

2 nd edition
Claudia Alves

Preface
When Ada was launched in 1983, it was the only standard dated
language, the broadly recognized principles of software engineering.
The skepticism was great: B, whether by applying these principles
with Ada really transparent pension, reliable and maintainable
software systems punctually
can be terminated. Between aspiration and reality All too often there
is one big gap: Be Lucke. Today we can look back on eleven years of
experience with Ada. look. It has been shown that: B coding and
translation a larger application in Ada can take a little longer than in
some other languages, but the number of the Translation errors and
the effort to localize them reduce to a fraction. Overall, Ada brings a
considerable cost saving by the end of the test phase savings -
provided you apply the programming principles who supports Ada.
In the maintenance phase (i.e. in the event of correction, functional
changes and porting), the with large program systems typically cost
more than the hardware and the program creation together, Ada
shows just as big: Be advantages as in the test phase. The
experience of the early years since: B one the use of Ada must pay
with an inefficient code: B, Hingst does not apply either more. So
whoever develops a large: Beres program today has len reason to
write it in Ada. This book is supposed to be what you need
Knowledge of the language and the associated methods teln. It also
covers object-oriented methods and their use in the imminent new
version the language. Many people were involved in the creation of
this book. ligt, whom I would like to thank. The book is from Ada
training courses which I have been developing and keeping since
1986 and which improves due to the reactions of the course
participants sert and expanded; their appearances and ben made a
major contribution to this. Georg Winterstein excited invite me to
write the book; owe his advice I am well worth the knowledge that
has flowed into this book. I have a lot from my former colleagues at
Alsys GmbH a lot about methods and principles of successful
programming and learned about Ada. They built the compilers that
aile
Program examples and sample solutions in this book and they were
always ready to show their skills and give me advice and practical
help. hen. In particular, Manfred Dausmann, Wolf-Dieter He- ker,
Wolfgang Herzog and Erich Zimmermann through critical Reading
large parts of the manuscript and discussing its The book has
improved significantly with its content. Wolfgang In addition,
Herzog, with great patience, has many more or less tricky Ada
questions answered. Hans Wossner and Barbara
I owe many improvements to Gangler at Springer-Verlag in large and
small, which is the final form of the book have a major impact. I
would particularly like to thank my family: Robin designed the
pictures, Martin provided the necessary optimism, Christopher stood
by my side as a PC expert, and my husband Norbert always lobbied
iiberail where help was needed.
1 introduction
Ada supports the development of programs that are also used at
gro: Bem
scope
• confident,
• wait for cash and
• portable
are. We will only deal with the specific ones in the next two chapters
Discuss properties of Ada in detail. This book does not require the
reader to have any knowledge of Ada. Man but needs in-depth
knowledge of a block-structured language such as Pascal or C.
(There are, however, fundamental differences between
Ada and C; [Weinert] is a contrast to the C programmers the
orientation and the change to Ada.) If you
especially with the agreement of own data types, including RECORD
(compound) types, and the handling of recursive subpro- If you are
familiar with this book, you should be able to understand this book.
At-
If so, you should first read the book [Schmidt] to find the missing
Conditions to acquire. In contrast, this book covers the full language
range of Ada. This book is intended to convey the sensible use of
Ada. Therefore the history of the origins of language is described in
Chapter 2. changes along with the goals of its developers. And in
Chapter 3 will be these goals and the underlying (mostly by no
means ada specific) ideas before introducing any language construct
becomes. The language constructs for their part are made for the
same reason demonstrated by program examples. We refer to those
Ideas and principles that the respective construct supports. Ada has
a very precise language definition in [Ada]. The precision this
description is indispensable for the high degree of reliability and
portability of Ada programs: supposedly unimportant aspects te that
are not mentioned in other language definitions and therefore by
Different from case to case (and at least from translator to
translator)
are precisely regulated in [Ada]. But it is precisely this thoroughness
that makes the language definition for Ada Newbies hard to read:
those who learn Ada from the language definition alone
want, mui3 already has a lot of experience with other programming
languages bring. This book is not intended to replace [Ada] for Ada
users. It rather, it is intended to enable them to understand the
language definition and to use. That's why this volume doesn't
include them, for example
formal syntax definition that is completely and easily accessible in
[Ada] can be found.
1.1 The terminology
[Ada] is the binding definition of the languagej a DIN translation
is available in [Deutsch-Ada]. For the numerous defined in [Ada]
Terms we usually use the DIN translation, whereby we
the original English term at the first occurrence of each term
(in brackets, in the singular or in the infinitive). The A-
Numerous exceptions are:
• Terms (such as ARRAY and RECORD) from [Ada] that start
with a reserved
If Ada identifiers match, we usually do not translate, but rather
use the (capitalized) reserved word for this.
• Two further terms introduced in §13.10 ("erroneous execution" and
"incorrect order dependence") are for the reasons given there
reproduced in English.
For each term (if it is used) not only the German appears
Translation, but also the original English term in the keyword
translation
drawing, which is therefore suitable for use with [Ada] and
with [Deutsch-Ada] is suitable.
When introducing them, we put terms in italics. An underline
on the other hand, serves for emphasis. Ada program texts and
parts thereof
appear in a special (non-proportional) font: PROCE-
DURE a_ada_program;

1.2 The program examples


The book seeks to make meaningful use of Ada by discussing
Provide sample programs. Most subsections included exactly one
such program example. In this case we show
not explicitly referring to the example; Remarks on parts of an Ada-
Program refer to the only example in the current cut. In the sections
that contain several examples, the Examples Names referred to in
the text. Except for a few Exceptions, each example is linked
together on one page.
prints.
Each example should only be read when referring to in the text Parts
of the example is taken. Some sections start from technical reasons
with an example; even with these it is advisable to first read the
explanatory text
start.
00

1.3 The exercises


Anyone who wants to master a programming language must have
programs in it develop. This book contains tasks, the processing of
which the The knowledge of the previously discussed staff is
consolidated and deepened. To every task there. there is a complete
sample solution in chapter 17. There Ada was designed primarily for
large program systems and is only used in the first exercise is a
small, self-contained program written. All other tasks contribute to
the development of a single gen, large program with: a vocabulary
trainer. Urn your own To translate, bind and run the solution to these
tasks you need other program parts, which are printed in chapter 17
and are also available as text files on floppy disk for IBM PCs. Some
readers won't want to solve the problems on their own, either
because they are not using this book as a first introduction to Ada,
but rather to smack and look up, or because Ada is only at the Want
to learn to write your own Ada program and thereby have enough
practice material yourself. Urn the price of the book for this Readers
do not need to increase the above disk not enclosed with the book,
but on request against submission of
10 DM sent. The submission can be done by bank transfer (Account
no. 3411 08 608, account holder Diana Schmidt, Post bank Frank-
furt aM, bank code 500 100 60) or by letter (Diana Schmidt,
Battertstr.
17, D-76189 Karlsruhe). Be sure to give Thren's name and Thre
Address and the required disk size: Be (3% II or 5% ").
1.4 Ada 9X
When this book is completed, the first revision of the language
definition is so far advanced that: B the current draft of the new
language dards is very likely to be declared the new standard. The
working title of the revision is Ada 9X because it was in one of the
nineties Years (very likely in the fall of 1994) and we
use this name to identify the new language standard from the
standard [Ada] from 1983 to be distinguished. As the readers of this
book will probably use the new language definition in the
foreseeable future, but we act the innovations in it:
• Central new constructs that are not available at all in [Ada], we
discuss in chapter 18 with examples. These include in particular
other constructs that fully relate object-oriented programming
allow catch.
• We mention improvements to existing constructs where the
relevant constructs are discussed.
Chapters 1 to 17 thus convey knowledge of the currently valid
Language standards [Ada] and mention new features in Ada 9X only
on
Edge. All examples in these chapters, especially all sample
solutions were made by validated compilers according to the
currently valid
Language standard checked.

2 Ada's career
Urn to understand how Ada differs from other languages is it is
helpful to know why and how Ada was developed. The previous The
chapters on the right are intended to convey this knowledge.

2.1 The software crisis


In the beginning of the computer age, hardware was so expensive
and slow that no one thought of writing large programs. It is
therefore not surprising that the programming methods and
languages used in originated at this time, in favor of the
development of large program systems not particularly well suited.
Over time, the drastic drop in hardware prices made this possible the
use of ever larger programs, but now in languages
must be written that are not designed for large programs were. The
consequence was the syndrome that took place in the sixties The
name software crisis became known and is everywhere to this day
there where large programs with unsuitable methods and Languages
to be developed: Large software systems were mostly using
considerable delay and were anything but Quality products. As a
rule, they were so unmanageable that they were Faulty right from
the start and also extremely maintenance-free
were rude. Such large programs usually had one long life, in the
course of which functional changes are often necessary were; both
the elimination of the supplied errors and the im- Implementation of
functional changes was extremely costly. In the beginning, the
hardware accounted for the lion's share of the costs At the beginning
of the seventies with large program systems only the war
maintenance of the software (i.e. elimination of errors and execution
of tional changes) usually more expensive than the hardware and
the creation

the software together. In addition, there was: B the highest cost of


maintenance gave unsatisfactory results. The lack of adequate
methods and the associated man- good suitability of the existing
programming languages for the development Large program
systems were the main reasons for this the software crisis. But the
size also played a major role in this Linguistic diversity and the lack
of accurate, widely used standards for the existing languages. In the
technical and scientific field, FORTRAN was widespread tet, in the
commercial field COBOL. Even more extensive than this In both
areas, however, the newer area of compu-
embedded computer application in which the computer is integrated
in a more comprehensive automatic system. Examples are
computers in a traffic control system, on-board computers for
Control of an aircraft or a ship or computer for control an irrigation
system. There were none for this area of application Standard
languages other than assembler; for many applications was
developed neither a whole new language or at least a new extension
of one existing language created. Depending on whether you have
different slide could or could not perceive one language as different
languages at that time between 500 and 1500 different languages
were
scope of application numbers. One consequence of this linguistic
diversity was the lack of portability in the
grams. With rapid technical development it was often necessary to
go to one
to switch to another computer, and this was usually costly tied
because the language used was not a standard language and
consequently there was no compiler for them on the new computer.
To the ho-
The porting costs resulted in high training costs for the staff: Anyone
who is involved in developing or maintaining a program in a worked
in such a language first had to learn the language. A third The
disadvantage of the linguistic diversity was the lack of development
aid. Namely, it became a language or a dialect for one application
only developed, the tools created were usually just enough to
translate, bind and run programs; of aids such as test tools or
syntax-oriented editors were out of the question. Corresponding The
development was therefore laborious and therefore expensive.
development and maintenance of a program. But there have also
been similar problems with widely used standard languages. bleme,
albeit to a lesser extent. The definitions of these languages were in
themselves already imprecise and ran on the expansion gen too. For
example, FORTRAN was on two different computers by no means
the same language: programs that deal with one Compilers translate
could be rejected by the other as incorrect and programs that are
compiled by different compilers zen ran could behave very differently
at runtime. Also with the standard languages, therefore, meant
porting to a different their computers usually require considerable
effort, as does the Employment of employees who already knew the
language, but not the compiler used.

2.2 A way out of the crisis


So the reasons for the software crisis were
• the use of unsuitable methods and languages,
• the linguistic diversity and
• the lack of standardization of the existing languages.
The software crisis hit all clients of large program systems The
biggest clients were hit hardest, especially the defense US
Department of Defense (DoD). Because of that the DoD was looking
for ways to reduce the resulting costs men. The investigations
initiated by her showed that the Half of their expenditure on
computers and programs in the field of computer computer-
integrated systems. The applications in this area were very different,
but they also had some properties
in common: they were
• very large (hundreds of thousands or even millions of lines),
• durable (at least 10 years),
• Subject to requirements that have changed frequently,
• highly machine-dependent, and
• Their reliability was often indispensable because of human life
depended on their proper functioning.
With regard to the general reasons for the software crisis, the
searched
DoD find a way out in favoring a language. This should be
both for large programs in general and for computer-based
integrated applications with the above-mentioned features
are suitable and should be highly standardized in order to ensure
high portability
guarantee.
In early 1975, the DoD set up a tracking group
this intention: the Higher Order Language Working Group (HOLWG).
2.3 The search for a language
The search for a suitable language was an important project, it
should cover the entire life cycle of many large, expensive program
affect systems. The way in which the HOLWG
The project concerned must have an impact on the quality of the
result therefore, her approach is of interest in understanding Ada
want. The HOLWG stuck to an apparently self-evident and A
surprisingly often disregarded requirement for successful projects:
Man mufi determine what the goal of the project is before moving
on to it. (In other words: Before the implementation, the func-
national specification are coming - see chapter 3.) The project was
the Search for a (possibly not yet existing) languagej was first a
description of the requirements for the language is written. Another
only apparently self-evident commandment is in front of one
Decision to collect all relevant information and in particular also ask
the relevant experts. The HOLWG brought in input from many
professionals at each stage of the project. There did not limit itself
to military circles, but questioned also experts from industry and
universities, including those from Europe. At different times during
the project the HOLWG also turned to the public with a request
Participation, because the language that emerged from the project
should have broad acceptance and a high level of practical
applicability. In a successful project, one must be ready to meet the
requirements genes with regard to more recent knowledge or
experience in the To revise and add to the implementation of the
project. The creation the requirements description for the standard
language was an iterative one Prozefi: Starting with the first version
"Strawman", each version was sent to the professionals mentioned
above. Your numerous remarks genes and suggestions and (in later
versions) experiences with Language drafts were then taken into
account in the next version. So the later versions "Woodenman",
"Tinman", "Ironman" were created and finally "Steelman"
([Steelman]). One might think, however, that a description of the
requirements in which so many people were directly or indirectly
involved, an impossible one
A collection of contradicting desires should be avoided. One posed
but astonished a very high degree of agreement, so dafi the totality
of the requirements could be fulfilled.
First of all (on the basis of the requirements description Tinman) 23
common high-level languages for their usability as standard
language examined. It was concluded that there was no
hen de high-level language and decided to develop a new language
allow There were now two basic options for the Development of the
new language: an order to a person or to outsource a company, or
to develop the language by a committee to let keln. One selected
one that is now common in town planning Variant of the first way,
i.e. a public (international) writing. This took place in three rounds:
The first one was possible everyone with a draft can participate from
the drafts of each round were the best to develop and participate in
the next Round selected. From the second round, the designs were
only
identified by color codes for impartial assessment
enable. This has probably been successful, because the winner of
the tender came out
France - a remarkable result for a tender for a
US state agency. It was a Honeywell group
Bull under Jean Ichbiah. The new language was named after Ada
Lovelace, daughter of the English
lish poet Byron, who was a gifted mathematician. Charles
Babbage, mathematician and inventor (for example the cow fcinger
for
Railway locomotives) in the last century, invented precursors of the
mo-
Computers: First the difference engine, a non-programmable
mable calculating machine, and then the analytical engine, its
sequence
could be controlled by punch cards. He got state
financial support to build his computers. But this dried up
during the construction of the difference engine, because the
mechanical engineering
techniques of the time did not allow the necessary precision and
always made new changes necessary. So was the construction of the
Analytical engine not even started and also the ones behind it
Understood ideas by just anyone. The exception was Ada Lovelace,
who created a detailed description of the machine and showed how
you could program them to solve very different problems.

2.4 Improvement and standardization


After the selection of the language draft by the group around Jean
Ichbiah was
the work by no means done. On the one hand, the design
underwent two more revisions before it went live in 1983 the now
valid ANSI and ISO standard: a revision to based on comments and
criticism from interviewed experts and from the public and a further
revision due to the procedure for Recognition as an ANSI standard.
On the other hand, it was a strongly standardized language from the
start aimed to ensure a high level of reliability and portability of the
Programs to ensure. That's why they started before they were
finished of the language definition to develop a validation procedure
that the Verify compliance with the language standard and by each
aspiring Ada compiler should be run through - more on this in §2.6.
In 1980 the HOLWG was dissolved; since then the Ada Joint Pro-
gram Office (AJPO) responsible for all Ada activities, for example for
the development and implementation of the validation procedure. A
Another activity is answering questions about the interpretation of
the Language standards. Despite its size, the language definition
does not contain any intentional gaps and inaccuracies; for each will
when discovered will be a binding interpretation in a panel of experts
set. This interpretation is issued as an Ada Issue and is also reflected
in the validation procedure. The recognition of the language
definition as an ANSI and ISO standard brought the obligation to
carry out regular checks and, if necessary, for revision with itself.
The first review is upon completion of this Book still in progress. The
language undergoes a major revision. sion; the revision project is
called: Bt Ada 9X (because the new language definition
should be finished in one of the nineties) and is expected Ended at
the end of 1994; the first validations according to this standard
which will not take place before 1995. Refer for information on Ada
9X
we the reader to chapter 18.

2.5 Chronological overview


For readers who want to know more about the chronology of the
developments outlined above If you want to know, we provide an
overview here:
1975 Strawman HOLWG founded
1976 Tinman
evaluates existing high-level languages
International tender
1977 lronman
17 drafts submitted
4 of them shortlisted for further development:
Sofl'ech: blue
SRI International: yellow
Intermetrics: red
Honeywell Bull: green
1978 Steelman Further developed designs of approx.
1979
1980
1983
1987
199x
400 reviewers in 80 teams evaluated Red and green selected for
further development Green chosen as new language Name set Ada
public invitation to use a Test translator and participation in training
Preliminary language definition distributed to 2000 experts
Development of a validation procedure started
public testing and evaluation meeting in Boston 500 reports from 15
countries evaluated Language adapted: Bt and handed over to
HOLWG MIL-STD 1815 DoD standard for Ada
HOLWG dissolved Ada Joint Program Office (AJPO) established
ANSI standard established for Ada
first compiler validated
ISO standard established for Ada
Ada 9X

2.6 What is validation?


Validation is a process that compilers use to ensure compliance the
language definition can be checked. A compiler that does this Has
passed the test, it is allowed (for a while) to be validated Ada
compiler
call. The validation procedure consists of a number of Ada programs
men (in the now valid version 1.11 there are over 4,500 programs).
Some of these only have to be translated by the compiler candidate
(namely to check that he has certain incorrect programs rejects and
accepts certain correct programs), in most If, however, the
generated program must also run so that its se-
mantic can be checked. The purpose of validation is to identify many
types of possible misbehavior Exclude compilers; but it is not a
verification, so it cannot determine whether the compiler has any
other malfunction. A valid The dated compiler does not have to be
error-free. The validation also does not affect the efficiency of the
compiler or that of it evaluate generated codes. The programs in the
validation process partially check the keeping the language definition
in [Ada], but for the most part also the
Compliance with binding interpretations set out in Ada Issues were.
After the publication of an Ada Issue with such a Additional tests will
be carried out in the next version of the to ensure compliance with
this interpreta- check tion. Therefore a validation certificate is only
valid for one
limited time (usually one year) so that compilers are always
validated are up to date.
The fact that the de facto language standard (= [Ada] +Ada
Issues) changes regularly can of course mean that a correct one
today Ada program will soon no longer be correct. But since [Ada]
very much is detailed and the process with the Ada Issues has been
going on for almost ten years is practiced, the inaccuracies that are
now being noticed lie den, in very unusual areas and therefore affect
very few Programs.

2.7 The development environment


One of the reasons for the software crisis was that for languages
only were used for a few applications, mostly only a minimal one
Development environment was available. The HOLWG recognized
that the development environment of a language essential to their
quality and practical applicability.
wearing. Therefore it left according to the requirements descriptions
for the Language itself also requirement descriptions for the
development Create the environment: "Sandman", "Pebbleman" and
finally "Stone- man "([Stoneman]). However, the findings were in the
field of Development environments back then were nowhere near as
sophisticated as in Area of programming languages. So although
Stoneman contains requirements changes to an Ada development
environment, but a mandatory one Standardization in this area did
not materialize.

3 Successful programming and Ada


As characterized at the beginning of the introduction, language
supports Ada the development of programs that also work on a large
scale
• confident,
• wait for cash and
• portable
are. In this chapter we discuss terms in the field of pro-
programming related to these properties, and programming
programming principles, compliance with which the development of
program
men with the properties just mentioned. We do this now so that we
can discuss individual language constructs later can point out
without further ado the terms with which the Constructs and what
programming principles they support. Computer scientists and other
readers for whom these terms and Programming principles for the
self-evident basis of the program You can read this chapter over and
focus on the last the first section, which provides an overview of the
most important language contains constructs. The three properties
mentioned are characteristics of finished programs.
But the larger a program, the more difficult it is to create
management of the program, even if one of claims like the three
above mentioned entirely. Not every programming language un-
assists programmers in creating large programs. We will who also
discuss terms and principles that are not primarily involved related to
the three properties mentioned, but to the
Create large programs.

3.1 abstraction
We address this topic first in the interest of the reader because it is
so The key is that it applies to all of the basic topics in this chapter
shows up. By abstraction we mean a view that is a summary certain
thingsj featuresj actions as a coherent whole and ascribes its own
IdentWit to this summary.
Abstractions serve to grasp the coherent whole or to convey. In
doing so, its details are in the background
posed. We are constantly using abstractions in life in order to
improve our environment
understand and describe. The repetition of the sequence of actions
• move the left full forward,
• shift body weight forward,
• put on the left full ,
• balance on the left full ,
• move right foot forward,
• shift body weight forward,
• put on the right full,
• on right Full balance
Let us consider, for example, a coherent action and name they go So
you set the individual actions that belong to walking, in the
background to capture the related action or to convey. The view of
each individual action as a coherent one Action is of course an
abstraction again (on a lower level). That the term forest is an
abstraction comes from the idiom "You can't see the forest for all the
dunes" to the expression. If When talking about the forest, the
individual buildings are placed in the background, to capture the
forest as a whole. Another example of an abstraction is the term
money (limited
For the sake of simplicity, let's use German cash). At upper From a
flat perspective, this term appears as the name of a group collection
of coins and bills. Belong to the essence of money but also certain
characteristics of these coins and bills, for example the fact that
every coin and every note has a certain meric value. The essence of
money also includes agreed actions related to money, for example
money serve, buy something with money, sell something for money.
One sees so that this abstraction has things, features and actions as
summarizes the coherent whole and is therefore quite complex;
despite-
we use them every day. In order to write a large program, one has
to make abstractions
easily recognizable in everyday life, but sometimes also Formulate
new abstractions, define and in the program respectively represent
as a coherent whole. This is the only way the program will work fill
the programmer (and even more fill those who later too Read for
maintenance purposes) transparent; otherwise he will sink in Writing
in a quagmire of details. A programming language
which largely supports the development of programs, must therefore
aquate representation also enable complex abstractions. In the
program there is of course always a more radical type of
Abstraction present: there are many details from the real world in
the program not only put in the background, but completely omitted
because they fill the task that the program is supposed to solve, ir-
are relevant. In a program that has the (face) value of coins added
up, for example the date of a coin is wrong levant; this detail is
therefore shown in the representation of the coin in
Program omitted. In the next two sections we discuss two types of
Abstractions.

3.1.1 Abstraction of data


The art of abstracting data is to create a conception of certain things
/ characteristics / actions as connected
Thing to look at. Abstractions of data are seldom completely given
and fill all
People are equally insightful, they are often completely invented by
people.
the. For example, colors are predefined at first glance Abstraction.
But many people are known to cross the border Disagree between
green and blue; fill Color-blind people have color anyway little or no
intuitive meaning. You can have an ob- Determine the effective
definition of the colors via their wavy lines, i.e. via
another abstraction. Addresses are an entirely artificial abstraction
for unambiguous gen identification of the location of an apartment in
which the many other characteristics of the location are ignored.
There are others conceivable abstractions fill this purpose: You could
also choose the location
iden- tical due to longitude, latitude and height above sea level
verify. This would be the calculation of the distance between
apartment This makes it very easy to find an apartment in a criminal
network
but make it very difficult if the penalties are not in north-south or
east
run west. Or you could be in a huge Number the administrative act
for all existing apartments. This would
lead to short addresses and possibly please address companies,
which then needed less storage space. Authority that each
apartment Wanted to write, had it good too. However, there would
also be In this abstraction, finding an apartment is usually an
evening-filling one Employment. So you can see that you are already
communicating in everyday life Abstractions of data are needed for
different abstractions to be differently suitable for different purposes,
and sometimes fan- fantasy and creative ability are necessary to find
the right (or at least
To find at least one good abstraction for a particular purpose. An
executable computer program contains a lot of communication tion,
both between the program and the outside world and within
half of the program. The program source describes this communica-
tion, but also serves for communication itself, namely between pro-
programmer and calculator, and also between the programmer
and the people who read the program (for example, to
to change or to check its quality).
What has been said so far about the development of suitable
abstractions applies
so in particular for programs. A programming language
in which maintainable programs can be written, so
tel to make the most diverse abstractions of data easy
to be shown recognizable.
Ada supports the abstraction of data through the diverse possibilities
opportunities to agree on your own data types. It also offers
Ada the package construct that is used to represent data structures
along with their operations.

3.1.2 Abstraction of actions


The abstraction of actions is also practiced daily in the social
language, if one considers an action as a coherent whole.
tet, although it consists of many smaller actions. Abstracted here
one, so that details that are (at the moment) unimportant, the
Do not make it difficult to understand the whole thing.
Such abstractions must be recognizable in a large program
are presented so that the program source remains understandable ..
It
So this is about communication between the programmer and
the readers of the program source.
It is also true for abstractions of actions that often fantasy and
professional skills are necessary to obtain a favorable
to find some abstraction, and that a programming language that
supports the
Should support the writing of maintainable programs, funds must be
included,
which easily distinguish the various abstractions of actions
form.
Ada supports the abstraction of actions by the subpro-
gram construct.

3.2 Draft program


At the beginning of the development of a program there is a draft.
Even this assertion is wrong, because before the draft has to be
done
the functional specification , i.e. the most precise form possible
formulation of what the program should achieve, detached from the
question of
how it is supposed to accomplish this achievement programmatically.
So that such a functional specification can be created, mufi
the client know exactly what he wants, so he has to be very precise
Ask a precise question about the desired functionality of the program
Answer; this is a high requirement for the client
ber.
Let us assume that the client has any specific question about the
Functionality of the program can answer exactly. The wish
of the client must now completely in a functional special
fication can be formulated. This work requires perspective and often
a lot
Abstraction and creativity: the formation and definition of
Terms that are in the air but were never pronounced, or
pronounced but never precisely defined. This requirement too
is often not fulfilled: in many "functional specifications" these are
missing
abstract terms that require a precise formulation of the program
gift would be made possible; for this they contain all the more
details
about the technical implementation. This inevitably leads to
non-transparent and therefore error-prone and difficult to maintain
gram.
The stages discussed so far on the way to the program are
on the one hand so important, because mistakes made here in later
stages are not
can be compensated for more or only with astronomical effort. At-
on the other hand, these are stages that have hardly anything to do
with the program
language to do with. They are nevertheless part of the subject of
this chapter
because a program in which serious errors at this stage
made, will not turn out to be good despite optimal use of Ada
Program.
When the functional specification is complete, the next is
Step in the development of the program the draft. This means-
Let's give an abstract representation of the program in more or less
rough drafts (under "draft: f" one also understands the steps, with
which one creates this representation from the functional
specification).
The design is similar to the functional speci
fication: If you make serious mistakes at this stage, you can
you can't make up for them in later stages, and they cost a lot
Time and money.
A draft program can be written in a natural language,
or in a suitable formal language, possibly also in the
Language in which the program is to be written (due to the
possibility of
Ada is relatively well suited for the ability to represent abstractions
this purpose).
There are also some special design tools that have a
Draft language with a translator into a programming language
tie. The user therefore writes (usually with interactive support
of the tool) its design in the design language. The tool
Checks the design for consistency and uses it to create the
framework for one
finished program in the programming language as well as a graphic
Representation of the program structure and possibly other program
options
documentation. Such tools can be helpful
Programmers but not relieve the creative intellectual work,
To recognize connections and to come up with good abstractions.
Very often the call for a design tool is loud because one
this work is not trusted then the program that is created with the
help of the
Design tool is no better than without this help.
Often it is even more unclear because you are using the tool
is enabled to create program modules that can be used with
Hand-made creation has long been felt to be unclear and
therefore structured in my own interest. In most cases
the tool also produces a lot of (partly unread) paper.
But whether you work with or without a design tool - you will
in a large program without a certain methodology
men. If, after a certain stage, the draft is included in the program
If the language is to be written, it is important that it is the most
widely used
Program design practices supported. This includes the
Method of design through step-by-step refinement (top-down de-
sign): By using suitable abstractions one describes the
Structure of the program initially in very rough terms: Bend
if one goes to the task of removing the elements placed in the
background by the abstractions
details using abstractions at a lower level
to describe. This procedure is used iteratively as long as
until the abstractions that are used only contain details in the
Background that is irrelevant for the solution of the task anyway
are.
The method of gradual refinement in actions has been around since
the advent of structured programming in the early 1970s
Years ([Dijkstra]) iiblichj all block-structured languages, also Ada,
can this method be nested in the program by the agreement
the subroutines. In Ada you have more than that
through the separate translation the possibility of subroutines
a high level of abstraction completely, ie including the calls
from subroutines of a lower level of abstraction to overridden
Zen. A translation of the implementation of the latter sub-
programs can then be done later. So you ca n't just do that
Reflect the design in the program, but every level of abstraction
Complete programming and translation before starting with
the programming of the next level of abstraction begins. In the
Development of a large program, this is organizationally important:
If the design of lower levels of abstraction is based on different
is divided between them, they no longer need the program sources
of the
change higher levels of abstraction.
The method of step-by-step refinement for data structures is in
widespread in the COBOL world and just as useful: You describe
a data structure first in very rough terms: Bend you go
suggested describing the details of the structure. In Ada you can
reflect this method in the program, through compound data
types and packages. When using packages you have
also: About the separate translation the possibility of the current
To fully program and translate the abstraction level,
before you start programming the next level of abstraction
begins.
The use of well-known parts of the program to build large parts
(bottom-up design) for both actions and data structures
is also a sensible approach that Ada also supports.
When object-oriented design (object oriented design, abbreviated
OOD) one identifies the objects and the classes of similar objects
in the task. Classes of objects (for example "money") are ab-
stractions that contain both data / properties (for example "10",
"value
10 DM ") as well as actions / operations (for example" sell ")
grasp. The goal is to present each such abstraction in the program
as
that all aspects of the real world relevant to the task through this
Representation in the program can be identified and adequately
mapped.
[Ada] only partially supports an object-oriented design, Ada 9X
however, unrestricted. We refer the reader to [Booch 86] for one
detailed explanation of a variant of this design suitable for [Ada]
method that we will use for the design exercises (Exercises 2, 6 and
7) in this
Use book. In Chapter 18 we discuss those new con
structures in Ada 9X, the (together with the Resources) allows
unrestricted object-oriented programming chen.

3.3 Readability and Transparency


The terms legibility and trans-
parence express different aspects of the intelligibility of a pro-
gram text. Often the term "legibility" is used for both aspects
used; we differentiate:
By readability we mean a local property of the program text:
A readable part of the program text is one that is easy to read with
the eye
is recorded and superficially understood, regardless of the context
text. To ensure readability in this narrow sense, an example
Uniform conventions on upper / lower case and formatting
and the thoughtful use of spaces and blank lines as well
like the use of complete words and expressions of natural ones
Language instead of hard-to-understand circles. This readability
appears
too banal for some. However, it is important because it requires
more effort
When the program text is recorded, the following inevitably leads to
the
Readers have fewer resources left for understanding the context
Has.
By transparency we mean the comprehensibility of the context
in program. In a truly transparent program,
As if on a small scale, all connections were manageable. Trivially
the following applies:
• A transparent program or part of a program can only be written
practice, if one has understood the connections in the task so well
beforehand.
that one can formulate suitable terms / abstractions
was able to make the connections precise and still manageable
to present.
• A transparent program is reliable: If one
Menhange can easily understand mistakes instead of jumping in
to hide a mountain of details.
• A transparent program is maintainable: If you
If one looks at a lot, one also looks at the effects of a
Modification.
From these remarks it is clear that transparency is not a luxury, but
the means for the generally recognized purpose, reliable and
serviceable
Writeable programs.
Ada demands legibility through, among other things:
• Free choice of identifiers in any length using
Uppercase and lowercase letters and subscripts, with all characters
also
are significant for the compiler
• a well thought-out syntax in which a syntactically correct program
do not create a completely different line by adding a blank
Can get meaning
• Freedom of format in the language, so that spaces, line breaks and
Blank lines can be inserted in the interests of legibility
thereby
• Easy to format, so Ada programming environments without
It takes a lot of effort to deliver a formatter
• the separate translatability, always small due to the program
modules
can be held.
Ada demands transparency through, among other things:
• the possibility of the current parameters when subroutine calls
to be assigned by name j
• the strict typing (see §3.8.1) j
• The possibility of structurally identical but different types of data
Differentiate between assignments to different types
• the wide range of options for providing information only in parts of
the
in which they are relevant in terms of content
(see §3.6).
3.4 Modularization and separate translation
Very small programs can be made transparent even without
structuring
his. But as soon as a program has more than about a hundred lines,
a structuring in different
different modules. To structure can be in Ada subprograms
me, but also packages.
For a program that can be translated in a few seconds,
you can have a new translation of the whole program at each
Accept changes in a large program whose over-
If setting takes minutes or even hours, this is uneconomical. Of-
half the subroutines and packages that are in an Ada
Structuring program agreed, separate from other parts
translate the program. If there is a change in the subroutine or
in the package you only have to repeat the affected part of the
program
translate.
Elsewhere (§3.7) we discuss the language presented by the
written consistency checks that each application of a subpro-
program or a package for conformity with the interface (§3.5)
check. These tests play an essential part in ensuring reliability
of Ada programs and for the early detection of errors. Out
for this reason they have to translate a subpro-
program or a package can be carried out in the same way.
3.5 Specification, interface, implementation
Random documents with unrelated
content Scribd suggests to you:
Now it requires about 3 minutes 56 seconds longer for the
meridian to sweep around from sun to sun than from star to star,
owing to the fact that the mean sun moves uniformly eastward that
amount daily, thereby requiring the meridian, after reaching its
position of yesterday noon, to overhaul the mean sun this 3 minutes
56 seconds of eastward movement. The mean sun maintains this
uniform difference between its days and the length of the sidereal
day. Without this daily easting of the sun, the sidereal and solar day
would be the same.
But, in considering the apparent sun, we find the length of its
days continually varies from both that of the sidereal and mean day.
This is explained by the fact that the eastward movement of the
apparent sun is due to the movement of the earth in its orbit, and as
this movement becomes faster or slower the eastward movement of
the sun becomes correspondingly faster or slower. Thus, we readily
see that with the apparent sun moving eastward faster or slower at
times, the length of the apparent day must vary accordingly and we
cannot establish a uniform difference between it and the sidereal
day, as in the case of the latter and the mean day. The apparent
days exceed the mean days in length, between September and
March, while the earth is traveling fastest in its orbit. Beginning at
the autumnal equinox with the apparent sun eight minutes behind
the mean sun, the former gains slowly at first but with increasing
rapidity. About the end of December, at perihelion, it overhauls the
mean sun and they are coincident as regards this correction only.
Leaving perihelion, the apparent sun rapidly takes the lead but with
a gradually decreasing amount until at the equinox in March,
reaches its maximum lead of 8 minutes. Entering that portion of the
year March to September, we find the earth traveling slower and the
mean sun gaining on the apparent sun; between the vernal equinox
and aphelion, the mean sun gains until both are together at the
summer solstice and then forging ahead the mean sun attains a lead
of 8 minutes in September.
It must be borne in mind that this error is caused only by the
eccentricity of the orbit and is but a component part of the whole
correction of the equation of time. The other portion is due to the
obliquity of the orbit, or its inclination to the equator.
This error is introduced through the fact that the apparent sun
moves in the ecliptic and the mean sun is assumed to proceed along
the celestial equator. In considering this phase of the question, we
will ignore entirely, for the time being, the error of eccentricity
described above.
The error of equation of time due to the obliquity of the orbit is a
simple one to see, but like many simple things it is easier to show it
by a diagram than to explain in words, so the reader is referred to
the accompanying figure, that a study of it may be made before
proceeding.

Fig. 4.
At the equinoxes, where the ecliptic and equator cross and the
solstices—the vertices of the ecliptic—that is, four times a year, the
true and mean sun are together, but departing from these points
they do not travel with the same right ascension, remembering that
right ascension is measured on the equator. Taking, for example, the
earth in that quadrant of the orbit comprised between the vernal
equinox and summer solstice, the apparent sun in the heavens
would be by cause of obliquity alone, to the right or to the westward
of the mean sun, and thus it will be seen that with the earth rotating
from right to left the apparent sun will cross the meridian first;
consequently between March 21st and June 21st that part of the
equation of time due to the obliquity of the orbit bears a minus sign
when mean time is desired from the apparent time. This correction
reaches its maximum half-way or 45° from the equinox, amounting
at that point to nearly 10 minutes.

Fig. 5.
Now the reason for this difference between the mean and
apparent sun when each (so far as this problem is concerned) moves
along its respective path—the equator and the ecliptic—at the same
rate, is this: suppose the equator between the equinox and the
solstice is divided into an equal number of parts and an hour circle
drawn through each point of division. Beginning from the equinox
(the common apex of the triangle) the arc of each hour circle
between the equator and the ecliptic, forms the altitude of a right-
angled triangle, while the equator and the ecliptic are base and
hypothenuse respectively. Thus it will be seen that each portion of
the equator (base) is shorter than the corresponding part of the
ecliptic as defined the hour circle, to the extent of the ratio of the
base to the hypothenuse.
This amount increases with the increasing size of the triangle, but
a new element enters to counteract its effect. With the increasing
divergence of the ecliptic and equator, the divergence of the hour
circles becomes a factor and as the solstice is approached the
divisions on the equator, are represented on the ecliptic by gradually
decreasing spaces between the hour circles.
The combination of these effects produces the error due to the
obliquity of the orbit. The error has the opposite effect in the next
quadrant, that is, from June to September; and in opposite
quadrants it is the same.
So it will be seen that error due to the eccentricity causes the
apparent sun to lead the mean sun from December 31st to June
30th, reaching a maximum of 8 minutes about April 2d. This sun
then falls astern until December, again attaining a maximum of -8
minutes about October 1st. The error due to the obliquity of the
orbit accumulates between the equinoxes and solstices for at these
points the two suns are together and there is no error, but about the
6th of May, August, November, and February, it reaches a maximum
of 10 minutes; in August and February, the mean sun takes the lead.
These two errors of equation of time combined algebraically will
result in the plain line of the diagram.

Calendar
The ancients, in order to keep track of past events and to
anticipate the future, devised a calendar, which, while not identical
with the one now in use, was of itself a remarkable production. They
chose the revolutions of the moon as their basis of measuring the
passage of time, and, as a lunar month contains only 27⅓ days, the
12 months used in this early calendar comprised a year of about 354
days.
It became apparent as the world progressed that use of the moon
was very unsatisfactory for this purpose, as the calendar became
complicated and confusion resulted, owing to the difference between
the lunar and solar years. This condition remained until the reign of
Caesar, when that monarch determined to establish a more
satisfactory method of reckoning time. With the aid of an eminent
astronomer, he completely revised the calendar, using the revolution
of the earth around the sun as the standard for the length of a year.
The time required for this is 365¼ days, approximately, and as it
was inconvenient to include the ¼ day in the year, it was allowed to
accumulate for 4 years, when as a whole day, it was added to the
end of February.
Caesar, evidently proud of this accomplishment, honored himself
by naming his astronomer’s invention the Julian Calendar and in
order to further immortalize himself he changed the name of the
seventh month to July. Augustus, his successor, apparently envious
of the honor his predecessor derived from this source, and
determined not to be thus outdone in perpetuating his name,
changed the month Sextilis to August.
The commonly accepted 365¼ days as the length of year is only
an approximation, however, and the small difference between this
and the actual length of a year began to accumulate until this weak
point in the Julian Calendar became a matter of moment. The exact
length of a year from vernal equinox to vernal equinox is 365 days 5
hours 48 minutes and 46 seconds, which lacks just 11 minutes 14
seconds of 365¼ days. This caused the dates of the equinoxes and
solstices to keep slipping back 11 minutes each year and when
considerable time had passed the difference became large enough to
cause inconvenience; the date of the vernal equinox having dropped
back to March 11th in 1582. In this year Pope Gregory, acting under
the advice of an astronomer by the name of Clavius, modified the
Julian Calendar. He first added 10 days to restore the date, and then
to forestall a further retrogressing of the calendar, provided that only
those century years divisible by 400 should be considered leap
years. In this way the 11 minutes 14 seconds was prevented from
causing further mischief. This calendar known as the Gregorian
Calendar is now in almost universal use, though at first it was
adopted only by Catholic countries.
It is interesting to note that the time consumed by the sun in
making his apparent yearly revolution from a certain star back to
that star again is a sidereal year of 365 days 6 hours 9 minutes 9
seconds. The tropical year—the one in common use—is shorter,
being the time required for the sun to leave and return to the vernal
equinox, or First Point of Aries. This point, it will be remembered, is
moving westward about 50´´ annually, and it will be seen that while
the sun starts its eastward revolution among the stars, the equinox
is very slowly moving westward to meet him, thus making the
tropical year about 20 minutes shorter than the sidereal year.
While discussing the calendar it is an opportune time to explain a
matter concerning the dates of the equinoxes and solstices. It has of
course been noticed by everyone that the vernal equinox occurs one
year on March 20th and another on March 21st, or the summer
solstice on June 22d and yet another year on June 21st and so on.
Aside from the slight change due to the dropping back of the
seasons in the orbit by the precession of the equinoxes, the actual
time of the equinoxes and solstices may be considered as constant,
yet the dates vary a few hours.
The year in common use—the tropical year—contains
approximately 365¼ days, yet we take account of only 365 days,
the extra ¼ day being laid aside for future reckoning. During the
next year this 6 hours will be augmented by 6 more; the next by
another 6, making 18 hours ahead of the calendar. The fourth year
this amount reaches 24 hours, and a full day, the 29th of February,
is added to the calendar for that year, and we are square again. But
the different equinoxes and solstices occur at just 364¼ days; taking
for example the vernal equinox, it occurs on the following
(approximate) dates, which it will be noticed are 6 hours later each
year:
1908—March 20, 12 hours (leap year).
1909—March 20, 18 hours.
1910—March 20, 24 hours or March 21st noon.
1911—March 21, 6 hours.
1912—March 20, 12 hours (leap year).

It is evident by the above that the insertion of the extra day just
previous to the equinox in the leap years, sets the date of the
equinox back a day by the calendar. Juggling the ¼ day as shown
above causes the change in the calendar dates of these phenomena.
CHAPTER V

Corrections for Observed Altitudes


The observed altitude of a heavenly body, as measured with the
sextant, requires treatment for numerous errors to reduce it to the
true altitude and make it ready for use in working any of the
navigational observations. The amount of error varies in different
bodies, the moon requiring the maximum and the fixed star the
minimum correction. All the errors are not common to all bodies,
that is, with some, certain errors become so insignificant that they
are cast aside.
These errors comprise the index error of the sextant, refraction,
dip, semi-diameter, and parallax. In Table 46, Bowditch, will be
found the combined corrections (index error excepted) to be applied
to an observed altitude of a star or planet and to that of the sun’s
lower limb. A supplementary table furnishes an additional correction
to be applied to the semi-diameter of the sun when accuracy is
desired. These corrections will now be discussed in the order
named:

Index Correction
The index and horizon glasses of a sextant are supposed to be
parallel when the zero of the vernier and the zero of the limb are in
one, and with this the case, the true and reflected images seen in
the horizon glass should exactly coincide. Any difference between
them is the index error.
It is seldom that a sextant is so well adjusted that no index error
exists, but it is not desirable to keep tampering with the instrument
with an attempt to eliminate this error, for it will in time injure its
accuracy.
By testing the sextant at each sight, the error can be closely
watched and allowance made for it in correcting altitude. The easiest
and most accurate method of ascertaining this error is by using a
star in the following manner: Set the zero of the vernier a little to
either side of the zero of the limb, and observe a 2d or 3d
magnitude star—move the reflected image past the real and note if
they pass directly over one another. If not, the horizon glass is not
perpendicular and needs adjustment. Bring the reflected star in
exact conjunction with the real star, and read off the index correction
—if the zero of the vernier is to the left of the zero of the limb—on
the arc—the difference is minus (-) and subtracted from the
observed altitude; and if to the right—off the arc—it is plus (+) and
added. A well-known rule of thumb expresses it thus: if it’s on it’s
off, and if it’s off it’s on. The sea horizon is also available for
determining this correction and serves the purpose with fairly
accurate results.

Semi-diameter
In measuring the altitude of certain bodies for navigational
purposes, it is necessary to determine the distance of the center of
the body above the horizon. To accomplish this in an accurate
manner the lower edge or limb is brought down to the horizon and
the semi-diameter applied to this measured altitude. When the lower
limb is used, as is the usual practice, the correction for semi-
diameter is obviously plus (+). The upper limb can be resorted to,
however, should the lower side of the body become veiled by cloud,
and in this case the correction is minus (-).
Semi-diameter of the sun is obtained readily from the Nautical
Almanac for each ten-day period, for it must be remembered that
the sun is continually changing its distance from the earth, and
consequently the diameter of the former is increased and lessened
slightly at different times of the year. For instance: On January 2d,
when the earth is near perihelion and we are at our nearest point to
the sun, the semi-diameter is 16´ 17´´.90, while on July 2d, when
we are in the remote parts of the orbit, the semi-diameter is only
15´ 45´´.69, making a difference of over 32´´.
The moon being such a near neighbor of ours gives more trouble
in determining her diameter. Besides being greatly affected by her
rapidly changing distance from the earth, a further correction is
occasioned by the fact that our position on the surface is nearer the
moon at times than is the center of the earth. That is, when the
moon is in the zenith we are 4000 miles, the earth’s radius, nearer
that body than when she is in our horizon. It is evident that the
direction of the moon in our sensible horizon is at right angles to a
perpendicular erected at our place of observation and passing
through the earth’s center, and this again makes it evident that the
moon is about equally distant from the earth’s center and our
position on the surface; but as she ascends the heavens she comes
nearer our position until in the zenith the distance has been reduced
by 4000 miles and the diameter appears correspondingly larger.
Draw a diagram and see for yourself. This Augmentation of the
Semi-diameter, due to the altitude, is found tabulated in Bowditch,
Table 18.
The semi-diameter becomes too small to consider in ordinary
navigation when observing any of the planets, and of course fixed
stars are beyond its scope.

Refraction
Everyone knows that the blade of an oar when dipped in the
water appears to be bent in a remarkable manner at the surface.
This is a clear case of refraction. Should the oar, however, be held
under everywhere at an equal depth, a square look downward at it
would fail to show any refraction. So it becomes evident that
refraction is caused by the rays of light passing obliquely from a
rarer to a denser medium or vice versa. A ray of light coming from a
heavenly body to the earth passes through a medium of gradually
increasing density, from the thin outer air to the denser atmosphere
at the surface of the earth. The ray of light consequently becomes
curved downward and reaches the earth at a point nearer the
heavenly body than would be the case if the light ray traveled in a
straight line. The effect of this to the observer is that the body
appears higher than it really is. The difference between the actual
direction of the ray of light unaffected by the air, and our line of
vision as we see the body, is the refraction.
The amount of refraction ordinarily affecting an observed altitude
depends upon the distance of the body above the horizon. At the
zenith, the rays of light, entering our atmosphere perpendicularly,
are not deflected and refraction is nil. But, on the other hand, when
the body is near the horizon, the rays of light pass through the
atmosphere at a sharp angle and are consequently subject to the
greatest bending, thus giving us our maximum refraction. In fact,
this element becomes so unreliable in low altitudes that it is not
advisable to observe a body when less than 10° or 13° above the
horizon. This in no way concerns bearings taken of bodies in the
horizon for amplitude, as refraction affects the altitude and not the
azimuth of a body.

Dip
It is a well-known fact to every seaman that by going aloft, he
can pick up a light sooner than on deck; that is, the higher his
elevation the wider his horizon becomes. The horizon of a man in a
small boat is only about 3 miles away, but, if he climbs to the bridge
of a steamer some 60 feet above the water, he finds that the horizon
has receded until he has a range of about 9 miles.
The fact that the horizon can be altered by changing the altitude
should appeal to every navigator as a possible means of getting a
horizon in foggy weather, by going aloft or getting as low as
possible, provided the fog bank is lying above or close to the water.
The altitude of a body is measured to the visible horizon, yet the
measurement must be adjusted to the sensible horizon before the
true altitude can be obtained. This correction is accomplished by
applying to the observed altitude the amount of the angle formed at
the observers eye by the planes of the sensible and visible horizons.
The angle is known as the dip of the horizon. It is readily seen that
this angle always makes the observed altitude too large, for the eye
if located at the exact surface of the sea, theoretically sees the
sensible and visible horizons in one, while at every elevation above
the surface it depresses the visible horizon correspondingly. It is,
therefore, always necessary to apply the dip as found in Table 14,
Bowditch, with a minus (-) sign.
An inspection of the table of dip will show that the rate of
increase of this error becomes more rapid as the height of the eye is
diminished. To illustrate: The reader will note that between an
elevation of 4 feet and one of 9 feet there is a difference of 1 minute
in the dip, while higher up, say between 26 feet and 38 feet, a
difference of 1 minute is likewise found, yet in the first instance
there was a range of 5 feet and in the second a range of 12 feet.
This fact in itself is an argument in favor of observing altitudes at a
good height above the water.
In calculating a meridian altitude, an error in the dip directly
affects the result by a corresponding amount, so extra care should
be exercised in this respect. In this instance, we endeavor to locate
the body relative to our zenith and anything that affects its altitude
directly affects the latitude. In a time sight, a different principle is
involved. Here the position of the body as defined by the latitude
locates the apex of one angle of the astronomical triangle and hence
a small error in the altitude will very likely cause a greater effect on
the longitude.
An allusion was made under the caption of Refraction to the
displacement of the visible horizon by terrestrial refraction to detect
which requires watchfulness on the navigator’s part. The familiar
“loom” seen along the coast is an example of the workings of
variable refraction. Now imagine this distortion less aggravated with
no land to show its existence and you have a good illustration of this
error.
Refraction of this nature is usually found during light airs and
calms when the different layers of air arrange themselves according
to their temperatures. The heated air over land below the horizon in
hot weather will displace the intervening horizon; moreover, when
the air is warmer than the sea, the horizon is elevated above the
normal and, when the conditions are reversed, the horizon is unduly
depressed. Thus lights become visible a little sooner after a hot day
ashore. The Red Sea, Gulf Stream, mouth of the Amazon, and other
large rivers are places where the horizon should be especially
distrusted. Capt. Lecky, in his famous Wrinkles in Practical
Navigation, refers to an experience he once had with this error. The
latitude had been found “by an excellent meridian altitude of the sun
to be as much as 14´ in error. The time was mid-winter—the day a
clear cloudless one—the sea smooth, and the horizon clean-cut. Five
observers at noon agreed within the usual minute or half minute of
arc, nevertheless, on making Long Island (U. S. A.) in less than two
hours afterwards, the latitude was found wrong to the amount
stated. Many such cases have come under the writer’s notice, but
this one alone is cited on account of the magnitude of the
phenomenon.”
What Captain Lecky said in his work on navigation is reliable and
this should serve to make an impression as to the dangers of such
occurrences.
In clear weather this displacement of the horizon may be
lessened somewhat by observing from aloft. By extending the
horizon, such disturbing influences as the motion of the vessel and
an irregular horizon caused by rough sea are minimized. In hazy
weather, however, it is recommended to observe low, bringing the
horizon as close as possible.

Parallax
In calculating the true altitude of a body the distance of its center
above the horizon is supposed to be measured from the center of
the earth, or what is the same thing, the altitude above the rational
horizon.
The application of semi-diameter adjusts the measured angle with
the center of the body, while parallax corrects the error due to our
observing from the surface of the earth to the sensible horizon,
instead of from the center to the rational horizon.
Parallax, in other words, is the angle formed at the body by the
lines drawn from the observer’s position, and from the center of the
earth, respectively. This angle is subtended by the radius of the
earth, and it is obvious that the farther away a body is, the smaller
the angle, and consequently the less the parallax. So when dealing
with planets or fixed stars, it becomes insignificant and no parallax is
considered.
The moon, on the contrary, is so close aboard that the angle of
parallax reaches a value of nearly 1´; as a minute of altitude means
a minute of latitude and in turn a mile, so with this body the error
due to parallax must be carefully determined.
In the case of the sun, however, it is somewhat of a waste of time
to bother with parallax, for it never exceeds 8´´ or 9´´ and such
fine calculation is uncalled for in ordinary navigation where so many
greater errors must be kept in sight. However, we desire to eliminate
every known element of error without undue figures, so it is
recommended that Table 20B, Bowditch, be used, where without
extra trouble the parallax may be found conveniently combined with
the refraction.
When a body is in the sensible horizon, the parallax is greatest.
The angle of parallax subtended by the radius of the earth is then an
acute angle of a right-angled triangle and is as large as it can
possibly be with the body at the same distance. As the body obtains
altitude above the horizon, the right angle of the triangle (at the
observer) becomes obtuse and our acute angle of parallax becomes
smaller and smaller until the body reaches an altitude of 90°—in our
zenith, when the obtuse-angled triangle has resolved itself into the
perpendicular line that passes through our position and the earth’s
center. The angle of parallax here disappears.
When a body is in the horizon, its parallax is known as Horizontal
Parallax in contra-distinction to Parallax of Altitude. The latter has
become generally known among navigators merely as parallax.
Our position on the surface causes a body to appear lower than if
viewed from the center of the earth, so the error of parallax is added
to the observed altitude; when, however, it is combined with
refraction it is subtracted in an observation of the sun, but added
when the moon is used.
The parallax of the moon is excessive because the radius of the
earth becomes a considerable amount when compared with the
close proximity of the body, and causes a considerable angle at the
body between the lines drawn from the observer and that drawn
from the center of the earth. The change in parallax is so great that
it becomes necessary in order to preserve accuracy to correct the
observed altitude for index correction, dip and semi-diameter, to
secure an approximate corrected altitude before attempting to
correct for parallax. The horizontal parallax, which is the angle
subtended by the earth’s radius when the moon is in the horizon, is
taken from the Nautical Almanac, and with this and the approximate
altitude as arguments, enter Table 18, Bowditch, and pick out,
having regard for correction tables at the right, the parallax and
refraction combined.
The usual corrections to the observed altitude of the sun or stars
can be picked out at once from Table 46, Bowditch, where they are
all combined for a quick correction.
CHAPTER VI

Latitude
Meridian Altitude
It is surprising to us, in these advanced days of nautical science,
to read of our adventurous ancestors of a century ago navigating
their ships to all parts of the known and unknown world with nothing
to guide them but their dead reckoning and the latitude crudely
obtained by the method of meridian altitude. Many of our finest
ships, as late as the first decade of the nineteenth century, sailed to
China and back with no knowledge of their longitude save what the
master guessed it to be. Even in later days much navigating has
been done in the less lucrative trades by mariners who had no
knowledge of the method of finding longitude. It required more time
and distance to navigate by latitude and dead reckoning only, as it
was not always safe to lay a course from an indefinite position
directly for the coast. It was the custom in the old days to keep off
soundings until on the latitude of the port of destination, then steer
due west, and whatever the longitude might turn out to have been
the master would sooner or later make the land in the vicinity of his
port.
The first step in obtaining the latitude by meridian altitude is the
measurement with the sextant of the sun’s altitude. This is done
when it reaches its highest point in its course across the sky; this
occurs when it bears due N. or S. true and this moment is local
apparent noon. A few minutes before this time the image of the sun
should be brought to the horizon, and by swinging the lower part of
the instrument the image will be made to swing likewise in an arc;
the lowest point of its lower edge (limb) should then be brought in
contact with the horizon as closely as the circumstances will permit.
The image will keep rising from the horizon, but by using the
tangent screw it can be continually brought back to contact. At noon
it will hang, and dip below; the reading of the sextant at this
moment is the meridian altitude.
In working the problem three quantities are used and the
navigator must be familiar with them:
The first is the zenith distance (z), which as its name implies is
the sun’s (or stars) distance from the zenith. Zenith is 90° from the
horizon, so the true altitude of the body subtracted from 90° is z the
quantity desired.
The second element is the declination (d), which is the distance in
degrees, minutes, seconds, of the body either north or south of the
equator. This is taken from the Nautical Almanac.
The third and resulting quantity is the latitude, which is the
distance in degrees, minutes, seconds, of the ship either north or
south of the Equator.
The altitude observed taken with the sextant at noon is corrected
for semi-diameter, parallax, dip, refraction and instrument error (if
any exists). These corrections are explained in detail in Corrections
for Observed Altitudes.
The declination of the sun is constantly changing between 23½°
N. and 23½° S. This is given in the Nautical Almanac for each two
hours of Greenwich mean time with the difference for each hour
given for each day. So it becomes necessary to ascertain the
declination at the moment of observation, namely, at local noon.
This anywhere in the Atlantic will occur subsequent to Greenwich
noon, as the sun (apparently) passes around the world from the
eastward to the westward once a day—24 hours—which corresponds
to 360° of longitude. The rate of travel is therefore equivalent to 15°
in an hour. Hence if the sun crosses Greenwich meridian and five
hours later crosses the meridian of the ship, say in 75° W., the
interval is 75 divided by 15, or 5 hours. During this interval the sun
has changed in declination northward or southward and should be
picked out of the Almanac for 5 hours Greenwich mean time.
When the zenith distance and declination are at hand the latitude
is obtained by a mere algebraic addition, which is, z + d = latitude;
where, if the body bears south the z is marked +, if north it is
marked -; if the declination is south it is marked - and if north it is
+. The result of the addition if - indicates south latitude, if + north
latitude. The meridian altitude of a star, planet or moon is found in a
similar manner. The formula of z + d = latitude, having regard to
signs named as above, is applicable to each. The declination and the
correction of the observed altitude are picked out of the Almanac
and Bowditch tables in a somewhat different manner peculiar to
each body.
It is found by many navigators to be more convenient to observe
a body for meridian altitude by time than in waiting for the “dip.”
The altitude is taken at exactly local apparent noon in case of the
sun and the time of meridian passage in the cases of other bodies.
This expedient is especially desirable in observing stars, as the
horizon is not as distinct and the “dip” not so easily detected as with
the sun.
In order to secure the local mean time (L. M. T.) of a star’s transit,
the G. M. T. of the star’s transit over the Greenwich meridian is
found in the Nautical Almanac (p. 96) for the first day of the month
and correct for the day by table on next page (N. A.). The ship’s
mean time of transit will be the same, as both sun and star hold
their relative positions as the star moves from Greenwich to the
ship’s meridian except for the small retardation of the sun’s
movement over the star’s movement. This is best found at the foot
of page 2, Nautical Almanac, where the longitude in time gives the
correction to be subtracted from (G. M. T.) of transit which will give
the local mean time of transit at ship—the time to observe the star.
An observation of a planet is similarly handled. The moon is
somewhat unreliable owing to its rapid changes in position and the
large corrections necessary to correct the altitude, and is
consequently rather an unpopular body to observe. However, there
are times when she might prove valuable in giving position when
much needed.
In the case of the sun the time of transit is local apparent noon,
by applying the longitude in time gives Greenwich apparent time of
local noon, and corrected for equation of time gives Greenwich mean
time of transit.
It is often necessary to report the latitude at noon very quickly to
the master. This can be accomplished by calculating the problem to
a point where the addition or subtraction of the observed altitude is
all that is necessary to give the latitude. The corrections are applied
in advance by the estimated altitude, and declination corrected by
the estimated longitude. Art. 325, Bowditch, gives the constants to
be used in four different situations.

Circum- or Ex-meridian Altitude


It frequently happens, especially in the higher latitudes, that an
aggravating mass of cloud drives over the sun or other objects that
you are chasing, with the tangent screw, and it is lost from view
together with all hope of a meridian altitude. But such an
unfortunate occurrence as the loss of the mid-day latitude may be
averted by employing the Circum-meridian sight or Ex-meridian, as
our English cousins call it.
The mariner accustomed to its use “shoots” the sun and notes the
time by chronometer or watch. Or on cloudy days, he would be
standing by, near apparent noon watching for a chance to catch a
glimpse of the object through a rift of cloud, and thereby forestall
the loss of his latitude.
The theory of this observation is extremely simple, being merely
to add to the observed altitude, taken before or after apparent noon
when the sun is being considered, the amount of rise or fall between
the time of sight and the time of culmination, and proceed with this
amended altitude as in an ordinary meridian altitude sight.
The use of this method of obtaining the latitude is restricted to
certain limits. Those who use Bowditch Tables will find themselves
restricted to 26 minutes from the time of transit and a declination of
63°, while Brent’s Ex-meridian Tables allow a greater scope and their
limit of 70° of declination includes many stars that would be
otherwise unavailable. A good guide is to never allow the number of
degrees in the zenith distance to be exceeded by the number of
minutes from noon. In very high altitudes circum-meridians are not
to be recommended, and the higher the altitude, the more accurate
must be the time used. This is plain when it is realized that the lower
the sun’s altitude at noon, the more nearly its diurnal path
approaches the line of the horizon; with the lessening curve of its
course, comes a lessening rise near noon, hence less accuracy is
needed in the exact time of sight from that of transit. In the tropics,
however, where high altitudes of the sun prevail, the clouds do not
offer such an element of bother as they do farther north or south,
and there this problem as applied to the sun loses its popularity.
In practice the use of the tables of Bowditch makes this problem
an exceedingly simple one, requiring but few figures. Table 27
contains the value of rise of the body for one minute, but as this rise
varies as the square of the interval from noon, it becomes necessary
to resort to another table (26) of constants for a multiplier, in lieu of
the number of minutes from noon. That is, if we should multiply the
amount of rise or fall for 1 minute by the number of minutes from
noon, we would not be taking into account the decreasing rapidity of
rise or the increasing rapidity of fall as the body approaches or
leaves the meridian. But Table 26 provides a multiplier which
reconciles this inequality and gives the proper correction to apply to
the observed altitude.
This quantity is added in every case where the upper transit is
observed but subtracted when a sight is taken below the pole where
the conditions are reversed.
There are several pamphlets and books on the market from which
the correction to the observed altitude may be obtained. All are
simple in form and with their explanations are readily understood.
Notable among these Ex-meridian Tables are those by Capt.
Armisted Rust, U. S. N.
The circum-meridian is a reliable method of finding the latitude,
but the time used should be accurate to produce satisfactory results.
If, however, the conditions be favorable, it is not necessary to
discard this observation even if the correctness of the time is
somewhat in doubt, for in Towson’s Ex-meridian Tables is found this
note:
“If equal altitudes be taken before and after the meridian
passage, half the elapsed time may be employed as the hour angle
for determining the reduction. Or, when the altitudes before and
after noon differ by only a few minutes, the mean of the two may be
reduced by employing half the elapsed time as the hour angle for
reducing the mean altitude.”
In practicing this suggestion it is necessary, in order to preserve
accuracy, to put the vessel on the nearest east or west course during
the run between these equal altitude observations. This is imperative
in a swift vessel.
The stars and planets offer themselves for use in this problem as
in all others, and here they possess special advantages of which the
mariner may well avail himself. Indeed, it may be said in truth that
when a horizon can be obtained the latitude is always available
through this problem.
And right here should be impressed upon the navigator the great
advantage of becoming familiar with the stars, not merely those of
greatest brilliancy, but the “lesser lights” that can be observed.
Among the latter, especial acquaintance should be sought with those
whose right ascensions place them in the gaps between the larger
stars, thus almost the entire heavens are included in the scope of
operations, making the latitude and longitude practically always
available, provided again there is a horizon.
Star charts, planispheres, and globes are for sale everywhere and
no study is more interesting than that of the ways of these celestial
travelers. They appear and pass each day, year after year, until you
consider them as old friends, and, as you come on deck for the mid-
watch, you look for Orion, for instance, the same as you look for the
members of your watch at their proper stations.
But we are off our course. The increasing popularity of the
circum-meridian and its undoubted accuracy when used with time
obtained from a carefully rated chronometer, is breaking the hold of
the time-honored meridian altitude. There is no waiting with cold
fingers, perhaps, for the body to dip for this sight, just shoot the
star, note the time and duck for the chart room to work it up.
The most favorable position of a body for a circum-meridian
altitude is one in which the rise and fall near the meridian are slow.
In the case of the sun, it was explained that a low altitude proved
the best, but, in the case of the stars, we find another condition;
those near the pole, or in other words, of large declinations,
describe such small diurnal circles that here also the change in
altitude is correspondingly small, thus fulfilling a desired condition
for the successful working of this problem. To illustrate this point the
reader is referred to Polaris. Now this star has an extremely small
diurnal circle and it will be remembered that the altitude is for all
practical purposes the same for a half hour either side of the
meridian, showing the extreme slowness of its movement of
revolution.
The stars are used in the same way as the sun except, of course,
that the distance from the meridian becomes the star’s hour angle
instead of local apparent time. This is readily obtained as follows:
Adding to the Greenwich mean time the sidereal time of the
preceding Greenwich mean noon (Nautical Almanac), together with
the acceleration of Greenwich mean time (Table 9 Bowditch), gives
the right ascension of the meridian. Taking the difference between
this latter quantity and the right ascension of the star, we have the
star’s hour angle, west, if the right ascension of the meridian is
greater than that of the star, and east, if contrary conditions exist.
The circum-meridian, as well as the straight meridian altitude, is
available for use of stars near the meridian below the pole, and, as
one proceeds into higher latitudes, the pole becomes more and more
elevated, offering thereby more opportunities for practicing this
phase of the problem. The only feature to be remembered in this
case is that the body is higher at the time of a circum-meridian than
when it transits, so the correction to be applied to the observed
altitude must be subtracted (-) in order to obtain the meridian
altitude.
The planets, too, are used by the ex-meridian altitude method,
but being wanderers in the heavens their right ascensions and
declinations must be determined for the Greenwich date from the
Nautical Almanac.
The amended altitude of any body is assumed to be the meridian
altitude and is used in the familiar formula z + d = latitude (see
Latitude by meridian altitude); but it must be borne in mind that the
result is not the latitude at noon but at the time of sight. If the
observation was made say 9 minutes before noon and the latitude
considered to be the position at local apparent noon as in an
ordinary meridian altitude, there would be an error of 3 miles from
the correct position for a 20-knot steamer.
Another point to be guarded against is that when taking several
altitudes and their corresponding times their mean cannot be
obtained in the ordinary way, but each altitude must be separately
reduced and the mean taken of the results.
It is again necessary to diverge from the subject to impress on
the mariner an urgent warning against anything but the most
untiring vigilance in the care of his chronometer, and the keeping of
accurate time. If this element cannot be depended upon there will
be many hours of anxiety coming to him and probably sooner or
later downright disaster. The almost universal establishment of time
signals in all good-sized sea ports of the world together with radio
time signals sent broadcast allows but little excuse for not obtaining
a good rate by the time a vessel is ready for sea. Every well-known
work on navigation deals with the subject of rating chronometers
and so no space will here be given to it. After reading this talk on
one of the most important and up-to-date observations where so
much depends upon the accuracy of the time, the reader cannot fail
to appreciate this earnest admonishment.

Polaris
The process of finding the latitude by means of Polaris is valuable,
comparatively short and the result, if the conditions are favorable, is
accurate. We will consider it first in a general way.
The imaginary line representing the earth’s axis, if extended
indefinitely, is presumed to pierce the celestial sphere at the celestial
pole, therefore for an observer standing at our north pole this
imaginary point would be exactly in the zenith and hence 90° from
the horizon just as the pole is 90° from the equator, these amounts
evidently bear a relation to one another. Should the person at the
pole leave his frigid surroundings and proceed toward the equator,
he would note that the pole had dropped lower and lower in the
heavens, precisely in proportion to his progress southward, until at
length, when the equator (latitude 0°) was reached, the pole would
be observed to be exactly in the horizon (altitude 0°). From this it is
easy to deduce the statement that the altitude of the celestial pole is
equal to the latitude of the place of observation.
The object of this problem then is to obtain the altitude of the
celestial pole. This point, unfortunately, is marked by no star of
which a direct altitude may be observed to aid the navigator in
reaching this desired result. There is, however, a star of the 2d
magnitude, called Polaris (because of its proximity to the pole) with
a polar distance of only 1¼°. As all fixed stars are apparently
revolving in circles around the celestial pole, this star joins the grand
procession with its little radius of 1¼°.
It is plain that at no time can this star be more than the amount
of this radius (1¼°) from the pole, and when on the meridian either
above or below the pole the full amount of the radius is subtracted
from or added to the corrected altitude of the star to obtain the true
altitude of the pole. When the star is on a line passing through the
pole and parallel to the horizon at its elongations as it is called, the
altitude is then equal to the latitude, for its elevation is the same as
that of the pole.
It requires 24 hours for this star to complete the small circle of
revolution, the same time required by every star; its movement is
necessarily very slow. By computing its hour angle, we can locate its
position on this circle, and hence by applying a correction to its
altitude, subtracting or adding according to the position of the star
above or below the pole, we will obtain the altitude of the pole.
A rough estimate of the position of the pole may be secured by
noting the position of the Big Dipper, the second star in the handle,
called Mizar, is approximately in line with Polaris and the pole.
We will now proceed to show the method by which the hour
angle is obtained:
In the talk on Time, it was stated that the local (astronomical)
mean time plus the right ascension of the mean sun is equal to the
local sidereal time; and again, that the right ascension of a star plus
its hour angle equals local sidereal time. With these facts as a basis,
the formula for latitude by Polaris given in the Nautical Almanac will
be followed in explanation.
Fig. 6.
The time of observation must be noted by chronometer and
converted into local (astronomical) mean time; this must be
corrected by Table III (Nautical Almanac) in order to change this
solar interval into a sidereal time interval; to this converted time
must be added the Greenwich sidereal time of mean noon (page 2);
that is, the hour angle of the First Point of Aries, or what is the same
thing, the right ascension of the mean sun; to this sum must be
applied a correction for longitude, in time, taken from the foot of
page 2, N. A. The sum is the local sidereal time.
The reason for the correction of longitude is this: The difference
between the right ascension of the mean sun at noon on two
successive days is 3 m. 56 s., the same as the accumulated
difference between solar and sidereal time in 1 day. Now we take
from the Nautical Almanac this element for Greenwich mean noon,
yet the sun has since covered the distance equal to the longitude,
and during the interval required to do this, the sidereal time has
accelerated over the solar an amount which bears the same ratio to
the 3 m. 56 s., that the longitude in time bears to 24 hours. The
Nautical Almanac handles the terms of this proportion in tabular
form at the foot of page 2. It is stated that the sun has traveled
from the meridian of Greenwich to the local meridian, and it might
be suggested that at the time of observation the sun has covered
this amount plus the local hour angle or the local astronomical mean
time. This is true but the amount of local hour angle has been
previously accelerated to sidereal time by the correction to local
astronomical mean time.
With the local sidereal time enter Table I (Nautical Almanac) and
pick out the correction to be applied according to sign to the
altitude. It is probably needless to say that the observed altitude
must be corrected for index error, dip and refraction before applying
this latter correction, which converts it into latitude.
This is called the Nautical Almanac method and is sufficiently
accurate for navigational purposes, but should a greater refinement
be desired there are tables of further corrections given in the
American Ephemeris and Nautical Almanac.
It is always advantageous to get an observation of a star near
twilight or dawn, in order that a well-defined horizon may be
available; but, in taking a sight of Polaris, another important feature
is to be considered. When the star’s hour angle is at or near 6 or 18
hours, that is, near that part of its orbit cut by a line passing through
the pole and parallel to the horizon, it is rising or falling most rapidly,
with the result that a small error in time will produce a considerable
error in the hour angle, an error of 3 minutes introducing a
difference of 1´ in the latitude.
It is quite worth while, therefore, to select a time for the
observation of Polaris when this star is near either of its
culminations, its highest or lowest positions, where the time need
not be especially accurate; but by carefully noting the time it is
possible to get good results at other times when the horizon is
defined. By using the position of the star Mizar, as suggested above,
however, the navigator will be greatly aided in selecting the most
propitious time for observing Polaris.
CHAPTER VII

Azimuths and Amplitudes


Of all the navigational instruments now in practical use, there are
few, if any, that exceed the mariner’s compass in usefulness to
mankind. The part it has played in the development of the world has
been most important, and its utility is no less to-day than in the
past, for the intercourse of nations is still guided by the compass
needle. With such a responsibility depending on this instrument, it
would naturally be supposed that its indications must be very
accurate, but, on the contrary, the needle is swayed by the slightest
magnetic influence and points North only on rare occasions; and in
steel vessels only by mere chance.
The needle is drawn from true north first by the direction of the
earth’s magnetic force which is not coincident with the meridian
owing to the position of the magnetic poles. The north magnetic
pole being in the extreme northern part of Canada, all the lines of
force in the northern hemisphere converge toward this locality. The
needle when otherwise undisturbed lies in the direction of these
lines of force and takes an angle with the meridian depending on the
locality.
The amount of divergence from the true north, or variation, as it
is called, differs in different localities but is readily obtained by a
glance at the chart where each compass rose shows the amount of
variation at that place. From a magnetic course, or bearing, the true
course, or bearing, is readily found by the proper application of this
variation, which may be either easterly or westerly. The true course
is to the right of the magnetic course, when considered from the
center of the compass, in easterly variation; T. R. E.—True-Right-
Easterly. Remember these three words and the whole lesson is
learned, for if true is to the right in easterly variation it must be to
the left in westerly; and if true is to the right in easterly, the
magnetic course must be to the left of true course in easterly and to
the right in westerly. In this way the true and magnetic courses are
converted one to the other at will.
If we were to sail always in an entirely wooden ship, our compass
troubles would be very few, for the above would include every phase
of the situation. As wood is non-magnetic the compass would be
uninfluenced by outside disturbances. Wood, as a ship-building
material, having been so much displaced by iron and steel, the use
of these metals has brought many problems to solve in connection
with the deflection of the compass needle.
The effect on the compass needle of the magnetism in a vessel
and her cargo is known as deviation and is very complicated, owing
to many influences which are at work at all times giving an ever-
varying value to this element of error.
The causes of deviation and its treatment in the way of
compensating the compass are subjects much too extensive for this
little book; furthermore, they are carefully dealt with in a half dozen
of the well-known works on navigation, so we will touch only on the
every-day side of compass work.
The deviation changes with every alteration of the vessel’s head,
owing to the change in position of prominent parts of the vessel’s
hull relative to each other, to the compass, and to the terrestrial
lines of force (magnetism).
As a result of these influences on the compass needle, the
mariner has three courses to deal with. The first is the true course,
which is based on a compass whose needle points true north. The
second, the magnetic course, is taken from a compass affected by
variation alone and therefore pointing to the magnetic pole. The
third is the compass course, or that course actually shown by an
ordinary standard compass in a steel ship, affected by the error of
variation combined with the error of deviation.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like