Anasazi
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
src
AnasaziGenOrthoManager.hpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// Anasazi: Block Eigensolvers Package
4
//
5
// Copyright 2004 NTESS and the Anasazi contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
14
15
#ifndef ANASAZI_GENORTHOMANAGER_HPP
16
#define ANASAZI_GENORTHOMANAGER_HPP
17
30
31
#include "
AnasaziConfigDefs.hpp
"
32
#include "
AnasaziTypes.hpp
"
33
#include "
AnasaziMatOrthoManager.hpp
"
34
#include "
AnasaziMultiVecTraits.hpp
"
35
#include "
AnasaziOperatorTraits.hpp
"
36
37
namespace
Anasazi
{
38
39
template
<
class
ScalarType,
class
MV,
class
OP>
40
class
GenOrthoManager
:
public
MatOrthoManager
<ScalarType,MV,OP> {
41
public
:
43
44
45
GenOrthoManager
(Teuchos::RCP<const OP> Op = Teuchos::null);
46
48
virtual
~GenOrthoManager
() {};
50
51
53
54
133
virtual
void
projectGen
(
134
MV &S,
135
Teuchos::Array<Teuchos::RCP<const MV> > X,
136
Teuchos::Array<Teuchos::RCP<const MV> > Y,
137
bool
isBiOrtho,
138
Teuchos::Array<Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > > C
139
= Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix<int,ScalarType> >(Teuchos::null)),
140
Teuchos::RCP<MV> MS = Teuchos::null,
141
Teuchos::Array<Teuchos::RCP<const MV> > MX = Teuchos::tuple(Teuchos::RCP<const MV>(Teuchos::null)),
142
Teuchos::Array<Teuchos::RCP<const MV> > MY = Teuchos::tuple(Teuchos::RCP<const MV>(Teuchos::null))
143
)
const
= 0;
144
145
239
virtual
int
projectAndNormalizeGen
(
240
MV &S,
241
Teuchos::Array<Teuchos::RCP<const MV> > X,
242
Teuchos::Array<Teuchos::RCP<const MV> > Y,
243
bool
isBiOrtho,
244
Teuchos::Array<Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > > C
245
= Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix<int,ScalarType> >(Teuchos::null)),
246
Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > B = Teuchos::null,
247
Teuchos::RCP<MV> MS = Teuchos::null,
248
Teuchos::Array<Teuchos::RCP<const MV> > MX = Teuchos::tuple(Teuchos::RCP<const MV>(Teuchos::null)),
249
Teuchos::Array<Teuchos::RCP<const MV> > MY = Teuchos::tuple(Teuchos::RCP<const MV>(Teuchos::null))
250
)
const
= 0;
251
253
254
};
255
256
template
<
class
ScalarType,
class
MV,
class
OP>
257
GenOrthoManager<ScalarType,MV,OP>::GenOrthoManager
(Teuchos::RCP<const OP> Op)
258
:
MatOrthoManager
<ScalarType,MV,OP>(Op) {}
259
260
}
// end of Anasazi namespace
261
262
263
#endif
264
265
// end of file AnasaziGenOrthoManager.hpp
AnasaziConfigDefs.hpp
Anasazi header file which uses auto-configuration information to include necessary C++ headers.
AnasaziMatOrthoManager.hpp
Templated virtual class for providing orthogonalization/orthonormalization methods with matrix-based ...
AnasaziMultiVecTraits.hpp
Declaration of basic traits for the multivector type.
AnasaziOperatorTraits.hpp
Virtual base class which defines basic traits for the operator type.
AnasaziTypes.hpp
Types and exceptions used within Anasazi solvers and interfaces.
Anasazi::GenOrthoManager::projectAndNormalizeGen
virtual int projectAndNormalizeGen(MV &S, Teuchos::Array< Teuchos::RCP< const MV > > X, Teuchos::Array< Teuchos::RCP< const MV > > Y, bool isBiOrtho, Teuchos::Array< Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > > C=Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > >(Teuchos::null)), Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > B=Teuchos::null, Teuchos::RCP< MV > MS=Teuchos::null, Teuchos::Array< Teuchos::RCP< const MV > > MX=Teuchos::tuple(Teuchos::RCP< const MV >(Teuchos::null)), Teuchos::Array< Teuchos::RCP< const MV > > MY=Teuchos::tuple(Teuchos::RCP< const MV >(Teuchos::null))) const =0
Applies a series of generic projectors and returns an orthonormal basis for the residual data.
Anasazi::GenOrthoManager::projectGen
virtual void projectGen(MV &S, Teuchos::Array< Teuchos::RCP< const MV > > X, Teuchos::Array< Teuchos::RCP< const MV > > Y, bool isBiOrtho, Teuchos::Array< Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > > C=Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > >(Teuchos::null)), Teuchos::RCP< MV > MS=Teuchos::null, Teuchos::Array< Teuchos::RCP< const MV > > MX=Teuchos::tuple(Teuchos::RCP< const MV >(Teuchos::null)), Teuchos::Array< Teuchos::RCP< const MV > > MY=Teuchos::tuple(Teuchos::RCP< const MV >(Teuchos::null))) const =0
Applies a series of generic projectors.
Anasazi::GenOrthoManager::~GenOrthoManager
virtual ~GenOrthoManager()
Destructor.
Definition
AnasaziGenOrthoManager.hpp:48
Anasazi::GenOrthoManager::GenOrthoManager
GenOrthoManager(Teuchos::RCP< const OP > Op=Teuchos::null)
Default constructor.
Definition
AnasaziGenOrthoManager.hpp:257
Anasazi::MatOrthoManager::MatOrthoManager
MatOrthoManager(Teuchos::RCP< const OP > Op=Teuchos::null)
Default constructor.
Definition
AnasaziMatOrthoManager.hpp:286
Anasazi
Namespace Anasazi contains the classes, structs, enums and utilities used by the Anasazi package.
Generated by
1.17.0