gnatss.posfilter.posfilter module#
- gnatss.posfilter.posfilter.kalman_filtering(inspvaa_df: DataFrame, insstdeva_df: DataFrame, gps_df: DataFrame, twtt_df: DataFrame, gnss_pos_psd=3.125e-05, vel_psd=0.0025, cov_err=0.25, start_dt=0.05, full_result: bool = False) DataFrame#
Performs Kalman filtering of the GPS_GEOCENTRIC and GPS_COV_DIAG fields
- Parameters:
- inspvaa_dfpd.DataFrame
Pandas Dataframe containing Antenna enu directions Novatel Level-1 data
- insstdeva_dfpd.DataFrame
Pandas Dataframe containing Antenna enu directions std deviation Novatel Level-1 data
- gps_dfpd.DataFrame
Pandas Dataframe containing GPS solutions Novatel Level-1 data
- twtt_dfpd.DataFrame
Pandas Dataframe containing two way travel time data
- gnss_pos_psdfloat
GNSS Position Estimation Noise for creating Q Matrix
- vel_psdfloat
Velocity Estimation Noise for creating Q Matrix
- cov_errfloat
Initial state error covariance values for creating P Matrix
- start_dtfloat
Initial time step for creating F Matrix
- full_resultbool
If True, returns the full result of the Kalman filter simulation rather than just data from the two way travel time timestamps
- Returns:
- pos_twttpd.DataFrame
Pandas Dataframe containing the resulting antenna positions, covariance, and standard deviation
- gnatss.posfilter.posfilter.rotation(pos_twtt: pd.DataFrame, cov_rph_twtt: pd.DataFrame, atd_offsets: AtdOffset | NDArray[Shape[3], Float], array_center: ArrayCenter) pd.DataFrame#
Calculate GNSS antenna eastward, northward, and upward position columns,and add to input dataframe.
- Parameters:
- pos_twttpd.DataFrame
Pandas Dataframe containing positioning data as result from the kalman filtering process
- cov_rph_twttpd.DataFrame
Pandas Dataframe containing INS RPH data, including the covariance data from the spline interpolation process
- atd_offsetsNDArray[Shape[“3”], Float]
Forward, Rightward, and Downward antenna transducer offset values
- array_centerArrayCenter
Array center base model containing Latitude, Longitude and Altitude
- Returns:
- pos_freed_trans_twttpd.DataFrame
Modified positioning data that includes rotation
- gnatss.posfilter.posfilter.spline_interpolate(inspvaa_df: DataFrame, insstdeva_df: DataFrame, twtt_df: DataFrame, full_result: bool = False) DataFrame#
Interpolate the INS RPH data and the covariance data to the travel times data
- Parameters:
- inspvaa_dfDataFrame
Pandas Dataframe containing Antenna enu directions Novatel Level-1 data
- insstdeva_dfDataFrame
Pandas Dataframe containing Antenna enu directions std deviation Novatel Level-1 data
- twtt_dfpd.DataFrame
The travel times data
- full_resultbool
TODO: Add description
- Returns:
- cov_rph_twttpd.DataFrame
The interpolated data