Classes | Functions
stupid_filter.h File Reference
#include "common.h"
#include "constants.h"
#include "single_diff.h"
Include dependency graph for stupid_filter.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  stupid_filter_state_t

Functions

void amb_from_baseline (u8 num_sats, double *DE, double *dd_meas, double b[3], s32 *N)
void init_stupid_filter (stupid_filter_state_t *s, u8 num_sats, sdiff_t *sdiffs, double *dd_measurements, double b[3], double ref_ecef[3])
void lesq_solution (u8 num_dds, double *dd_meas, s32 *N, double *DE, double b[3], double *resid)
void rebase_stupid_filter (stupid_filter_state_t *s, u8 num_sats, u8 *old_prns, u8 *new_prns)
void update_sats_stupid_filter (stupid_filter_state_t *s, u8 num_old, u8 *old_prns, u8 num_new, sdiff_t *sdiffs, double *dd_measurements, double ref_ecef[3])
void update_stupid_filter (stupid_filter_state_t *s, u8 num_sats, sdiff_t *sdiffs, double *dd_measurements, double b[3], double ref_ecef[3])

Function Documentation

void amb_from_baseline ( u8  num_sats,
double *  DE,
double *  dd_meas,
double  b[3],
s32 N 
)

Estimate the integer ambiguity vector from a double difference measurement and a given baseline.

Given the double difference carrier phase measurement equation:

\[ \Delta \nabla \phi_i = N_i + \frac{1}{\lambda} (\mathbf{e}_i - \mathbf{e}_r) \cdot \mathbf{b} + \epsilon \]

where $ \Delta \nabla \phi_i $ is the double differenced carrier phase between satellite $i$ and reference satellite $r$, $N_i \in \mathbb{R}$ is the corresponding integer ambiguity, $\mathbf{e}_i$ is the unit vector to the $i$th satellite and $\mathbf{b}$ is the baseline vector between the reover and reference station.

We can estimate $N_i$ given the baseline $\mathbf{b}$ as follows:

\[ \tilde{N_i} = \mathrm{round}\left(\Delta \nabla \phi_i - \frac{1}{\lambda} [\mathbf{DE} \cdot \mathbf{b}]_i + \epsilon\right) \]

where the $\mathbf{DE}$ matrix is defined as:

\[ \mathbf{DE}_i = \mathbf{e}_i - \mathbf{e}_r \]

Parameters:
num_satsNumber of satellites used
DEDouble differenced matrix of unit vectors to the satellites
dd_measDouble differenced carrier phase measurements in cycles, length `num_sats - 1`
bBaseline vector in meters
NVector where integer ambiguity estimate will be stored

Definition at line 54 of file stupid_filter.c.

void init_stupid_filter ( stupid_filter_state_t s,
u8  num_sats,
sdiff_t sdiffs,
double *  dd_measurements,
double  b[3],
double  ref_ecef[3] 
)

Definition at line 80 of file stupid_filter.c.

void lesq_solution ( u8  num_dds,
double *  dd_meas,
s32 N,
double *  DE,
double  b[3],
double *  resid 
)

Definition at line 175 of file stupid_filter.c.

void rebase_stupid_filter ( stupid_filter_state_t s,
u8  num_sats,
u8 old_prns,
u8 new_prns 
)

Definition at line 113 of file stupid_filter.c.

void update_sats_stupid_filter ( stupid_filter_state_t s,
u8  num_old,
u8 old_prns,
u8  num_new,
sdiff_t sdiffs,
double *  dd_measurements,
double  ref_ecef[3] 
)

Definition at line 141 of file stupid_filter.c.

void update_stupid_filter ( stupid_filter_state_t s,
u8  num_sats,
sdiff_t sdiffs,
double *  dd_measurements,
double  b[3],
double  ref_ecef[3] 
)

Definition at line 229 of file stupid_filter.c.



swiftnav
Author(s):
autogenerated on Sat Jun 8 2019 18:56:57