Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EQC projection doc #412

Closed
wants to merge 3 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
20 changes: 20 additions & 0 deletions docs/source/projections/eqc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,23 @@ Equidistant Cylindrical (Plate Caree)
:scale: 50%
:alt: Equidistant Cylindrical (Plate Caree)

The simplist of all projections. Standard parallels (0° when omitted) may be specified that determine latitude of true scale (k=h=1).

.. math::

x = \lambda \cos \phi_{ts}

.. math::

y = \phi - \phi_0

Reverse operation :

.. math::

\lambda = x / cos \phi_{ts}

.. math::

\phi = y + \phi_0

84 changes: 84 additions & 0 deletions docs/source/projections/merc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,87 @@ Mercator
:scale: 50%
:alt: Mercator

Scaling may be specified by either the latitude of true scale (:math:`\phi_{ts}`) or setting :math:`k_0` with :math:`+k=` or :math:`+k_0=`.

The spherical form :

.. math::

x = k_0 \lambda

.. math::

y = k_0 * \ln( \tan(\pi/4 + \phi/2))

.. math::

k_0 = \cos(\phi_{ts})

The spherical form's reverse operation :

.. math::

\lambda = x/k_0

.. math::

\phi = \pi/2 - 2 \arctan(e^{-y/k_0})

.. math::

k_0 = \cos(\phi_{ts})


The elliptical form :

.. math::

x = k_0 \lambda

.. math::

y = k_0 \ln(t(\phi))

.. math::

k_0 = m(\phi_{ts})

The elliptical form's reverse operation :

.. math::

\lambda = x / k_0

.. math::

\phi = t^{-1} (e^{-y/k_0})

where :math:`t()` is the isometric latitude kernel function :

.. math::

t = \tan(\pi/4 + \phi/2) ( \frac{1 - e \sin \phi}{1 + e \sin \phi})^{e/2}

and the inverse of isometric latitude need to be iteratively solve for \phi_+ until a sufficiently small difference between evaluations occurs :

.. math::

\phi_+ = \pi/2 - 2 \arctan(t(\frac{1 - e \sin \phi}{1+e \sin \phi})^{e/2})

.. math::

t = e^{-\tau}

with an initial value of :

.. math::

\phi = \pi / 2 - 2 \arctan(t)

and :math:`m(\phi)` is the parallel radius at latitude :math:`\phi` :

.. math::

m = N \cos \phi = \frac{a cos \phi}{\sqrt{1-e^2\sin^2 \phi}}

where N is the radius of curvature of the ellipse perpendicular to the plane of the meridian. A unit major axis(a) is used.