Xpetra Version of the Day
Loading...
Searching...
No Matches
Xpetra_UseShortNamesScalar.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Xpetra: A linear algebra interface package
4//
5// Copyright 2012 NTESS and the Xpetra contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
10// Get rid of template parameters
11
12// New definition of types using the types Scalar, LocalOrdinal, GlobalOrdinal, Node of the current context.
13
14// Note: There is no #ifndef/#define/#end in this header file because it can be included more than once (it can be included in methods templated by Scalar, LocalOrdinal, GlobalOrdinal, Node).
15
16#ifdef XPETRA_CRSMATRIX_SHORT
18#endif
19
20#ifdef XPETRA_IO_SHORT
22#endif
23
24#ifdef XPETRA_ITERATOROPS_SHORT
26#endif
27
28#ifdef XPETRA_VECTOR_SHORT
30#endif
31
32#ifdef XPETRA_BLOCKEDVECTOR_SHORT
33using BlockedVector [[maybe_unused]] = Xpetra::BlockedVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
34#endif
35
36#ifdef XPETRA_MULTIVECTOR_SHORT
38#endif
39
40#ifdef XPETRA_MATRIX_SHORT
42#endif
43
44#ifdef XPETRA_MATRIXMATRIX_SHORT
45using MatrixMatrix [[maybe_unused]] = Xpetra::MatrixMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
46#endif
47
48#ifdef XPETRA_TRIPLEMATRIXMULTIPLY_SHORT
49using TripleMatrixMultiply [[maybe_unused]] = Xpetra::TripleMatrixMultiply<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
50#endif
51
52#ifdef XPETRA_MATRIXUTILS_SHORT
54#endif
55
56#ifdef XPETRA_OPERATOR_SHORT
58#endif
59
60#ifdef XPETRA_TPETRAOPERATOR_SHORT
61using TpetraOperator [[maybe_unused]] = Xpetra::TpetraOperator<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
62#endif
63
64#ifdef XPETRA_TPETRAHALFPRECISIONOPERATOR_SHORT
65using TpetraHalfPrecisionOperator [[maybe_unused]] = Xpetra::TpetraHalfPrecisionOperator<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
66#endif
67
68#ifdef XPETRA_BLOCKEDCRSMATRIX_SHORT
69using BlockedCrsMatrix [[maybe_unused]] = Xpetra::BlockedCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
70#endif
71
72#ifdef XPETRA_BLOCKEDMULTIVECTOR_SHORT
73using BlockedMultiVector [[maybe_unused]] = Xpetra::BlockedMultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
74#endif
75
76#ifdef XPETRA_REORDEREDBLOCKEDMULTIVECTOR_SHORT
77using ReorderedBlockedMultiVector [[maybe_unused]] = Xpetra::ReorderedBlockedMultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
78#endif
79
80#ifdef XPETRA_REORDEREDBLOCKEDCRSMATRIX_SHORT
81using ReorderedBlockedCrsMatrix [[maybe_unused]] = Xpetra::ReorderedBlockedCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
82#endif
83
84#ifdef HAVE_XPETRA_THYRA
85#ifdef XPETRA_THYRAUTILS_SHORT
86using ThyraUtils [[maybe_unused]] = Xpetra::ThyraUtils<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
87#endif
88#endif
89
90#ifdef XPETRA_CRSMATRIXWRAP_SHORT
91using CrsMatrixWrap [[maybe_unused]] = Xpetra::CrsMatrixWrap<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
92#endif
93
94#ifdef XPETRA_VECTORFACTORY_SHORT
95using VectorFactory [[maybe_unused]] = Xpetra::VectorFactory<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
96#endif
97
98#ifdef XPETRA_CRSMATRIXFACTORY_SHORT
99using CrsMatrixFactory [[maybe_unused]] = Xpetra::CrsMatrixFactory<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
100#endif
101
102#ifdef XPETRA_MULTIVECTORFACTORY_SHORT
103using MultiVectorFactory [[maybe_unused]] = Xpetra::MultiVectorFactory<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
104#endif
105
106#ifdef XPETRA_MATRIXFACTORY_SHORT
107using MatrixFactory [[maybe_unused]] = Xpetra::MatrixFactory<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
108#endif
109
110#ifdef XPETRA_MATRIXFACTORY2_SHORT
111using MatrixFactory2 [[maybe_unused]] = Xpetra::MatrixFactory2<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
112#endif
113
114#ifdef XPETRA_TPETRACRSMATRIX_SHORT
115using TpetraCrsMatrix [[maybe_unused]] = Xpetra::TpetraCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
116#endif
117
118#ifdef XPETRA_TPETRABLOCKCRSMATRIX_SHORT
119using TpetraBlockCrsMatrix [[maybe_unused]] = Xpetra::TpetraBlockCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
120#endif
121
122// TODO remove this
123#ifdef XPETRA_EPETRACRSMATRIX_SHORT
124#ifndef XPETRA_EPETRA_NO_32BIT_GLOBAL_INDICES
125using EpetraCrsMatrix64 [[maybe_unused]] = Xpetra::EpetraCrsMatrixT<long long, Xpetra::EpetraNode>;
126#endif
127using EpetraCrsMatrix [[maybe_unused]] = Xpetra::EpetraCrsMatrixT<int, Xpetra::EpetraNode>; // do we need this???
128#endif
129// TODO remove above entries
130
131#ifdef XPETRA_TPETRAMULTIVECTOR_SHORT
132using TpetraMultiVector [[maybe_unused]] = Xpetra::TpetraMultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
133#endif
134
135#ifdef XPETRA_TPETRAVECTOR_SHORT
136using TpetraVector [[maybe_unused]] = Xpetra::TpetraVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
137#endif
138
139#ifdef XPETRA_MAPEXTRACTOR_SHORT
140using MapExtractor [[maybe_unused]] = Xpetra::MapExtractor<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
141#endif
142
143#ifdef XPETRA_MAPEXTRACTORFACTORY_SHORT
144using MapExtractorFactory [[maybe_unused]] = Xpetra::MapExtractorFactory<Scalar, LocalOrdinal, GlobalOrdinal, Node>;
145#endif
146
147// TODO: add namespace {} for shortcut types
148
149// Define convenient shortcut for data types
150using SC [[maybe_unused]] = Scalar;
151// TODO: do the same for Epetra object (problem of namespace)
Concrete implementation of Xpetra::Matrix.
Xpetra utility class containing IO routines to read/write vectors, matrices etc...
Xpetra utility class containing iteration operators.
Xpetra utility class for common matrix-related routines.
Xpetra-specific matrix class.
Factory for any type of Xpetra::MultiVector and its derived classes.
Wraps an existing halfer precision Xpetra::Operator as a Xpetra::Operator.