#include <clapack.h>#include <inttypes.h>#include <cblas.h>#include <stdio.h>#include <string.h>#include "ambiguity_test.h"#include "common.h"#include "constants.h"#include "linear_algebra.h"#include "single_diff.h"#include "amb_kf.h"#include "lambda.h"
Go to the source code of this file.
Classes | |
| struct | fold_contains_t |
| struct | fold_mle_t |
| struct | generate_hypothesis_state_t |
| struct | hyp_filter_t |
| struct | intersection_ndxs_t |
| struct | rebase_prns_t |
| struct | recorrelation_params_t |
Defines | |
| #define | DEBUG_AMBIGUITY_TEST 0 |
| #define | DECORRELATED_PHASE_BIAS_VAR 0 |
| #define | LOG_PROB_RAT_THRESHOLD -90 |
| #define | NUM_SEARCH_STDS 5 |
| #define | RAW_PHASE_BIAS_VAR 0 |
Functions | |
| static void | _check_unanimous (void *arg, element_t *elem) |
| void | add_sats (ambiguity_test_t *amb_test, u8 ref_prn, u32 num_added_dds, u8 *added_prns, s32 *lower_bounds, s32 *upper_bounds, s32 *Z_inv) |
| u8 | ambiguity_iar_can_solve (ambiguity_test_t *amb_test) |
| u8 | ambiguity_sat_inclusion (ambiguity_test_t *amb_test, u8 num_dds_in_intersection, sats_management_t *float_sats, double *float_mean, double *float_cov_U, double *float_cov_D) |
| u8 | ambiguity_sat_projection (ambiguity_test_t *amb_test, u8 num_dds_in_intersection, u8 *dd_intersection_ndxs) |
| void | ambiguity_test_MLE_ambs (ambiguity_test_t *amb_test, s32 *ambs) |
| u32 | ambiguity_test_n_hypotheses (ambiguity_test_t *amb_test) |
| u8 | ambiguity_test_pool_contains (ambiguity_test_t *amb_test, double *ambs) |
| u8 | ambiguity_update_reference (ambiguity_test_t *amb_test, u8 num_sdiffs, sdiff_t *sdiffs, sdiff_t *sdiffs_with_ref_first) |
| u8 | ambiguity_update_sats (ambiguity_test_t *amb_test, u8 num_sdiffs, sdiff_t *sdiffs, sats_management_t *float_sats, double *float_mean, double *float_cov_U, double *float_cov_D) |
| void | assign_r_mean (residual_mtxs_t *res_mtxs, u8 num_dds, double *hypothesis, double *r_mean) |
| void | assign_r_vec (residual_mtxs_t *res_mtxs, u8 num_dds, double *dd_measurements, double *r_vec) |
| void | assign_residual_covariance_inverse (u8 num_dds, double *obs_cov, double *q, double *r_cov_inv) |
| void | check_unanimous_ambs (u8 num_dds, hypothesis_t *hyp, unanimous_amb_check_t *amb_check) |
| void | create_ambiguity_test (ambiguity_test_t *amb_test) |
| void | destroy_ambiguity_test (ambiguity_test_t *amb_test) |
| s8 | determine_sats_addition (ambiguity_test_t *amb_test, double *float_N_cov, u8 num_float_dds, double *float_N_mean, s32 *lower_bounds, s32 *upper_bounds, u8 *num_dds_to_add, s32 *Z_inv) |
| s8 | filter_all (void *arg, element_t *elem) |
| s8 | filter_and_renormalize (void *arg, element_t *elem) |
| u8 | find_indices_of_intersection_sats (ambiguity_test_t *amb_test, u8 num_sdiffs, sdiff_t *sdiffs_with_ref_first, u8 *intersection_ndxs) |
| u32 | float_to_decor (ambiguity_test_t *amb_test, double *addible_float_cov, u8 num_addible_dds, double *addible_float_mean, u8 num_dds_to_add, s32 *lower_bounds, s32 *upper_bounds, double *Z) |
| void | fold_contains (void *x, element_t *elem) |
| void | fold_mle (void *x, element_t *elem) |
| s8 | generate_next_hypothesis (void *x_, u32 n) |
| double | get_quadratic_term (residual_mtxs_t *res_mtxs, u8 num_dds, double *hypothesis, double *r_vec) |
| s8 | get_single_hypothesis (ambiguity_test_t *amb_test, s32 *hyp_N) |
| void | hypothesis_prod (element_t *new_, void *x_, u32 n, element_t *elem_) |
| void | init_ambiguity_test (ambiguity_test_t *amb_test, u8 state_dim, u8 *float_prns, sdiff_t *sdiffs, double *float_mean, double *float_cov, double *DE_mtx, double *obs_cov) |
| void | init_residual_matrices (residual_mtxs_t *res_mtxs, u8 num_dds, double *DE_mtx, double *obs_cov) |
| bool | is_prn_set (u8 len, u8 *prns) |
| s8 | make_ambiguity_dd_measurements_and_sdiffs (ambiguity_test_t *amb_test, u8 num_sdiffs, sdiff_t *sdiffs, double *ambiguity_dd_measurements, sdiff_t *amb_sdiffs) |
| s8 | make_ambiguity_resolved_dd_measurements_and_sdiffs (ambiguity_test_t *amb_test, u8 num_sdiffs, sdiff_t *sdiffs, double *ambiguity_dd_measurements, sdiff_t *amb_sdiffs) |
| s8 | make_dd_measurements_and_sdiffs (u8 ref_prn, u8 *non_ref_prns, u8 num_dds, u8 num_sdiffs, sdiff_t *sdiffs, double *ambiguity_dd_measurements, sdiff_t *amb_sdiffs) |
| void | print_double_mtx (double *m, u32 _r, u32 _c) |
| void | print_hyp (void *arg, element_t *elem) |
| void | print_pearson_mtx (double *m, u32 dim) |
| void | print_s32_gemv (u32 m, u32 n, s32 *M, s32 *v) |
| void | print_s32_mtx (u32 m, u32 n, s32 *mat) |
| void | print_s32_mtx_diff (u32 m, u32 n, s32 *mat1, s32 *mat2) |
| void | projection_aggregator (element_t *new_, void *x_, u32 n, element_t *elem_) |
| s32 | projection_comparator (void *arg, element_t *a, element_t *b) |
| void | rebase_hypothesis (void *arg, element_t *elem) |
| void | recorrelate_added_sats (void *arg, element_t *elem_) |
| void | reset_ambiguity_test (ambiguity_test_t *amb_test) |
| s8 | sats_match (ambiguity_test_t *amb_test, u8 num_sdiffs, sdiff_t *sdiffs) |
| void | test_ambiguities (ambiguity_test_t *amb_test, double *dd_measurements) |
| void | update_ambiguity_test (double ref_ecef[3], double phase_var, double code_var, ambiguity_test_t *amb_test, u8 state_dim, sdiff_t *sdiffs, u8 changed_sats) |
| void | update_and_get_max_ll (void *x_, element_t *elem) |
| void | update_unanimous_ambiguities (ambiguity_test_t *amb_test) |
| #define DEBUG_AMBIGUITY_TEST 0 |
Definition at line 31 of file ambiguity_test.c.
| #define DECORRELATED_PHASE_BIAS_VAR 0 |
Definition at line 27 of file ambiguity_test.c.
| #define LOG_PROB_RAT_THRESHOLD -90 |
Definition at line 29 of file ambiguity_test.c.
| #define NUM_SEARCH_STDS 5 |
Definition at line 28 of file ambiguity_test.c.
| #define RAW_PHASE_BIAS_VAR 0 |
Definition at line 26 of file ambiguity_test.c.