aimsalgo
5.0.5
Neuroimaging image processing
singleoptimizer.h
Go to the documentation of this file.
1
/* This software and supporting documentation are distributed by
2
* Institut Federatif de Recherche 49
3
* CEA/NeuroSpin, Batiment 145,
4
* 91191 Gif-sur-Yvette cedex
5
* France
6
*
7
* This software is governed by the CeCILL-B license under
8
* French law and abiding by the rules of distribution of free software.
9
* You can use, modify and/or redistribute the software under the
10
* terms of the CeCILL-B license as circulated by CEA, CNRS
11
* and INRIA at the following URL "http://www.cecill.info".
12
*
13
* As a counterpart to the access to the source code and rights to copy,
14
* modify and redistribute granted by the license, users are provided only
15
* with a limited warranty and the software's author, the holder of the
16
* economic rights, and the successive licensors have only limited
17
* liability.
18
*
19
* In this respect, the user's attention is drawn to the risks associated
20
* with loading, using, modifying and/or developing or reproducing the
21
* software by the user in light of its specific status of free software,
22
* that may mean that it is complicated to manipulate, and that also
23
* therefore means that it is reserved for developers and experienced
24
* professionals having in-depth computer knowledge. Users are therefore
25
* encouraged to load and test the software's suitability as regards their
26
* requirements in conditions enabling the security of their systems and/or
27
* data to be ensured and, more generally, to use and operate it in the
28
* same conditions as regards security.
29
*
30
* The fact that you are presently reading this means that you have had
31
* knowledge of the CeCILL-B license and that you accept its terms.
32
*/
33
34
35
#ifndef AIMS_OPTIMIZATION_SINGLEOPTIMIZER_H
36
#define AIMS_OPTIMIZATION_SINGLEOPTIMIZER_H
37
38
#include <
aims/math/mathelem.h
>
39
#include <
aims/vector/vector.h
>
40
#include <
aims/data/data.h
>
41
#include <
aims/optimization/objective.h
>
42
#include <
aims/optimization/optimizer.h
>
43
44
45
//
46
// class SingleOptimizer
47
//
48
template
<
class
T,
int
D>
49
class
SingleOptimizer
:
public
Optimizer
< T, D >
50
{
51
public
:
52
SingleOptimizer
(
const
ObjectiveFunc< T, D >
& func )
53
:
Optimizer
< T, D >( func, (T)0 )
54
{ }
55
virtual
~SingleOptimizer
() { }
56
57
AimsVector<T,D>
doit
(
const
AimsVector<T,D>
& pinit,
58
const
AimsVector<T,D>
& deltaP );
59
};
60
61
62
template
<
class
T,
int
D>
inline
63
AimsVector<T,D>
64
SingleOptimizer<T,D>::doit
(
const
AimsVector<T,D>
& pinit,
65
const
AimsVector<T,D>
& )
66
{
67
std::cout <<
"param = "
<< pinit
68
<<
" func = "
<< this->
_func
.eval( pinit )
69
<< std::endl;
70
return
pinit;
71
}
72
73
#endif
mathelem.h
data.h
AimsVector
Definition:
m-estimator.h:41
SingleOptimizer
Definition:
singleoptimizer.h:49
Optimizer
Definition:
optimizer.h:65
SingleOptimizer::SingleOptimizer
SingleOptimizer(const ObjectiveFunc< T, D > &func)
Definition:
singleoptimizer.h:52
SingleOptimizer::~SingleOptimizer
virtual ~SingleOptimizer()
Definition:
singleoptimizer.h:55
objective.h
SingleOptimizer::doit
AimsVector< T, D > doit(const AimsVector< T, D > &pinit, const AimsVector< T, D > &deltaP)
Definition:
singleoptimizer.h:64
ObjectiveFunc
Definition:
objective.h:47
Optimizer::_func
const ObjectiveFunc< T, D > & _func
Definition:
optimizer.h:88
optimizer.h
vector.h
aims
optimization
singleoptimizer.h
Generated by
1.8.13