GeoVectorENU

GeoVectorENU[loc{ve,vn}]

represents a horizontal two-dimensional vector of components ve and vn in an orthonormal frame tangent to the Earth at geo location loc.

GeoVectorENU[loc{ve,vn,vu}]

represents a three-dimensional vector of horizontal components ve and vn, and vertical component vu at geo location loc.

GeoVectorENU[{loc1,loc2,}{vec1,vec2,}]

represents a collection of vectors veci at respective geo locations loci.

GeoVectorENU[{loc1vec1,loc2vec2,}]

represents the same collection of vectors.

GeoVectorENU[vec]

represents a geo vector whose associated location has been implicitly specified.

Details

  • GeoVectorENU[] can represent any vectorial magnitude on the surface of the Earth or any other celestial globe, like wind speed, magnetic field, scalar gradients, etc.
  • GeoVectorENU describes data using an orthonormal frame tangent to the reference ellipsoid at the given location.
  • In GeoVectorENU[locvec], the components of the vector vec can be quantities, but their units must be compatible.
  • In GeoVectorENU[locvec], the location loc can be given as a {lat,lon} pair in degrees, a geo Entity object or any geo location object with head GeoPosition or similar.
  • GeoVectorENU[GeoVector[]] converts a vector in GeoVector form to GeoVectorENU form, and similarly for GeoVectorXYZ and GeoGridVector objects.
  • GeoVectorENU[][prop] gives the specified property of a geo vector.
  • Possible properties include:
  • "Count"number of vectors in the GeoVectorENU object
    "Data"first argument of the GeoVectorENU object
    "Depth"vector depth: 0 for a single vector, 1 for a list of them,
    "Location"location data of the GeoVectorENU object
    "LocationDimension"number of coordinates for each position
    "LocationPackingType"Integer or Real if positions are packed; None otherwise
    "Vector"vector data of the GeoVectorENU object
    "VectorDimension"number of components for each vector
    "VectorPackingType"Integer or Real if vectors are packed; None otherwise

Examples

open allclose all

Basic Examples  (1)

Get a 3D GeoVectorENU object describing the magnetic field at your geo location:

Place a dart with such horizontal direction in a local map of your area and compare with local meridians:

To see the deviation angle, convert to polar GeoVector form:

Show the direction in a world map with a different geo projection, using a smaller dart:

Scope  (8)

Data Specification  (4)

Specify the location of a horizontal geo vector as a {lat,lon} pair in degrees:

Construct a 3D velocity vector with three identical components at Chicago:

Rewrite the location as a geo position object with any head:

Anything that can be interpreted by GeoPosition can be used as a location:

Work with horizontal 2D or 3D vectors of any unit dimension:

Geo Vector Arrays  (3)

Compute gravitational field data simultaneously for several locations:

Convert it to a single geo vector array:

Represent the relative sizes and directions of the small horizontal components:

Generate a million random Cartesian vectors at respective random locations:

Convert them into polar form:

Use GeoVectorENU to transform them back to their Cartesian form:

Check that the difference is just numerical error:

Take the locations of the capital cities of the UN countries:

Construct random vectors at those locations:

Convert to local Cartesian form:

Convert back to polar form:

Data Extraction  (1)

A horizontal velocity vector at Chicago:

Extract the location of the geo vector:

Extract the vector data from the geo vector:

Extract the locvec rule:

Extract all properties:

Properties & Relations  (1)

Download information about the geomagnetic field at your current geo location:

Request the information in the form of a GeoVectorENU object:

The original association contains those vector components, with reversed sign in the vertical direction:

Convert the horizontal components of the vector into modulus and declination angle:

Introduced in 2019
 (12.0)