Stokhos Package Browser (Single Doxygen Collection)
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
src
epetra
Stokhos_EpetraOperatorOrthogPoly.hpp
Go to the documentation of this file.
1
// @HEADER
2
// ***********************************************************************
3
//
4
// Stokhos Package
5
// Copyright (2009) Sandia Corporation
6
//
7
// Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
8
// license for use of this work by or on behalf of the U.S. Government.
9
//
10
// Redistribution and use in source and binary forms, with or without
11
// modification, are permitted provided that the following conditions are
12
// met:
13
//
14
// 1. Redistributions of source code must retain the above copyright
15
// notice, this list of conditions and the following disclaimer.
16
//
17
// 2. Redistributions in binary form must reproduce the above copyright
18
// notice, this list of conditions and the following disclaimer in the
19
// documentation and/or other materials provided with the distribution.
20
//
21
// 3. Neither the name of the Corporation nor the names of the
22
// contributors may be used to endorse or promote products derived from
23
// this software without specific prior written permission.
24
//
25
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
26
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
29
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
31
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
32
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
33
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
34
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
35
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
//
37
// Questions? Contact Eric T. Phipps (etphipp@sandia.gov).
38
//
39
// ***********************************************************************
40
// @HEADER
41
42
#ifndef STOKHOS_EPETRA_OPERATOR_ORTHOG_POLY_HPP
43
#define STOKHOS_EPETRA_OPERATOR_ORTHOG_POLY_HPP
44
45
#include "
Stokhos_VectorOrthogPoly.hpp
"
46
#include "
Stokhos_ProductEpetraOperator.hpp
"
47
48
namespace
Stokhos
{
49
55
class
EpetraOperatorOrthogPoly
:
56
public
virtual
VectorOrthogPoly
<Epetra_Operator>,
57
public
virtual
ProductEpetraOperator
{
58
public
:
59
61
typedef
double
value_type
;
62
64
typedef
int
ordinal_type
;
65
70
EpetraOperatorOrthogPoly
(
71
const
Teuchos::RCP<
const
Stokhos::OrthogPolyBasis<int, double>
>&
basis
,
72
const
Teuchos::RCP<const Epetra_BlockMap>& block_map,
73
const
Teuchos::RCP<const Epetra_Map>&
domain_base_map
,
74
const
Teuchos::RCP<const Epetra_Map>&
range_base_map
,
75
const
Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm
);
76
81
EpetraOperatorOrthogPoly
(
82
const
Teuchos::RCP<
const
Stokhos::OrthogPolyBasis<int, double>
>&
basis
,
83
const
Teuchos::RCP<const Epetra_BlockMap>& block_map,
84
const
Teuchos::RCP<const Epetra_Map>&
domain_base_map
,
85
const
Teuchos::RCP<const Epetra_Map>&
range_base_map
,
86
const
Teuchos::RCP<const Epetra_Map>& range_product_map,
87
const
Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm
);
88
90
93
EpetraOperatorOrthogPoly
(
const
EpetraOperatorOrthogPoly
& v);
94
96
virtual
~EpetraOperatorOrthogPoly
();
97
99
102
EpetraOperatorOrthogPoly
&
operator=
(
const
EpetraOperatorOrthogPoly
& v);
103
104
protected
:
105
107
EpetraOperatorOrthogPoly
(
108
const
Teuchos::RCP<
const
Stokhos::OrthogPolyBasis<int, double>
>&
basis
,
109
const
Teuchos::RCP<const Epetra_BlockMap>& block_map,
110
const
Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm
);
111
113
void
setup
(
const
Teuchos::RCP<const Epetra_Map>&
domain_base_map
,
114
const
Teuchos::RCP<const Epetra_Map>&
range_base_map
);
115
116
};
// class EpetraOperatorOrthogPoly
117
118
}
// end namespace Stokhos
119
120
#endif
// STOKHOS_EPETRA_OPERATOR_ORTHOG_POLY_HPP
setup
UnitTestSetup< Kokkos::Cuda > setup
Definition
Stokhos_KokkosArrayKernelsUnitTest_Cuda.cpp:53
Stokhos_ProductEpetraOperator.hpp
Stokhos_VectorOrthogPoly.hpp
Stokhos::EpetraOperatorOrthogPoly::ordinal_type
int ordinal_type
Typename of ordinals.
Definition
Stokhos_EpetraOperatorOrthogPoly.hpp:64
Stokhos::EpetraOperatorOrthogPoly::EpetraOperatorOrthogPoly
EpetraOperatorOrthogPoly(const Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > &basis, const Teuchos::RCP< const Epetra_BlockMap > &block_map, const Teuchos::RCP< const Epetra_Map > &domain_base_map, const Teuchos::RCP< const Epetra_Map > &range_base_map, const Teuchos::RCP< const EpetraExt::MultiComm > &product_comm)
Create a polynomial for basis basis where each coefficient is generated from the supplied map.
Definition
Stokhos_EpetraOperatorOrthogPoly.cpp:45
Stokhos::EpetraOperatorOrthogPoly::value_type
double value_type
Typename of values.
Definition
Stokhos_EpetraOperatorOrthogPoly.hpp:61
Stokhos::EpetraOperatorOrthogPoly::operator=
EpetraOperatorOrthogPoly & operator=(const EpetraOperatorOrthogPoly &v)
Assignment.
Definition
Stokhos_EpetraOperatorOrthogPoly.cpp:86
Stokhos::EpetraOperatorOrthogPoly::~EpetraOperatorOrthogPoly
virtual ~EpetraOperatorOrthogPoly()
Destructor.
Definition
Stokhos_EpetraOperatorOrthogPoly.cpp:82
Stokhos::OrthogPolyBasis
Abstract base class for multivariate orthogonal polynomials.
Definition
Stokhos_OrthogPolyBasis.hpp:74
Stokhos::ProductEpetraOperator::product_comm
Teuchos::RCP< const EpetraExt::MultiComm > product_comm
Product multi-level communicator.
Definition
Stokhos_ProductEpetraOperator.hpp:186
Stokhos::ProductEpetraOperator::ProductEpetraOperator
ProductEpetraOperator(const Teuchos::RCP< const Epetra_BlockMap > &block_map, const Teuchos::RCP< const Epetra_Map > &domain_base_map, const Teuchos::RCP< const Epetra_Map > &range_base_map, const Teuchos::RCP< const EpetraExt::MultiComm > &product_comm)
Create a container with container map block_map where each coefficient is generated from the supplied...
Definition
Stokhos_ProductEpetraOperator.cpp:47
Stokhos::ProductEpetraOperator::domain_base_map
Teuchos::RCP< const Epetra_Map > domain_base_map
Domain map of each coefficient.
Definition
Stokhos_ProductEpetraOperator.hpp:177
Stokhos::ProductEpetraOperator::range_base_map
Teuchos::RCP< const Epetra_Map > range_base_map
Range map of each coefficient.
Definition
Stokhos_ProductEpetraOperator.hpp:180
Stokhos::VectorOrthogPoly< Epetra_Operator >::basis
Teuchos::RCP< const Stokhos::OrthogPolyBasis< ordinal_type, value_type > > basis() const
Definition
Stokhos_VectorOrthogPolyImp.hpp:114
Stokhos::VectorOrthogPoly< Epetra_Operator >::VectorOrthogPoly
VectorOrthogPoly()
Definition
Stokhos_VectorOrthogPolyImp.hpp:46
Stokhos
Top-level namespace for Stokhos classes and functions.
Definition
Stokhos_AbstractPreconditionerFactory.hpp:48
Generated by
1.17.0