gnatss.ops.data module#
- gnatss.ops.data.calc_lla_and_enu(all_observations: DataFrame, array_center: ArrayCenter) DataFrame#
Calculates the LLA and ENU coordinates for all observations
- Parameters:
- all_observationspd.DataFrame
The full dataset for computation
- array_centerArrayCenter
An object containing the center of the array
- Returns:
- pd.DataFrame
Modified dataset with LLA and ENU coordinates
- gnatss.ops.data.clean_tt(travel_times: DataFrame, transponder_ids: list[str], travel_times_correction: float, transducer_delay_time: float) DataFrame#
Clean travel times by doing the following steps: 1. remove any travel times that have 0 reply time 2. apply travel time correction and transducer delay time.
- Parameters:
- travel_timespd.DataFrame
The original travel times data
- transponder_idslist[str]
A list of the transponder ids that matches the order with travel_times data
- travel_times_correctionfloat
Correction to times in travel times (secs.)
- transducer_delay_timefloat
Transducer Delay Time - delay at surface transducer (secs).
- Returns:
- pd.DataFrame
The cleaned travel times data
- gnatss.ops.data.compute_harmonic_mean(config: Configuration, svdf: DataFrame | None = None)#
- gnatss.ops.data.data_loading(config_yaml: str, distance_limit: float | None = None, residual_limit: float | None = None, residual_range_limit: float | None = None, outlier_threshold: float | None = None, from_cache: bool = False, remove_outliers: bool = False, skip_parsed: bool = True, skip_posfilter: bool = False, skip_solver: bool = False)#
- gnatss.ops.data.ecef_to_enu(df: DataFrame, input_ecef_columns: list[str], output_enu_columns: list[str], array_center: ArrayCenter) DataFrame#
Calculate ENU coordinates from input ECEF coordinates
- Parameters:
- df: pd.DataFrame
The full dataset for computation
- input_ecef_columns: list[str]
Columns in the df that contain ENU coordinates
- output_enu_columns: list[str]
Columns that should be created in the df for ENU coordinates
- array_centerArrayCenter
An object containing the center of the array
- Returns:
- pd.DataFrame
Modified dataset with ECEF and ENU coordinates
- gnatss.ops.data.ensure_monotonic_increasing(all_observations: DataFrame) DataFrame#
- gnatss.ops.data.filter_tt(travel_times: DataFrame, cut_df: DataFrame, time_column: str = 'time') DataFrame#
Filter travel times data by removing the data that falls within the time range specified in the deletions file.
- Parameters:
- travel_timespd.DataFrame
The original travel times data
- cut_dfpd.DataFrame
The deletions data to be removed
- Returns:
- pd.DataFrame
The filtered travel times data
- gnatss.ops.data.get_data_inputs(all_observations: DataFrame) List#
Extracts data inputs to perform solving algorithm
- Parameters:
- all_observationspd.DataFrame
The full dataset for computation
- Returns:
- NumbaList
A list of data inputs
- gnatss.ops.data.gps_solution_exists(config) bool#
- gnatss.ops.data.preprocess_data(config, data_dict)#
- gnatss.ops.data.preprocess_travel_times(pxp_df, config: Configuration)#
- gnatss.ops.data.preprocess_tt(travel_times: DataFrame) DataFrame#
Preprocess travel times data by creating a dataframe that contains the travel times and the reply times contiguously.
- Parameters:
- travel_timespd.DataFrame
The travel times data
- Returns:
- pd.DataFrame
The preprocessed travel times data
- gnatss.ops.data.standardize_data(pos_freed_trans_twtt: DataFrame, data_precision: int = 8) DataFrame#