The geodesic Reference Manual

Next: , Previous: , Up: (dir)   [Contents][Index]

The geodesic Reference Manual

This is the geodesic Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Thu Sep 15 04:53:34 2022 GMT+0.

Table of Contents


1 Introduction

* geodesic

  A Common lisp library to solve direct and inverse geodesic
  problem. It implements Charles Karney's method from this paper:
  https://doi.org/10.1007/s00190-012-0578-z

#+BEGIN_SRC lisp
  ;; Two examples from the paper
  (geodesic:direct (geodesic:radians 40) (geodesic:radians 30) 1e7)
   -> 0.7294308683855781d0
   ->  2.405847362846288d0
   ->  2.6021143369561823d0

  (geodesic:inverse (geodesic:radians -30) (geodesic:radians 29.9) (geodesic:radians 179.8))
   -> 1.9989832879260477d7
   -> 0.3160648483358468d0
   -> 2.825854840938509d0
#+END_SRC


2 Systems

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


Previous: , Up: Systems   [Contents][Index]

2.1 geodesic

Library for geodesic calculations.

Author

Manuel Giraud <manuel@ledu-giraud.fr>

License

ISC

Source

geodesic.asd.

Child Components

3 Files

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


Previous: , Up: Files   [Contents][Index]

3.1 Lisp


Next: , Previous: , Up: Lisp   [Contents][Index]

3.1.1 geodesic/geodesic.asd

Source

geodesic.asd.

Parent Component

geodesic (system).

ASDF Systems

geodesic.


3.1.2 geodesic/package.lisp

Source

geodesic.asd.

Parent Component

geodesic (system).

Packages

geodesic.


3.1.3 geodesic/util.lisp

Dependency

package.lisp (file).

Source

geodesic.asd.

Parent Component

geodesic (system).

Public Interface
Internals

3.1.4 geodesic/poly.lisp

Dependency

util.lisp (file).

Source

geodesic.asd.

Parent Component

geodesic (system).

Public Interface
Internals

Previous: , Up: Lisp   [Contents][Index]

3.1.5 geodesic/geodesic.lisp

Dependency

poly.lisp (file).

Source

geodesic.asd.

Parent Component

geodesic (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


Previous: , Up: Packages   [Contents][Index]

4.1 geodesic

Source

package.lisp.

Use List

common-lisp.

Public Interface
Internals

5 Definitions

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


Next: , Previous: , Up: Definitions   [Contents][Index]

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

geodesic.

Source

poly.lisp.

Function: degrees (angle)
Package

geodesic.

Source

util.lisp.

Function: direct (latitude azimuth distance)

LATITUDE and AZIMUTH in radians. DISTANCE in meters.

Package

geodesic.

Source

geodesic.lisp.

Function: inverse (lat1 lat2 lon12)
Package

geodesic.

Source

geodesic.lisp.

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

geodesic.

Source

util.lisp.

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

geodesic.

Source

poly.lisp.

Function: radians (angle)
Package

geodesic.

Source

util.lisp.


5.2 Internals


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.1 Special variables

Special Variable: *a*

WGS84 equatorial Earth radius in meter.

Package

geodesic.

Source

geodesic.lisp.

Special Variable: *b*
Package

geodesic.

Source

geodesic.lisp.

Special Variable: *f*

WGS84 ellipsoid flattening.

Package

geodesic.

Source

geodesic.lisp.

Special Variable: *f-a-3*

Factors for A-3.

Package

geodesic.

Source

geodesic.lisp.

Special Variable: *n*
Package

geodesic.

Source

geodesic.lisp.

Special Variable: *p-c-3*

Polynomial factors for C-3.

Package

geodesic.

Source

geodesic.lisp.

Special Variable: *square-e*
Package

geodesic.

Source

geodesic.lisp.

Special Variable: *square-e-prime*
Package

geodesic.

Source

geodesic.lisp.


Previous: , Up: Internals   [Contents][Index]

5.2.2 Ordinary functions

Function: 3rt (number)

Cubic root that handles negative numbers.

Package

geodesic.

Source

poly.lisp.

Function: a-1 (epsilon)
Package

geodesic.

Source

geodesic.lisp.

Function: a-2 (epsilon)
Package

geodesic.

Source

geodesic.lisp.

Function: ac-3 (epsilon)
Package

geodesic.

Source

geodesic.lisp.

Function: alpha-beta (alpha0 sigma)
Package

geodesic.

Source

geodesic.lisp.

Function: alpha0 (beta azimuth)
Package

geodesic.

Source

geodesic.lisp.

Function: alpha2 (alpha1 beta1 beta2)
Package

geodesic.

Source

geodesic.lisp.

Function: best-2-roots (roots)
Package

geodesic.

Source

poly.lisp.

Function: c-1 (epsilon)
Package

geodesic.

Source

geodesic.lisp.

Function: c-2 (epsilon)
Package

geodesic.

Source

geodesic.lisp.

Function: c-prime-1 (epsilon)
Package

geodesic.

Source

geodesic.lisp.

Function: delta-alpha1 (delta-l12 m12 alpha2 beta2)
Package

geodesic.

Source

geodesic.lisp.

Function: dereduce-latitude (beta)
Package

geodesic.

Source

geodesic.lisp.

Function: horner (x &rest p)

Horner’s method of P at X.

Package

geodesic.

Source

poly.lisp.

Function: i (sigma an cn)
Package

geodesic.

Source

geodesic.lisp.

Function: init-alpha1 (lat1 lat2 lon12 beta1 beta2 omega12)
Package

geodesic.

Source

geodesic.lisp.

Function: j (sigma epsilon)
Package

geodesic.

Source

geodesic.lisp.

Function: longitude (omega alpha0 i3)
Package

geodesic.

Source

geodesic.lisp.

Function: m12 (k2 sigma1 sigma2 epsilon)

Returns m12 and M12.

Package

geodesic.

Source

geodesic.lisp.

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

geodesic.

Source

geodesic.lisp.

Function: normalize (angle)

Normalize angle between -π and π.

Package

geodesic.

Source

util.lisp.

Function: normalize-azimuth (angle)

Normalize angle between 0 and π.

Package

geodesic.

Source

util.lisp.

Function: normalize-latitudes (lat1 lat2)

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

Package

geodesic.

Source

geodesic.lisp.

Function: omega (alpha0 sigma)
Package

geodesic.

Source

geodesic.lisp.

Function: omega-bar (beta1 beta2)
Package

geodesic.

Source

geodesic.lisp.

Function: plusp-and-value (string)
Package

geodesic.

Source

util.lisp.

Function: reduce-latitude (latitude)
Package

geodesic.

Source

geodesic.lisp.

Function: sigma (beta azimuth)
Package

geodesic.

Source

geodesic.lisp.

Function: sigma-tau (tau c-prime-1)
Package

geodesic.

Source

geodesic.lisp.

Function: sigma12 (beta1 beta2 omega12 z1)
Package

geodesic.

Source

geodesic.lisp.

Function: solve-triangle (alpha1 beta1 beta2)
Package

geodesic.

Source

geodesic.lisp.

Function: z1 (beta1 beta2 omega12)
Package

geodesic.

Source

geodesic.lisp.

Function: z2 (beta1 beta2 omega12)
Package

geodesic.

Source

geodesic.lisp.


Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts


Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   3  
A   B   C   D   F   H   I   J   L   M   N   O   P   Q   R   S   Z  
Index Entry  Section

3
3rt: Private ordinary functions

A
a-1: Private ordinary functions
a-2: Private ordinary functions
ac-3: Private ordinary functions
alpha-beta: Private ordinary functions
alpha0: Private ordinary functions
alpha2: Private ordinary functions

B
best-2-roots: Private ordinary functions

C
c-1: Private ordinary functions
c-2: Private ordinary functions
c-prime-1: Private ordinary functions
cubic-roots: Public ordinary functions

D
degrees: Public ordinary functions
delta-alpha1: Private ordinary functions
dereduce-latitude: Private ordinary functions
direct: Public ordinary functions

F
Function, 3rt: Private ordinary functions
Function, a-1: Private ordinary functions
Function, a-2: Private ordinary functions
Function, ac-3: Private ordinary functions
Function, alpha-beta: Private ordinary functions
Function, alpha0: Private ordinary functions
Function, alpha2: Private ordinary functions
Function, best-2-roots: Private ordinary functions
Function, c-1: Private ordinary functions
Function, c-2: Private ordinary functions
Function, c-prime-1: Private ordinary functions
Function, cubic-roots: Public ordinary functions
Function, degrees: Public ordinary functions
Function, delta-alpha1: Private ordinary functions
Function, dereduce-latitude: Private ordinary functions
Function, direct: Public ordinary functions
Function, horner: Private ordinary functions
Function, i: Private ordinary functions
Function, init-alpha1: Private ordinary functions
Function, inverse: Public ordinary functions
Function, j: Private ordinary functions
Function, longitude: Private ordinary functions
Function, m12: Private ordinary functions
Function, nearly-antipodal-p: Private ordinary functions
Function, normalize: Private ordinary functions
Function, normalize-azimuth: Private ordinary functions
Function, normalize-latitudes: Private ordinary functions
Function, omega: Private ordinary functions
Function, omega-bar: Private ordinary functions
Function, parse-float: Public ordinary functions
Function, plusp-and-value: Private ordinary functions
Function, quartic-roots: Public ordinary functions
Function, radians: Public ordinary functions
Function, reduce-latitude: Private ordinary functions
Function, sigma: Private ordinary functions
Function, sigma-tau: Private ordinary functions
Function, sigma12: Private ordinary functions
Function, solve-triangle: Private ordinary functions
Function, z1: Private ordinary functions
Function, z2: Private ordinary functions

H
horner: Private ordinary functions

I
i: Private ordinary functions
init-alpha1: Private ordinary functions
inverse: Public ordinary functions

J
j: Private ordinary functions

L
longitude: Private ordinary functions

M
m12: Private ordinary functions

N
nearly-antipodal-p: Private ordinary functions
normalize: Private ordinary functions
normalize-azimuth: Private ordinary functions
normalize-latitudes: Private ordinary functions

O
omega: Private ordinary functions
omega-bar: Private ordinary functions

P
parse-float: Public ordinary functions
plusp-and-value: Private ordinary functions

Q
quartic-roots: Public ordinary functions

R
radians: Public ordinary functions
reduce-latitude: Private ordinary functions

S
sigma: Private ordinary functions
sigma-tau: Private ordinary functions
sigma12: Private ordinary functions
solve-triangle: Private ordinary functions

Z
z1: Private ordinary functions
z2: Private ordinary functions

Jump to:   3  
A   B   C   D   F   H   I   J   L   M   N   O   P   Q   R   S   Z