Thyra
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
core
test
nonlinear
models
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_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_DIAGONAL_QUADRATIC_RESPONSE_ONLY_MODEL_EVALUATOR_DECL_HPP
11
#define THYRA_DIAGONAL_QUADRATIC_RESPONSE_ONLY_MODEL_EVALUATOR_DECL_HPP
12
13
14
#include "Thyra_ResponseOnlyModelEvaluatorBase.hpp"
15
#include "Teuchos_Comm.hpp"
16
17
18
namespace
Thyra {
19
20
91
template
<
class
Scalar>
92
class
DiagonalQuadraticResponseOnlyModelEvaluator
93
:
public
ResponseOnlyModelEvaluatorBase
<Scalar>
94
{
95
public
:
96
98
101
103
DiagonalQuadraticResponseOnlyModelEvaluator
(
104
const
int
localDim,
105
const
RCP
<
const
Teuchos::Comm<Ordinal>
> &comm = Teuchos::null
106
);
107
109
void
setSolutionVector
(
const
RCP
<
const
VectorBase<Scalar>
> &ps);
110
112
const
RCP<const VectorBase<Scalar>
>
113
getSolutionVector
()
const
;
114
116
void
setDiagonalVector
(
const
RCP
<
const
VectorBase<Scalar>
> &diag);
117
123
void
setDiagonalBarVector
(
const
RCP
<
const
VectorBase<Scalar>
> &diag_bar);
124
126
void
setNonlinearTermFactor
(
const
Scalar &nonlinearTermFactor);
127
129
void
setScalarOffset
(
const
Scalar &g_offset);
130
132
135
137
int
Np
()
const
;
139
int
Ng
()
const
;
141
RCP<const VectorSpaceBase<Scalar>
>
get_p_space
(
int
l)
const
;
143
RCP<const VectorSpaceBase<Scalar>
>
get_g_space
(
int
j)
const
;
145
ModelEvaluatorBase::InArgs<Scalar>
createInArgs
()
const
;
146
148
149
private
:
150
153
155
ModelEvaluatorBase::OutArgs<Scalar>
createOutArgsImpl()
const
;
157
void
evalModelImpl(
158
const
ModelEvaluatorBase::InArgs<Scalar>
& inArgs,
159
const
ModelEvaluatorBase::OutArgs<Scalar>
& outArgs
160
)
const
;
161
163
164
private
:
165
166
// //////////////////////
167
// Private data members
168
169
int
Np_;
170
int
Ng_;
171
RCP<const Teuchos::Comm<Ordinal>
> comm_;
172
const
int
localDim_;
173
174
RCP<const VectorSpaceBase<Scalar>
> g_space_;
175
176
// Declared non-const so we can change the space in place!
177
RCP<VectorSpaceBase<Scalar>
> p_space_;
178
179
RCP<const VectorBase<Scalar>
> ps_;
180
RCP<const VectorBase<Scalar>
> diag_;
181
Scalar nonlinearTermFactor_;
182
Scalar g_offset_;
183
184
RCP<const VectorBase<Scalar>
> diag_bar_;
185
RCP<const VectorBase<Scalar>
> s_bar_;
186
187
};
188
189
191
template
<
class
Scalar>
192
RCP<DiagonalQuadraticResponseOnlyModelEvaluator<Scalar>
>
193
diagonalQuadraticResponseOnlyModelEvaluator(
194
const
int
localDim,
195
const
RCP
<
const
Teuchos::Comm<Ordinal>
> &comm = Teuchos::null
196
)
197
{
198
using
Teuchos::rcp
;
199
return
rcp(
new
DiagonalQuadraticResponseOnlyModelEvaluator<Scalar>
(localDim, comm));
200
}
201
202
203
}
// namespace Thyra
204
205
206
#endif
// THYRA_DIAGONAL_QUADRATIC_RESPONSE_ONLY_MODEL_EVALUATOR_DECL_HPP
Teuchos::Comm
Teuchos::RCP
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator
Simple parallel response-only ModelEvaluator.
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_decl.hpp:94
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::setDiagonalVector
void setDiagonalVector(const RCP< const VectorBase< Scalar > > &diag)
Set the diagonal vector diag.
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:99
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::setSolutionVector
void setSolutionVector(const RCP< const VectorBase< Scalar > > &ps)
Set the solution vector ps .
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:83
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::createInArgs
ModelEvaluatorBase::InArgs< Scalar > createInArgs() const
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:200
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::Np
int Np() const
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:159
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::setScalarOffset
void setScalarOffset(const Scalar &g_offset)
Set offset scalar g_offset .
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:148
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::get_g_space
RCP< const VectorSpaceBase< Scalar > > get_g_space(int j) const
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:187
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::setNonlinearTermFactor
void setNonlinearTermFactor(const Scalar &nonlinearTermFactor)
Set nonlinear term factory.
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:140
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::DiagonalQuadraticResponseOnlyModelEvaluator
DiagonalQuadraticResponseOnlyModelEvaluator(const int localDim, const RCP< const Teuchos::Comm< Ordinal > > &comm=Teuchos::null)
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:36
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::get_p_space
RCP< const VectorSpaceBase< Scalar > > get_p_space(int l) const
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:174
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::setDiagonalBarVector
void setDiagonalBarVector(const RCP< const VectorBase< Scalar > > &diag_bar)
Set the diagonal vector diag_bar.
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:108
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::Ng
int Ng() const
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:166
Thyra::DiagonalQuadraticResponseOnlyModelEvaluator::getSolutionVector
const RCP< const VectorBase< Scalar > > getSolutionVector() const
Get the solution vector ps .
Definition
Thyra_DiagonalQuadraticResponseOnlyModelEvaluator_def.hpp:92
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::ResponseOnlyModelEvaluatorBase
This base class defines default function implementations appropritate for a response-only model evalu...
Definition
Thyra_ResponseOnlyModelEvaluatorBase.hpp:32
Thyra::VectorBase
Abstract interface for finite-dimensional dense vectors.
Definition
Thyra_VectorBase.hpp:115
Teuchos::rcp
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Generated by
1.17.0