BayesOpt
kernel_sum.hpp
1
/*
2
-------------------------------------------------------------------------
3
This file is part of BayesOpt, an efficient C++ library for
4
Bayesian optimization.
5
6
Copyright (C) 2011-2015 Ruben Martinez-Cantin <rmcantin@unizar.es>
7
8
BayesOpt is free software: you can redistribute it and/or modify it
9
under the terms of the GNU Affero General Public License as published by
10
the Free Software Foundation, either version 3 of the License, or
11
(at your option) any later version.
12
13
BayesOpt is distributed in the hope that it will be useful, but
14
WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
GNU Affero General Public License for more details.
17
18
You should have received a copy of the GNU Affero General Public License
19
along with BayesOpt. If not, see <http://www.gnu.org/licenses/>.
20
------------------------------------------------------------------------
21
*/
22
23
#ifndef _KERNEL_SUM_HPP_
24
#define _KERNEL_SUM_HPP_
25
26
#include "
kernels/kernel_combined.hpp
"
27
28
namespace
bayesopt
29
{
30
33
35
class
KernelSum
:
public
CombinedKernel
36
{
37
public
:
38
double
operator()(
const
vectord &x1,
const
vectord &x2)
39
{
return
(*left)(x1,x2) + (*right)(x1,x2); };
40
41
double
gradient(
const
vectord &x1,
const
vectord &x2,
42
size_t
component)
43
{
return
left->gradient(x1,x2,component) + right->gradient(x1,x2,component); };
44
};
45
47
48
}
//namespace bayesopt
49
50
#endif
kernel_combined.hpp
Kernel functions that combine other kernels.
bayesopt
Namespace of the library interface.
Definition:
using.dox:1
bayesopt::CombinedKernel
Abstract class for combined kernel.
Definition:
kernel_combined.hpp:40
bayesopt::KernelSum
Sum of two kernels.
Definition:
kernel_sum.hpp:35
include
kernels
kernel_sum.hpp
Generated on Fri May 15 2020 01:58:41 for BayesOpt by
1.8.13