World location in geodetic earth coordinates (latitude, longitude, and altitude).
WGS-84 is used to define a spherical earth system that approximates the earth's radius of curvature across the area of operations. Higher order geoid schemes (such as EGM-96) are assumed to have minimal impact on the local radius of curvature.
The WGS-84 latitude is defined by the angle made between the normal vector on the earth's reference ellipse and the equatorial plane. When traced back to the axis of rotation, this surface normal also passes through the center of curvature.
At the equator, the earth's radius of curvature is equal to the WGS-84 semi-major axis value of 6378137.0 meters. As you approach the poles, the radius of curvature gets larger (the earth get flatter) even though the actual radius of the earth gets smaller. The center of curvature, which is also the center of this model's spherical earth coordinate system, lies on the axis of rotation on the opposite side of the equatorial plane from the area of operations.
wposition | ( | size_t | rows = 1 , |
|
size_t | cols = 1 , |
|||
double | latitude = 0.0 , |
|||
double | longitude = 0.0 , |
|||
double | altitude = 0.0 | |||
) |
Constructs a matrix of wpositions.
Initializes each wposition to the surface of the earth at a latitude/longitude of (0,0).
rows | Number of rows | |
cols | Number of columns | |
latitude | Initial latitude | |
longitude | Initial longitude | |
altitude | Initial altitude |
Initializes each wposition to the center of the earth.
wposition | ( | const vector_expression< E1 > & | latitude, | |
const vector_expression< E2 > & | longitude, | |||
double | altitude = 0.0 | |||
) | [inline] |
Constructs a mesh of lat/long wpositions.
Each row of the mesh corresponds to a single latitude from the input list. Each column of the mesh corresponds to a single longitude from the input list. A common altitude is copied to every point in the mesh.
latitude | List of latitudes | |
longitude | List of longitudes | |
altitude | Initial altitude |
void altitude | ( | size_t | row, | |
size_t | col, | |||
double | altitude | |||
) | [inline] |
Defines a single altitude above the mean sea level.
Acts as a convenient transformation of the "Rho" property.
row | Row index of the element to access. | |
col | Column index of the element to access. | |
altitude | Altitude in meters. |
double altitude | ( | size_t | row, | |
size_t | col | |||
) | const [inline] |
Retrieves ia single altitude above the mean sea level.
Acts as a convenient transformation of the "Rho" property.
row | Row index of the element to access. | |
col | Column index of the element to access. |
void altitude | ( | const matrix_expression< E > & | altitude, | |
bool | no_alias = true | |||
) | [inline] |
Defines the altitude above the mean sea level.
Acts as a convenient transformation of the "Rho" property.
altitude | Altitude in meters. | |
no_alias | Use uBLAS noalias() assignment speed-up if true. |
matrix<double> altitude | ( | ) | const [inline] |
Retrieves the altitude above the mean sea level.
Acts as a convenient transformation of the "Rho" property.
void compute_earth_radius | ( | double | latitude | ) | [static] |
Compute the average radius of curvature as a combination of the meridonal radius (rm) and the prime vertical radius (rv).
Compute the radius of the prime vertical using the WGS-84 formula.
Uses WGS-84 parameters for the semi-major axis and flatting of the Earth.
a = 6378137.0 f = 1 / 298.257223563 e^2 = f ( 2 - f ) w^2 = 1 - e^2 sin^2(latitude) rm = a * (1-e^2) / (w*w*w) ; rv = a / w R = sqrt( rm rv )
Results are stored in the earth_radius static variable.
latitude | Latitude component in degrees. |
void latitude | ( | size_t | row, | |
size_t | col, | |||
double | latitude | |||
) | [inline] |
Defines a single latitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "Theta" property.
row | Row index of the element to access. | |
col | Column index of the element to access. | |
latitude | Latitude component in degrees. |
double latitude | ( | size_t | row, | |
size_t | col | |||
) | const [inline] |
Retrieves a single latitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "Theta" property.
row | Row index of the element to access. | |
col | Column index of the element to access. |
void latitude | ( | const matrix_expression< E > & | latitude, | |
bool | no_alias = true | |||
) | [inline] |
Defines the latitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "Theta" property.
latitude | Latitude component in degrees. | |
no_alias | Use uBLAS noalias() assignment speed-up if true. |
matrix<double> latitude | ( | ) | const [inline] |
Retrieves the latitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "Theta" property.
void longitude | ( | size_t | row, | |
size_t | col, | |||
double | longitude | |||
) | [inline] |
Defines a single longitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "theta" property.
row | Row index of the element to access. | |
col | Column index of the element to access. | |
longitude | Longitude component in degrees. |
double longitude | ( | size_t | row, | |
size_t | col | |||
) | const [inline] |
Retrieves a single longitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "theta" property.
row | Row index of the element to access. | |
col | Column index of the element to access. |
void longitude | ( | const matrix_expression< E > & | longitude, | |
bool | no_alias = true | |||
) | [inline] |
Defines the longitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "theta" property.
longitude | Longitude component in degrees. | |
no_alias | Use uBLAS noalias() assignment speed-up if true. |
matrix<double> longitude | ( | ) | const [inline] |
Retrieves the longitude component of geodetic earth coordinates.
Acts as a convenient transformation of the "theta" property.
double earth_radius = 6371000.0 [static] |
Radius of curvature, FAI standard for aviation records.