Ifpack2 Templated Preconditioning Package Version 1.0
Ifpack2_ExplicitInstantiationHelpers.hpp
00001 
00002 #ifndef TPETRA_EXPLICITINSTANTIATIONHELPERS_HPP
00003 #define TPETRA_EXPLICITINSTANTIATIONHELPERS_HPP
00004 
00005 #include <Tpetra_CrsMatrix.hpp>
00006 #include <Tpetra_CrsGraph.hpp>
00007 
00008 #define IFPACK2_INST(CLASSNAME,S,LO,GO) \
00009   template class CLASSNAME<Tpetra::CrsMatrix<S,LO,GO, \
00010                  Kokkos::DefaultNode::DefaultNodeType, \
00011                  Kokkos::DefaultKernels<S,LO,Kokkos::DefaultNode::DefaultNodeType>::SparseOps> >;
00012 
00013 #define IFPACK2_INST_GRAPH(CLASSNAME,LO,GO)    \
00014   template class CLASSNAME<Tpetra::CrsGraph<LO,GO, \
00015                  Kokkos::DefaultNode::DefaultNodeType > >;
00016   
00017 #define IFPACK2_CLASS_CrsMatrix_float_int_int_defaultNode_defaultOps(CLASSNAME) \
00018   IFPACK2_INST(CLASSNAME,float,int,int)
00019 
00020 #define IFPACK2_CLASS_CrsMatrix_float_short_int_defaultNode_defaultOps(CLASSNAME) \
00021   IFPACK2_INST(CLASSNAME,float,short,int)
00022 
00023 #define IFPACK2_CLASS_CrsMatrix_double_int_int_defaultNode_defaultOps(CLASSNAME) \
00024   IFPACK2_INST(CLASSNAME,double,int,int)
00025 
00026 #define IFPACK2_INSTANT_CRSMATRIX_FLOAT_DOUBLE_DEFAULTS(CLASSNAME) \
00027   IFPACK2_CLASS_CrsMatrix_double_int_int_defaultNode_defaultOps(CLASSNAME)
00028 
00029 #define IFPACK2_INSTANT_CRSMATRIX_COMPLEX_DEFAULTS(CLASSNAME) \
00030   IFPACK2_INST(CLASSNAME,std::complex<double>,int,int) \
00031   IFPACK2_INST(CLASSNAME,std::complex<float>,int,int) 
00032 
00033 
00034 
00035 
00036 
00037 
00038 #endif
00039 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends