Public Types | Public Member Functions | Private Attributes | List of all members
corbo::DisturbanceGaussianNoise Class Reference

#include <disturbances.h>

Inheritance diagram for corbo::DisturbanceGaussianNoise:
Inheritance graph
[legend]

Public Types

using Ptr = std::shared_ptr< DisturbanceGaussianNoise >
 
- Public Types inherited from corbo::DisturbanceInterface
using Ptr = std::shared_ptr< DisturbanceInterface >
 

Public Member Functions

bool checkParameters (int values_dim, std::stringstream *issues) const override
 Check the underlying parameter configuration for validity. More...
 
void disturb (const Time &t, const Eigen::Ref< const Eigen::VectorXd > &values, Eigen::Ref< Eigen::VectorXd > disturbed_values) override
 Modify values according to the underlying disturbance model. More...
 
DisturbanceInterface::Ptr getInstance () const override
 Return a newly created shared instance of the implemented class. More...
 
void initializeDistributions ()
 
void reset () override
 reset internal state More...
 
void setParameters (const Eigen::Ref< const Eigen::VectorXd > &mean_vec, const Eigen::Ref< const Eigen::VectorXd > &std_vec)
 
void setSeed (int seed)
 
virtual ~DisturbanceGaussianNoise ()
 Virtual destructor. More...
 
- Public Member Functions inherited from corbo::DisturbanceInterface
virtual ~DisturbanceInterface ()
 Virtual destructor. More...
 

Private Attributes

std::vector< std::normal_distribution< double > > _distributions
 
Eigen::VectorXd _mean
 
std::mt19937 _random_engine = std::mt19937(_seed)
 
int _seed = 1
 
Eigen::VectorXd _std
 

Additional Inherited Members

- Static Public Member Functions inherited from corbo::DisturbanceInterface
static Factory< DisturbanceInterface > & getFactory ()
 Get access to the associated factory. More...
 

Detailed Description

Definition at line 35 of file disturbances.h.

Member Typedef Documentation

◆ Ptr

Definition at line 38 of file disturbances.h.

Constructor & Destructor Documentation

◆ ~DisturbanceGaussianNoise()

virtual corbo::DisturbanceGaussianNoise::~DisturbanceGaussianNoise ( )
inlinevirtual

Virtual destructor.

Definition at line 41 of file disturbances.h.

Member Function Documentation

◆ checkParameters()

bool corbo::DisturbanceGaussianNoise::checkParameters ( int  values_dim,
std::stringstream *  issues 
) const
overridevirtual

Check the underlying parameter configuration for validity.

This method might be useful if the class has been configured via a message from another class and the internal dimensions must fulfil some requirements.

Parameters
[in]values_dimExpected dimension of the value vector to be disturbed
[out]issuesIssue related messages are forwarded to this stream (optional)

Reimplemented from corbo::DisturbanceInterface.

Definition at line 88 of file disturbances.cpp.

◆ disturb()

void corbo::DisturbanceGaussianNoise::disturb ( const Time t,
const Eigen::Ref< const Eigen::VectorXd > &  values,
Eigen::Ref< Eigen::VectorXd >  disturbed_values 
)
overridevirtual

Modify values according to the underlying disturbance model.

Remarks
This method allows alias between input and output parameters
Parameters
[in]tCurrent time stamp
[in]valuesValue vector to be disturbed
[out]disturbed_valuesDisturbed value vector (alias-safe) [must be preallocated]

Implements corbo::DisturbanceInterface.

Definition at line 31 of file disturbances.cpp.

◆ getInstance()

DisturbanceInterface::Ptr corbo::DisturbanceGaussianNoise::getInstance ( ) const
inlineoverridevirtual

Return a newly created shared instance of the implemented class.

Implements corbo::DisturbanceInterface.

Definition at line 44 of file disturbances.h.

◆ initializeDistributions()

void corbo::DisturbanceGaussianNoise::initializeDistributions ( )

Definition at line 59 of file disturbances.cpp.

◆ reset()

void corbo::DisturbanceGaussianNoise::reset ( )
overridevirtual

reset internal state

Implements corbo::DisturbanceInterface.

Definition at line 82 of file disturbances.cpp.

◆ setParameters()

void corbo::DisturbanceGaussianNoise::setParameters ( const Eigen::Ref< const Eigen::VectorXd > &  mean_vec,
const Eigen::Ref< const Eigen::VectorXd > &  std_vec 
)
inline

Definition at line 49 of file disturbances.h.

◆ setSeed()

void corbo::DisturbanceGaussianNoise::setSeed ( int  seed)

Definition at line 76 of file disturbances.cpp.

Member Data Documentation

◆ _distributions

std::vector<std::normal_distribution<double> > corbo::DisturbanceGaussianNoise::_distributions
private

Definition at line 88 of file disturbances.h.

◆ _mean

Eigen::VectorXd corbo::DisturbanceGaussianNoise::_mean
private

Definition at line 81 of file disturbances.h.

◆ _random_engine

std::mt19937 corbo::DisturbanceGaussianNoise::_random_engine = std::mt19937(_seed)
private

Definition at line 85 of file disturbances.h.

◆ _seed

int corbo::DisturbanceGaussianNoise::_seed = 1
private

Definition at line 84 of file disturbances.h.

◆ _std

Eigen::VectorXd corbo::DisturbanceGaussianNoise::_std
private

Definition at line 82 of file disturbances.h.


The documentation for this class was generated from the following files:


control_box_rst
Author(s): Christoph Rösmann
autogenerated on Mon Feb 28 2022 22:08:02