GaussMarkovProcess.hh
Go to the documentation of this file.
1 // Copyright (c) 2016 The UUV Simulator Authors.
2 // All rights reserved.
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 // http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 
18 
19 #ifndef __GAUSS_MARKOV_PROCESS_HH__
20 #define __GAUSS_MARKOV_PROCESS_HH__
21 
22 #include <gazebo/gazebo.hh>
23 #include <cstdlib>
24 #include <ctime>
25 #include <random>
26 
27 namespace gazebo
28 {
34  {
36  public: GaussMarkovProcess();
37 
39  public: void Reset();
40 
48  public: bool SetModel(double _mean, double _min, double _max,
49  double _mu = 0, double _noise = 0);
50 
54  public: bool SetMean(double _mean);
55 
57  public: double var;
58 
60  public: double mean;
61 
63  public: double min;
64 
66  public: double max;
67 
69  public: double mu;
70 
72  public: double noiseAmp;
73 
75  public: double lastUpdate;
76 
79  public: double Update(double _time);
80 
82  public: void Print();
83  };
84 }
85 
86 #endif // __GAUSS_MARKOV_PROCESS_HH__
GaussMarkovProcess()
Class constructor.
double min
Minimum limit for the process variable.
Implementation of a Gauss-Markov process to model the current velocity and direction according to [1]...
double Update(double _time)
Update function for a new time stamp.
double noiseAmp
Gaussian white noise amplitude.
void Print()
Print current model paramters.
void Reset()
Resets the process parameters.
bool SetMean(double _mean)
Set mean process value.
bool SetModel(double _mean, double _min, double _max, double _mu=0, double _noise=0)
Sets all the necessary parameters for the computation.
double mean
Mean process value.
double max
Maximum limit for the process variable.
double var
Process variable.
double mu
Process constant, if zero, process becomes a random walk.
double lastUpdate
Timestamp for the last update.


uuv_world_plugins
Author(s): Musa Morena Marcusso Manhaes , Sebastian Scherer , Luiz Ricardo Douat
autogenerated on Thu Jun 18 2020 03:28:45