GNSS-SDR 0.0.21
An Open Source GNSS Software Defined Receiver
Loading...
Searching...
No Matches
kf_conf.h
1/*!
2 * \file Kf_conf.h
3 * \brief Class that contains all the configuration parameters for generic tracking block based on a Kalman Filter.
4 * \author Javier Arribas, 2020. jarribas(at)cttc.es
5 *
6 * Class that contains all the configuration parameters for generic tracking block based on a DLL and a PLL.
7 *
8 * -----------------------------------------------------------------------------
9 *
10 * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
11 *
12 * GNSS-SDR is a software defined Global Navigation
13 * Satellite Systems receiver
14 *
15 * This file is part of GNSS-SDR.
16 *
17 * SPDX-License-Identifier: GPL-3.0-or-later
18 *
19 * -----------------------------------------------------------------------------
20 */
21
22#ifndef GNSS_SDR_Kf_CONF_H
23#define GNSS_SDR_Kf_CONF_H
24
26#include <cstdint>
27#include <string>
28
29class Kf_Conf
30{
31public:
32 Kf_Conf();
33 void SetFromConfiguration(const ConfigurationInterface *configuration, const std::string &role);
34
35 std::string item_type;
36 std::string dump_filename;
37 double fs_in;
38 double carrier_lock_th;
39
40 // KF statistics
41 // Measurement covariances (R)
42 double code_disc_sd_chips;
43 double carrier_disc_sd_rads;
44
45 // System covariances (Q)
46 double code_phase_sd_chips;
47 double carrier_phase_sd_rad;
48 double carrier_freq_sd_hz;
49 double carrier_freq_rate_sd_hz_s;
50
51 // initial Kalman covariance matrix (P)
52 double init_code_phase_sd_chips;
53 double init_carrier_phase_sd_rad;
54 double init_carrier_freq_sd_hz;
55 double init_carrier_freq_rate_sd_hz_s;
56
57 float early_late_space_chips;
58 float very_early_late_space_chips;
59 float early_late_space_narrow_chips;
60 float very_early_late_space_narrow_chips;
61 float slope;
62 float spc;
63 float y_intercept;
64 float cn0_smoother_alpha;
65 float carrier_lock_test_smoother_alpha;
66 uint32_t pull_in_time_s;
67 uint32_t bit_synchronization_time_limit_s;
68 uint32_t vector_length;
69 uint32_t smoother_length;
70 int32_t extend_correlation_symbols;
71 int32_t cn0_samples;
72 int32_t cn0_smoother_samples;
73 int32_t carrier_lock_test_smoother_samples;
74 int32_t cn0_min;
75 int32_t max_code_lock_fail;
76 int32_t max_carrier_lock_fail;
77 char signal[3]{};
78 char system;
79 bool track_pilot;
80 bool enable_doppler_correction;
81 bool high_dyn;
82 bool dump;
83 bool dump_mat;
84};
85
86#endif
This abstract class represents an interface to configuration parameters.
This class represents an interface to configuration parameters.