43#ifndef DRIVER_SGP41_ALGORITHM_H
44#define DRIVER_SGP41_ALGORITHM_H
65#define SGP41_ALGORITHM_TYPE_VOC (0)
66#define SGP41_ALGORITHM_TYPE_NOX (1)
171 int32_t learning_time_offset_hours, int32_t learning_time_gain_hours,
172 int32_t gating_max_duration_minutes, int32_t std_initial,
173 int32_t gain_factor);
186 int32_t *learning_time_offset_hours, int32_t *learning_time_gain_hours,
187 int32_t *gating_max_duration_minutes, int32_t *std_initial,
188 int32_t *gain_factor);
void sgp41_algorithm_set_tuning_parameters(sgp41_gas_index_algorithm_t *params, int32_t index_offset, int32_t learning_time_offset_hours, int32_t learning_time_gain_hours, int32_t gating_max_duration_minutes, int32_t std_initial, int32_t gain_factor)
algorithm set tuning parameters
void sgp41_algorithm_process(sgp41_gas_index_algorithm_t *params, int32_t sraw, int32_t *gas_index)
algorithm process
void sgp41_algorithm_get_states(const sgp41_gas_index_algorithm_t *params, float *state0, float *state1)
algorithm get states
void sgp41_algorithm_get_sampling_interval(const sgp41_gas_index_algorithm_t *params, float *sampling_interval)
algorithm get sampling interval
void sgp41_algorithm_init_with_sampling_interval(sgp41_gas_index_algorithm_t *params, int32_t algorithm_type, float sampling_interval)
algorithm init with sampling interval
struct sgp41_gas_index_algorithm_s sgp41_gas_index_algorithm_t
sgp41 gas index algorithm structure definition
void sgp41_algorithm_init(sgp41_gas_index_algorithm_t *params, int32_t algorithm_type)
algorithm init
void sgp41_algorithm_get_tuning_parameters(const sgp41_gas_index_algorithm_t *params, int32_t *index_offset, int32_t *learning_time_offset_hours, int32_t *learning_time_gain_hours, int32_t *gating_max_duration_minutes, int32_t *std_initial, int32_t *gain_factor)
algorithm get tuning parameters
void sgp41_algorithm_reset(sgp41_gas_index_algorithm_t *params)
algorithm reset
void sgp41_algorithm_set_states(sgp41_gas_index_algorithm_t *params, float state0, float state1)
algorithm set states
sgp41 gas index algorithm structure definition
float m_adaptive_lowpass_a2
float m_mean_variance_estimator_std
uint8_t m_mean_variance_estimator_initialized
float m_mean_variance_estimator_sigmoid_k
float m_mean_variance_estimator_gamma_initial_mean
float m_mean_variance_estimator_uptime_gating
uint8_t m_adaptive_lowpass_initialized
float m_mean_variance_estimator_gamma_initial_variance
float m_mean_variance_estimator_n_gamma_mean
float m_mean_variance_estimator_uptime_gamma
float m_sampling_interval
float m_init_duration_variance
float m_adaptive_lowpass_x2
float m_mox_model_sraw_std
float m_adaptive_lowpass_x3
float m_mean_variance_estimator_sraw_offset
float m_tau_variance_hours
float m_gating_max_duration_minutes
float m_init_duration_mean
float m_sigmoid_scaled_offset_default
float m_mox_model_sraw_mean
float m_adaptive_lowpass_a1
float m_mean_variance_estimator_gamma_variance
float m_sigmoid_scaled_x0
float m_mean_variance_estimator_mean
float m_mean_variance_estimator_sigmoid_x0
float m_mean_variance_estimator_n_gamma_variance
float m_mean_variance_estimator_gamma_mean
float m_adaptive_lowpass_x1
float m_mean_variance_estimator_gating_duration_minutes