gnssrefl.invsnr_cl module

gnssrefl.invsnr_cl.invsnr(station: str, year: int, doy: int, signal: str, peak2noise: float = 2.5, constel: str = None, screenstats: bool = False, dec: int = 1, polydeg: int = 2, snrfit: bool = True, plt: bool = True, doy_end: int = None, lspfigs: bool = False, snrfigs: bool = False, knot_space: int = 3, rough_in: float = 0.1, risky: bool = False, snr: int = 66, outfile_type: str = 'txt', outfile_name: str = '', outlier_limit: float = 0.5, no_dots: bool = False, delta_out: int = 300, refraction: bool = True, json_override: bool = False)

You must have run invsnr_input before using this code. This is the wrapper code that does the invsnr modelling. Note: outfile_name and outfile_type are unnecessary. Consolidate them.

In an earlier version of the code the pk2nlim was set to 4. Later the definition of the metric was changed, and this made the default setting far too stringent. In short, no arcs were being found. As of 2023/10/28 it is set to 2.5. This may not be optimal, but it is not as bad as 4. Please set it yourself as you prefer. Note: it will not the same as gnssir as this code was written separately and for a different purpose.

pktnlim is now known externally as peak2noise

Examples

invsnr sc02 2023 15 L1+L2+L5

would analyze day of year 15 and the L1, L2, and L5 signals

invsnr sc02 2023 15 ALL

would analyze day of year 15 and all signals

invsnr sc02 2023 15 L1+L2

would analyze day of year 15 and just L1 and L2

invsnr sc02 2023 15 L1+L2 -pk2nlim 2

would analyze day of year 15 and just L1 and L2, lower peak to noise limit ratio

invsnr sc02 2023 15 L1+L2 -doy_end 18

would analyze day of years 15 through 18 and L1 and L2 signals

Parameters:
  • station (str) – four character ID

  • year (int) – Year

  • doy (int) – Day of year

  • signal (str) – signal to use, L1 L2 L5 L6 L7 L1+L2 L1+L2+L5 L1+L5 ALL

  • peak2noise (float, optional) – Peak2noise ratio limit for Quality Control. Default is 2.5

  • constel (str, optional) –

    Only a single constellation. Default is gps, glonass, and galileo. value options:

    G : GPS

    E : Galileo

    R : Glonass

    C : Beidou

    withBeidou : adds Beidou to the default.

  • screenstats (bool, optional) – Whether to print out stats to the screen. Default is False

  • dec (int, optional) – SNR file decimator (seconds) Default is 1 (everything)

  • polydeg (integer, optional) – polynomial degree for direct signal removal Default is 2

  • snrfit (bool, optional) – Whether to do the inversion or not Default is True

  • plt (bool, optional) – Whether to plot to the screen or not Default is True

  • doy_end (int, optional) – day of year to end analysis. Default is None.

  • lspfigs (bool, optional) – Whether or not to make LSP plots Note: Don’t turn these on unless you really need plots because it is slow to make one per satellite arc. Default is False

  • snrfigs (boolean, optional) – Whether or not to make SNR plots Don’t turn these on unless you really need plots because it is slow to make one per satellite arc. Default is False

  • knot_space (float, optional) – Knot spacing in hours Default is 3

  • rough_in (float, optional) – Roughness Default is 0.1

  • risky (bool, optional) – Risky taker related to gaps/knot spacing Default is False

  • snr (int, optional) – SNR file ending. Default is 66

  • outfile_type (string, optional) – output file type, txt or csv Default is txt

  • outfile_name (string, optional) – output file name. Default is ??

  • outlier_limit (float, optional) – Outliers plotted. (meters) Default is 0.5

  • no_dots (bool, optional) – To plot lombscargle or not. Default is False

  • delta_out (int, optional) – Output increment, in seconds. Default is 300

  • refraction (bool, optional) – Default is True

  • json_override (bool, optional) – Override json file name Default is False

gnssrefl.invsnr_cl.main()
gnssrefl.invsnr_cl.parse_arguments()