snark
Main Page
Classes
Files
File List
snark
math
gaussian_process
covariance.h
1
// This file is part of snark, a generic and flexible library
2
// for robotics research.
3
//
4
// Copyright (C) 2011 The University of Sydney
5
//
6
// snark is free software; you can redistribute it and/or
7
// modify it under the terms of the GNU Lesser General Public
8
// License as published by the Free Software Foundation; either
9
// version 3 of the License, or (at your option) any later version.
10
//
11
// snark is distributed in the hope that it will be useful, but WITHOUT ANY
12
// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13
// FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
14
// for more details.
15
//
16
// You should have received a copy of the GNU Lesser General Public
17
// License along with snark. If not, see <http://www.gnu.org/licenses/>.
18
19
#ifndef SNARK_GAUSSIAN_PROCESS_COVARIANCE_
20
#define SNARK_GAUSSIAN_PROCESS_COVARIANCE_
21
22
#include <Eigen/Core>
23
24
namespace
snark{
25
26
class
squared_exponential_covariance
27
{
28
public
:
29
squared_exponential_covariance(
double
length_scale
30
,
double
signal_variance
31
,
double
data_variance );
32
33
double
covariance(
const
Eigen::VectorXd& v,
const
Eigen::VectorXd& w )
const
;
34
35
double
self_covariance()
const
;
36
37
private
:
38
double
signal_variance_;
39
double
data_variance_;
40
double
factor_;
41
double
self_covariance_;
42
};
43
44
}
// namespace snark{
45
46
#endif // #ifndef SNARK_GAUSSIAN_PROCESS_COVARIANCE_
Generated on Fri Nov 16 2012 12:42:42 for snark by
1.8.1.2