gnssr4water.fresnel.geod module#

This code contains usefull functions for geodesic calculs. @author: Lubin Roineau, ENSG-Geomatics (internship at UT-ITC Enschede), Aug 26, 2022

gnssr4water.fresnel.geod.cart2geo(X, Y, Z)#

This function transform cartesian coordinates to geographical coordinates (WGS84).

Parameters:
  • X (float) – cartesian coordinates.

  • Y (float) – cartesian coordinates.

  • Z (float) – cartesian coordinates.

Returns:

  • lat,lon (float) – location of latitude and longitudee in degrees.

  • h (meters) – ellipsoïdal height.

gnssr4water.fresnel.geod.elevazim(df_sp3, lon, lat, h)#

This function takes the coordinates given in a sp3 file and gives the elevation and azimut of the satellite seen from the receiver. Only visible satellites are returned.

Parameters:
  • df_sp3 (DataFrame) – sp3 file.

  • lon (float) – Longitude and latitude of receivers in degrees.

  • lat (float) – Longitude and latitude of receivers in degrees.

  • h (float) – Heigth of the receiver in meters.

Returns:

df – Elevation and azimuth of visible satellites in degrees.

Return type:

DataFrame

gnssr4water.fresnel.geod.geo2cart(lon, lat, h)#

Transform geographical coordinates (WGS84) to cartesian coordinates (WGS84).

Parameters:
  • lat (float) – location of latitude and longitudee in degrees.

  • lon (float) – location of latitude and longitudee in degrees.

  • h (meters) – ellipsoïdal height.

Returns:

X,Y,Z – cartesian coordinates.

Return type:

float

gnssr4water.fresnel.geod.mirrorMat(axis)#

Constructs a transformation axis which reverses the coordinates of a given axis.

Parameters:

axis (int) – Either 0,1,2 for x,y,z respectively.

Returns:

mat – A diagonal numpy matrix.

Return type:

np.array

gnssr4water.fresnel.geod.rotMat(axis, angle)#

Constructs a transformation axis which rotates around a given axis by an angle

Parameters:
  • axis (int) – Either 0,1,2 for x,y,z respectively.

  • angle (float) – angle in radians.

Returns:

mat – A diagonal numpy matrix.

Return type:

np.array