|
EpetraExt Development
|
00001 #ifndef GENSQP_VECTOR_H 00002 #define GENSQP_VECTOR_H 00003 00004 #include "Teuchos_RefCountPtr.hpp" 00005 00017 namespace GenSQP { 00018 00019 class Vector { 00020 public: 00021 00022 virtual ~Vector() {} 00023 00026 virtual double innerProd( const Vector &x ) const = 0; 00027 00030 virtual void linComb( const double &alpha, const Vector &x, const double &beta = 1.0 ) = 0; 00031 00034 virtual void Scale( const double &alpha ) = 0; 00035 00038 virtual void Set( const double &alpha ) = 0; 00039 00042 virtual void Set( const double &alpha, const Vector &x ) = 0; 00043 00046 virtual Teuchos::RefCountPtr<Vector> createVector() const = 0; 00047 00048 }; // class Vector 00049 00050 } // namespace GenSQP 00051 00052 #endif
1.7.4