OptiPack
Version of the Day
Main Page
Related Pages
Classes
Files
File List
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
src
OptiPack_LineSearchPointEvaluatorBase.hpp
1
/*
2
// @HEADER
3
// ***********************************************************************
4
//
5
// OptiPack: Collection of simple Thyra-based Optimization ANAs
6
// Copyright (2009) Sandia Corporation
7
//
8
// Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
9
// license for use of this work by or on behalf of the U.S. Government.
10
//
11
// Redistribution and use in source and binary forms, with or without
12
// modification, are permitted provided that the following conditions are
13
// met:
14
//
15
// 1. Redistributions of source code must retain the above copyright
16
// notice, this list of conditions and the following disclaimer.
17
//
18
// 2. Redistributions in binary form must reproduce the above copyright
19
// notice, this list of conditions and the following disclaimer in the
20
// documentation and/or other materials provided with the distribution.
21
//
22
// 3. Neither the name of the Corporation nor the names of the
23
// contributors may be used to endorse or promote products derived from
24
// this software without specific prior written permission.
25
//
26
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37
//
38
// Questions? Contact Roscoe A. Bartlett (rabartl@sandia.gov)
39
//
40
// ***********************************************************************
41
// @HEADER
42
*/
43
44
#ifndef OPTIPACK_LINE_SEARCH_POINT_EVALUATOR_BASE_HPP
45
#define OPTIPACK_LINE_SEARCH_POINT_EVALUATOR_BASE_HPP
46
47
48
#include "OptiPack_Types.hpp"
49
#include "Thyra_OperatorVectorTypes.hpp"
50
#include "Teuchos_Describable.hpp"
51
52
53
namespace
OptiPack {
54
55
60
template
<
typename
Scalar>
61
class
LineSearchPointEvaluatorBase
62
:
public
Teuchos::Describable
63
{
64
public
:
65
67
typedef
typename
ScalarTraits<Scalar>::magnitudeType
ScalarMag
;
68
72
virtual
void
computePoint
(
const
ScalarMag
&alpha,
73
const
Ptr
<
Thyra::VectorBase<Scalar>
> &p
74
)
const
= 0;
75
76
};
77
78
79
}
// namespace OptiPack
80
81
82
#endif // OPTIPACK_LINE_SEARCH_POINT_EVALUATOR_BASE_HPP
OptiPack::LineSearchPointEvaluatorBase::ScalarMag
ScalarTraits< Scalar >::magnitudeType ScalarMag
Definition:
OptiPack_LineSearchPointEvaluatorBase.hpp:67
OptiPack::LineSearchPointEvaluatorBase::computePoint
virtual void computePoint(const ScalarMag &alpha, const Ptr< Thyra::VectorBase< Scalar > > &p) const =0
Compute the updated point p at alpha for a linear search algorithm.
Teuchos::ScalarTraits
Thyra::VectorBase
OptiPack::LineSearchPointEvaluatorBase
Base class interface for line search point updates.
Definition:
OptiPack_LineSearchPointEvaluatorBase.hpp:61
Teuchos::Describable
Teuchos::Ptr
Generated by
1.8.5