27 lines
679 B
C++
27 lines
679 B
C++
//
|
|
// Created by baiguwen on 2022/4/24.
|
|
//
|
|
|
|
#ifndef FAULT_SIMULATION_ALGORITHM_WHITE_NOISE_H
|
|
#define FAULT_SIMULATION_ALGORITHM_WHITE_NOISE_H
|
|
#include <algorithm.hpp>
|
|
#include <math.h>
|
|
#include <random>
|
|
class white_noise : public algorithm {
|
|
public:
|
|
void set_config(const nlohmann::json &config) override;
|
|
|
|
nlohmann::json config() override;
|
|
|
|
double eval(double value) override;
|
|
|
|
protected:
|
|
nlohmann::json config_{};
|
|
std::mt19937 mt19937_{std::random_device()()};
|
|
std::shared_ptr <std::normal_distribution<>> normal_distribution_;
|
|
double mean_{0};
|
|
double standard_deviation_{0};
|
|
|
|
};
|
|
#endif //FAULT_SIMULATION_ALGORITHM_WHITE_NOISE_H
|