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, lastday_seconds: int = 0)
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
lastday_seconds (int, optional) – last time point (seconds of the day) should really be read from the file - if you don’t provide this the fit blows up
- gnssrefl.invsnr_cl.main()
- gnssrefl.invsnr_cl.parse_arguments()