# The geodesic Reference Manual

This is the geodesic Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Wed May 15 05:25:04 2024 GMT+0.

## 2 Systems

The main system appears first, followed by any subsystem dependency.

### 2.1 `geodesic`

Library for geodesic calculations.

Author

Manuel Giraud <>

ISC

Source
Child Components

## 3 Files

Files are sorted by type and then listed depth-first from the systems components trees.

### 3.1 Lisp

#### 3.1.1 `geodesic/geodesic.asd`

Source
Parent Component

`geodesic` (system).

ASDF Systems

#### 3.1.2 `geodesic/package.lisp`

Source
Parent Component

`geodesic` (system).

Packages

#### 3.1.3 `geodesic/util.lisp`

Dependency

`package.lisp` (file).

Source
Parent Component

`geodesic` (system).

Public Interface
Internals

#### 3.1.4 `geodesic/poly.lisp`

Dependency

`util.lisp` (file).

Source
Parent Component

`geodesic` (system).

Public Interface
Internals

#### 3.1.5 `geodesic/geodesic.lisp`

Dependency

`poly.lisp` (file).

Source
Parent Component

`geodesic` (system).

Public Interface
Internals

## 4 Packages

Packages are listed by definition order.

### 4.1 `geodesic`

Source
Use List

`common-lisp`.

Public Interface
Internals

## 5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.

### 5.1 Public Interface

#### 5.1.1 Ordinary functions

Function: cubic-roots (a b c d)

Roots of a·z³ + b·z² + c·z + d.

Package
Source
Function: degrees (angle)
Package
Source
Function: direct (latitude azimuth distance)

LATITUDE and AZIMUTH in radians. DISTANCE in meters.

Package
Source
Function: inverse (lat1 lat2 lon12)
Package
Source
Function: parse-float (string)

Parse float STRING into an exact rational. XXX it is really simple and the form should be "{-}[0-9]+" or "{-}[0-9]*.[0-9]+"

Package
Source
Function: quartic-roots (a b c d e)
Package
Source
Package
Source

### 5.2 Internals

#### 5.2.1 Special variables

Special Variable: *a*

WGS84 equatorial Earth radius in meter.

Package
Source
Special Variable: *b*
Package
Source
Special Variable: *f*

WGS84 ellipsoid flattening.

Package
Source
Special Variable: *f-a-3*

Factors for A-3.

Package
Source
Special Variable: *n*
Package
Source
Special Variable: *p-c-3*

Polynomial factors for C-3.

Package
Source
Special Variable: *square-e*
Package
Source
Special Variable: *square-e-prime*
Package
Source

#### 5.2.2 Ordinary functions

Function: 3rt (number)

Cubic root that handles negative numbers.

Package
Source
Function: a-1 (epsilon)
Package
Source
Function: a-2 (epsilon)
Package
Source
Function: ac-3 (epsilon)
Package
Source
Function: alpha-beta (alpha0 sigma)
Package
Source
Function: alpha0 (beta azimuth)
Package
Source
Function: alpha2 (alpha1 beta1 beta2)
Package
Source
Function: best-2-roots (roots)
Package
Source
Function: c-1 (epsilon)
Package
Source
Function: c-2 (epsilon)
Package
Source
Function: c-prime-1 (epsilon)
Package
Source
Function: delta-alpha1 (delta-l12 m12 alpha2 beta2)
Package
Source
Function: dereduce-latitude (beta)
Package
Source
Function: horner (x &rest p)

Horner’s method of P at X.

Package
Source
Function: i (sigma an cn)
Package
Source
Function: init-alpha1 (lat1 lat2 lon12 beta1 beta2 omega12)
Package
Source
Function: j (sigma epsilon)
Package
Source
Function: longitude (omega alpha0 i3)
Package
Source
Function: m12 (k2 sigma1 sigma2 epsilon)

Returns m12 and M12.

Package
Source
Function: nearly-antipodal-p (lat1 lat2 lon12)
Package
Source
Function: normalize (angle)

Normalize angle between -π and π.

Package
Source
Function: normalize-azimuth (angle)

Normalize angle between 0 and π.

Package
Source
Function: normalize-latitudes (lat1 lat2)

lat1 <= 0 and lat1 <= lat2 <= -lat1 (i.e. lat2 is closest to zero).

Package
Source
Function: omega (alpha0 sigma)
Package
Source
Function: omega-bar (beta1 beta2)
Package
Source
Function: plusp-and-value (string)
Package
Source
Function: reduce-latitude (latitude)
Package
Source
Function: sigma (beta azimuth)
Package
Source
Function: sigma-tau (tau c-prime-1)
Package
Source
Function: sigma12 (beta1 beta2 omega12 z1)
Package
Source
Function: solve-triangle (alpha1 beta1 beta2)
Package
Source
Function: z1 (beta1 beta2 omega12)
Package
Source
Function: z2 (beta1 beta2 omega12)
Package
Source