ROL
src
algorithm
TypeU
linesearch
ROL_LineSearch_U_Factory.hpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// Rapid Optimization Library (ROL) Package
4
//
5
// Copyright 2014 NTESS and the ROL contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef ROL_LINESEARCH_U_FACTORY_H
11
#define ROL_LINESEARCH_U_FACTORY_H
12
13
#include "
ROL_IterationScaling_U.hpp
"
14
#include "
ROL_PathBasedTargetLevel_U.hpp
"
15
#include "
ROL_BackTracking_U.hpp
"
16
#include "
ROL_CubicInterp_U.hpp
"
17
#include "
ROL_ScalarMinimizationLineSearch_U.hpp
"
18
19
namespace
ROL
{
20
template
<
typename
Real>
21
inline
Ptr<LineSearch_U<Real>>
LineSearchUFactory
(ParameterList &parlist) {
22
ELineSearchU
els =
StringToELineSearchU
(
23
parlist.sublist(
"Step"
).sublist(
"Line Search"
).sublist(
"Line-Search Method"
).get(
"Type"
,
"Cubic Interpolation"
));
24
switch
(els) {
25
case
LINESEARCH_U_ITERATIONSCALING
:
return
makePtr<IterationScaling_U<Real>>(parlist);
26
case
LINESEARCH_U_PATHBASEDTARGETLEVEL
:
return
makePtr<PathBasedTargetLevel_U<Real>>(parlist);
27
case
LINESEARCH_U_BACKTRACKING
:
return
makePtr<BackTracking_U<Real>>(parlist);
28
case
LINESEARCH_U_CUBICINTERP
:
return
makePtr<CubicInterp_U<Real>>(parlist);
29
case
LINESEARCH_U_BRENTS
:
30
case
LINESEARCH_U_GOLDENSECTION
:
31
case
LINESEARCH_U_BISECTION
:
return
makePtr<ScalarMinimizationLineSearch_U<Real>>(parlist);
32
default
:
return
nullPtr;
33
}
34
}
35
}
// namespace ROL
36
37
#endif
ROL_BackTracking_U.hpp
ROL_CubicInterp_U.hpp
ROL_IterationScaling_U.hpp
ROL_PathBasedTargetLevel_U.hpp
ROL_ScalarMinimizationLineSearch_U.hpp
ROL
Definition
ROL_ElementwiseVector.hpp:27
ROL::LineSearchUFactory
Ptr< LineSearch_U< Real > > LineSearchUFactory(ParameterList &parlist)
Definition
ROL_LineSearch_U_Factory.hpp:21
ROL::ELineSearchU
ELineSearchU
Definition
ROL_LineSearch_U_Types.hpp:110
ROL::LINESEARCH_U_PATHBASEDTARGETLEVEL
@ LINESEARCH_U_PATHBASEDTARGETLEVEL
Definition
ROL_LineSearch_U_Types.hpp:112
ROL::LINESEARCH_U_BACKTRACKING
@ LINESEARCH_U_BACKTRACKING
Definition
ROL_LineSearch_U_Types.hpp:113
ROL::LINESEARCH_U_ITERATIONSCALING
@ LINESEARCH_U_ITERATIONSCALING
Definition
ROL_LineSearch_U_Types.hpp:111
ROL::LINESEARCH_U_GOLDENSECTION
@ LINESEARCH_U_GOLDENSECTION
Definition
ROL_LineSearch_U_Types.hpp:115
ROL::LINESEARCH_U_BISECTION
@ LINESEARCH_U_BISECTION
Definition
ROL_LineSearch_U_Types.hpp:114
ROL::LINESEARCH_U_CUBICINTERP
@ LINESEARCH_U_CUBICINTERP
Definition
ROL_LineSearch_U_Types.hpp:116
ROL::LINESEARCH_U_BRENTS
@ LINESEARCH_U_BRENTS
Definition
ROL_LineSearch_U_Types.hpp:117
ROL::StringToELineSearchU
ELineSearchU StringToELineSearchU(std::string s)
Definition
ROL_LineSearch_U_Types.hpp:176
Generated by
1.9.8