Package pygeodesy :: Module triaxials |
[frames] | no frames]

# Module triaxials

Triaxal ellipsoid classes ordered Triaxial and unordered Triaxial_ and Jacobi conformal projections JacobiConformal and JacobiConformalSpherical, transcoded from Charles Karney's C++ class JacobiConformal to pure Python and miscellaneous classes BetaOmega2Tuple, BetaOmega3Tuple, Jacobi2Tuple and TriaxialError.

Copyright (C) Charles Karney (2008-2023). For more information, see the GeographicLib documentation.

See Also: Geodesics on a triaxial ellipsoid and Triaxial coordinate systems and their geometrical interpretation.

Version: 24.08.26

Classes
| BetaOmega2Tuple 2-Tuple `(beta, omega)` with ellipsoidal lat- and longitude `beta` and `omega` both in Radians (or Degrees).
| BetaOmega3Tuple 3-Tuple `(beta, omega, height)` with ellipsoidal lat- and longitude `beta` and `omega` both in Radians (or Degrees) and the `height`, rather the (signed) distance to the triaxial's surface (measured along the radial line to the triaxial's center) in `meter`, conventionally.
| Jacobi2Tuple 2-Tuple `(x, y)` with a Jacobi Conformal `x` and `y` projection, both in Radians (or Degrees).
| Triaxial_ Unordered triaxial ellipsoid and base class.
| Triaxial Ordered triaxial ellipsoid.
| JacobiConformal This is a conformal projection of a triaxial ellipsoid to a plane in which the `X` and `Y` grid lines are straight.
| JacobiConformalSpherical An alternate, spherical JacobiConformal projection.
| TriaxialError Raised for Triaxial issues.

Functions
hartzell4(pov, los=False, tri_biax=Datum(name='WGS84', ellipsoid=Ellipsoids.WGS84, transform=Tran`...`, **name) Compute the intersection of a tri-/biaxial ellipsoid and a Line-Of-Sight from a Point-Of-View outside. |

Variables
| __all__ = `_ALL_LAZY.triaxials`
| Triaxials = `` Some pre-defined Triaxials, all lazily instantiated.
| Triaxials.Amalthea Triaxial(name='Amalthea', a=125000, b=73000, c=64000, e2ab=0.658944, e2bc=0.231375493, e2ac=0.737856, volume=2446253479595252, area=93239507787.490371704, area_p=93212299402.670425415)
| Triaxials.Ariel Triaxial(name='Ariel', a=581100, b=577900, c=577700, e2ab=0.01098327, e2bc=0.000692042, e2ac=0.011667711, volume=812633172614203904, area=4211301462766.580078125, area_p=4211301574065.829589844)
| Triaxials.Earth Triaxial(name='Earth', a=6378173.435, b=6378103.9, c=6356754.399999999, e2ab=0.000021804, e2bc=0.006683418, e2ac=0.006705077, volume=1083208241574987694080, area=510065911057441.0625, area_p=510065915922713.6875)
| Triaxials.Enceladus Triaxial(name='Enceladus', a=256600, b=251400, c=248300, e2ab=0.040119337, e2bc=0.024509841, e2ac=0.06364586, volume=67094551514082248, area=798618496278.596679688, area_p=798619018175.109863281)
| Triaxials.Europa Triaxial(name='Europa', a=1564130, b=1561230, c=1560930, e2ab=0.003704694, e2bc=0.000384275, e2ac=0.004087546, volume=15966575194402123776, area=30663773697323.51953125, area_p=30663773794562.45703125)
| Triaxials.Io Triaxial(name='Io', a=1829400, b=1819300, c=1815700, e2ab=0.011011391, e2bc=0.003953651, e2ac=0.014921506, volume=25313121117889765376, area=41691875849096.7421875, area_p=41691877397441.2109375)
| Triaxials.Mars Triaxial(name='Mars', a=3394600, b=3393300, c=3376300, e2ab=0.000765776, e2bc=0.009994646, e2ac=0.010752768, volume=162907283585817247744, area=144249140795107.4375, area_p=144249144150662.15625)
| Triaxials.Mimas Triaxial(name='Mimas', a=207400, b=196800, c=190600, e2ab=0.09960581, e2bc=0.062015624, e2ac=0.155444317, volume=32587072869017956, area=493855762247.691894531, area_p=493857714107.9375)
| Triaxials.Miranda Triaxial(name='Miranda', a=240400, b=234200, c=232900, e2ab=0.050915557, e2bc=0.011070811, e2ac=0.061422691, volume=54926187094835456, area=698880863325.756958008, area_p=698881306767.950317383)
| Triaxials.Moon Triaxial(name='Moon', a=1735550, b=1735324, c=1734898, e2ab=0.000260419, e2bc=0.000490914, e2ac=0.000751206, volume=21886698675223740416, area=37838824729886.09375, area_p=37838824733332.2265625)
| Triaxials.Tethys Triaxial(name='Tethys', a=535600, b=528200, c=525800, e2ab=0.027441672, e2bc=0.009066821, e2ac=0.036259685, volume=623086233855821440, area=3528073490771.394042969, area_p=3528074261832.738769531)
| Triaxials.WGS84_35 Triaxial(name='WGS84_35', a=6378172, b=6378102, c=6356752.314245179, e2ab=0.00002195, e2bc=0.006683478, e2ac=0.006705281, volume=1083207319768789942272, area=510065621722018.125, area_p=510065626587483.3125)

Function Details

### hartzell4 (pov, los=False, tri_biax=Datum(name='WGS84', ellipsoid=Ellipsoids.WGS84, transform=Tran`...`, **name) |
Compute the intersection of a tri-/biaxial ellipsoid and a Line-Of-Sight from a Point-Of-View outside. Arguments: `pov` - Point-Of-View outside the tri-/biaxial (`Cartesian`, Ecef9Tuple `LatLon` or Vector3d). `los` - Line-Of-Sight, direction to the tri-/biaxial (Los, Vector3d), or `True` for the normal, perpendicular, plumb to the surface of the tri-/biaxial or `False` or `None` to point to its center. `tri_biax` - A triaxial (Triaxial, Triaxial_, JacobiConformal or JacobiConformalSpherical) or biaxial ellipsoid (Datum, Ellipsoid, Ellipsoid2, a_f2Tuple) or spherical earth radius (`scalar`, conventionally in `meter`). `name` - Optional name (`str`), overriding `name="hartzell4"`. Returns: Vector4Tuple`(x, y, z, h)` on the tri-/biaxial's surface, with `h` the distance from `pov` to `(x, y, z)` along the `los`, all in `meter`, conventionally. Raises: `TriaxialError` - Invalid `pov` or `pov` inside the tri-/biaxial or invalid `los` or `los` points outside or away from the tri-/biaxial. `TypeError` - Invalid `tri_biax`, `ellipsoid` or `datum`. See Also: Class pygeodesy3.Los, functions pygeodesy.tyr3d and pygeodesy.hartzell and lookAtSpheroid and "Satellite Line-of-Sight Intersection with Earth".