CS SS ER
f
a
|
|,
E
E DE EU S
- €—
UE EE EE
e ERR*** modules (ERRMSG grammar). All the
error messages related to the system have been
Stored into an "error message library" (ELB),
identified by an error code number. The ERR***
modules gather the text of these error messages
and display them according to a printing stan-
dard. The main advantage of such conception
lies in the fact that it is possible to modify such
messages with no changes in the software. Thus,
multilingual versions of the system can be imple-
mented with no additional development cost!
GeoTeX takes advantage of these subsystems as
well (see Figure 1).
4.2 Abstract data types
A data type is any of the forms that information
may adopt according to a classification criterion. The
real x FORTRAN declaration states that x is an ob-
ject whose type is real. More modern programming
languages allow for a recursive construction of new
—user defined— data types. Nevertheless, these pro-
gramming languages are still third generation ones.
Thus, for instance, the practical implementation of
the formal structure concept of observables in Sec-
tion 3 could be
photogrammetric.observation x(n),
which would define the object x as an array of n pho-
togrammetric observations. In this context, a pho-
togrammetric observation is an abstract data type.
It is possible to go further up in the abstraction
level. For example, the following sentence
observation x,
would redefine x as an observation of any type. Again
within the scope of this context, this is à polymor-
phic abstract data type. It would be possible then to
define polymorphic operators on observables which
would take different actions —i.e. procedures— de-
pending on the specific observation being processed;
photogrammetric or control point observations.*
GeoTeX has been designed following the paradigm
described above as far as allowed by the limitations
imposed by the available tools (a FORTRAN com-
piler). Nevertheless, the polymorphic concepts of ob-
servation, parameter, sensor and constraint have been
implemented using the techniques described in the
previous sections. Note that there is also a close re-
lation between polymorphic abstract data types and
the data standards used to transfer the information.
4One could add two observations of different type. In such
a case, an error condition would be returned.
660
Ideally, this abstraction process would lead to
a final polymorphic abstract data type, the net-
work —which would embody, among others, the
observation data type. Powerful polymorphic
operators on such an object could be defined,
for instance as: adjust network, print network,
transfer datum, create subnetwork, etc.
4.3 Discrete network models: the ACX dis-
crete math model
The ACX network adjustment program, which incor-
porates most of the design considerations of Section 2,
is the central component of the GeoTeX system.
There are many definitions available for networks
in the context of least squares adjustment which more
or less read it is a set of points related through obser-
vations..., but which are not definitions in any mathe-
matical sense. On the other hand, for an adjustment
the well known functional model —linear or not—
and the stochastic model may do, though the struc-
tural (or topological) information of the network does
not show up explicitely.
That the structural aspects are explicitely formu-
lated is of practical importance.
For instance, structurally seen, a distance obser-
vation between two points is equivalent to a vector
difference observation between the same two points.
Both observations have the same influence on the
numbering of unknowns in the normal equations and
in their loading sequence. For the two purposes it
is even irrelevant whether there are one or more re-
peated observations.
Another point in favor of explicite discrete mod-
els is based upon the following remark. For any-
one who has ever written an operational production-
valid adjustment program it is well known that the so
called organizational tasks represent at least 70% of
the analysis and coding effort. Many operations and
algorithms thereof are of a discrete nature:
e extraction of parameters from observations,
e generation of the network graph,
e optimal graph vertex numbering for solving the
normal equations,
e optimal numbering of the observations for the
loading sequence of the normal equations,
e generation of the elimination graph (generation
of the symbolic fill-ins),
e analysis of identification errors,
e generation of information for the sparse matrix
numerical modules,
Noa eA ©) ©) 7m“ nm
^ SS
a lm) SE
©
sté
co
Fr
ter
he
fic:
con
sof