Anasazi  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
AnasaziOperatorTraits.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 
10 #ifndef ANASAZI_OPERATOR_TRAITS_HPP
11 #define ANASAZI_OPERATOR_TRAITS_HPP
12 
17 #include "AnasaziConfigDefs.hpp"
18 #include "AnasaziTypes.hpp"
19 
20 
21 namespace Anasazi {
22 
23 
25  class OperatorError : public AnasaziError
26  {public: OperatorError(const std::string& what_arg) : AnasaziError(what_arg) {}};
27 
28 
32  template< class ScalarType, class MV, class OP >
34  {
36 
40  static inline void notDefined() { return OP::this_type_is_missing_a_specialization(); };
41  };
42 
43 
51  template <class ScalarType, class MV, class OP>
53  {
54  public:
55 
57 
58 
60  static void Apply ( const OP& Op,
61  const MV& x,
62  MV& y )
64 
66 
67  };
68 
69 } // end Anasazi namespace
70 
71 #endif // ANASAZI_OPERATOR_TRAITS_HPP
72 
73 // end of file AnasaziOperatorTraits.hpp
This is the default struct used by OperatorTraits&lt;ScalarType, MV, OP&gt; class to produce a compile time...
Virtual base class which defines basic traits for the operator type.
static void Apply(const OP &Op, const MV &x, MV &y)
Application method which performs operation y = Op*x. An OperatorError exception is thrown if there i...
An exception class parent to all Anasazi exceptions.
static void notDefined()
This function should not compile if there is an attempt to instantiate!
Anasazi header file which uses auto-configuration information to include necessary C++ headers...
Types and exceptions used within Anasazi solvers and interfaces.
Exceptions thrown to signal error in operator application.