Thyra
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
core
src
support
nonlinear
model_evaluator
client_support
Thyra_ScaledModelEvaluator_decl.hpp
1
// @HEADER
2
// *****************************************************************************
3
// Thyra: Interfaces and Support for Abstract Numerical Algorithms
4
//
5
// Copyright 2004 NTESS and the Thyra contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef THYRA_SCALED_MODEL_EVALUATOR_HPP
11
#define THYRA_SCALED_MODEL_EVALUATOR_HPP
12
13
#include "Thyra_ModelEvaluatorDelegatorBase.hpp"
14
15
namespace
Thyra {
16
17
26
template
<
class
Scalar>
27
class
ScaledModelEvaluator
:
28
virtual
public
ModelEvaluatorDelegatorBase
<Scalar>
29
{
30
public
:
31
33
ScaledModelEvaluator
();
34
36
std::string
description
()
const
;
37
39
void
set_f_scaling
(
const
RCP
<
const
Thyra::VectorBase<Scalar>
>& f_scaling);
40
41
private
:
42
45
47
void
evalModelImpl(
48
const
Thyra::ModelEvaluatorBase::InArgs<Scalar>
&inArgs,
49
const
Thyra::ModelEvaluatorBase::OutArgs<Scalar>
&outArgs
50
)
const
;
51
53
54
private
:
55
56
//* Diagonal scaling vector */
57
RCP<const Thyra::VectorBase<Scalar>
> f_scaling_;
58
59
};
60
61
63
template
<
class
Scalar>
64
RCP<ScaledModelEvaluator<Scalar>
>
65
createNonconstScaledModelEvaluator(
const
RCP
<
ModelEvaluator<Scalar >
> &model)
66
{
67
RCP<ScaledModelEvaluator<Scalar>
> srme(
new
ScaledModelEvaluator<Scalar>
);
68
srme->initialize(model);
69
return
srme;
70
}
71
72
73
}
// namespace Thyra
74
75
76
#endif
// THYRA_SCALED_MODEL_EVALUATOR_HPP
Teuchos::RCP
Thyra::ModelEvaluatorBase::InArgs
Concrete aggregate class for all input arguments computable by a ModelEvaluator subclass object.
Definition
Thyra_ModelEvaluatorBase_decl.hpp:127
Thyra::ModelEvaluatorBase::OutArgs
Concrete aggregate class for all output arguments computable by a ModelEvaluator subclass object.
Definition
Thyra_ModelEvaluatorBase_decl.hpp:870
Thyra::ModelEvaluatorDelegatorBase::ModelEvaluatorDelegatorBase
ModelEvaluatorDelegatorBase()
Constructs to uninitialized.
Definition
Thyra_ModelEvaluatorDelegatorBase.hpp:297
Thyra::ModelEvaluator
Pure abstract base interface for evaluating a stateless "model" that can be mapped into a number of d...
Definition
Thyra_ModelEvaluator.hpp:741
Thyra::ScaledModelEvaluator
This class decorates a ModelEvaluator and returns scaled residual and Jacobian values.
Definition
Thyra_ScaledModelEvaluator_decl.hpp:29
Thyra::ScaledModelEvaluator::description
std::string description() const
Definition
Thyra_ScaledModelEvaluator_def.hpp:33
Thyra::ScaledModelEvaluator::set_f_scaling
void set_f_scaling(const RCP< const Thyra::VectorBase< Scalar > > &f_scaling)
Definition
Thyra_ScaledModelEvaluator_def.hpp:51
Thyra::ScaledModelEvaluator::ScaledModelEvaluator
ScaledModelEvaluator()
Constructs to uninitialized.
Definition
Thyra_ScaledModelEvaluator_def.hpp:25
Thyra::VectorBase
Abstract interface for finite-dimensional dense vectors.
Definition
Thyra_VectorBase.hpp:115
Generated by
1.17.0