EpetraExt Development
GenSQP_YUEpetraVector.hpp
Go to the documentation of this file.
00001 #ifndef GENSQP_YUEPETRAVECTOR_H
00002 #define GENSQP_YUEPETRAVECTOR_H
00003 
00004 #include "GenSQP_Vector.hpp"
00005 #include "Epetra_MultiVector.h"
00006 
00007 
00018 namespace GenSQP {
00019 
00020 class YUEpetraVector : public Vector {
00021 
00022 private:
00023   
00024   Teuchos::RefCountPtr<Epetra_MultiVector>  y_epetra_vec_;
00025   Teuchos::RefCountPtr<Epetra_MultiVector>  u_epetra_vec_;
00026 
00027 public:
00028 
00029   YUEpetraVector( const Teuchos::RefCountPtr<Epetra_MultiVector> &y_epetra_vec,
00030                   const Teuchos::RefCountPtr<Epetra_MultiVector> &u_epetra_vec );
00031 
00034 
00035   double innerProd( const Vector &x ) const;
00036 
00037   void linComb( const double &alpha, const Vector &x, const double &beta );
00038 
00039   void Scale( const double &alpha );
00040 
00041   void Set( const double &alpha );
00042 
00043   void Set( const double &alpha, const Vector &x );
00044 
00045   Teuchos::RefCountPtr<Vector> createVector() const;
00046 
00048   
00051   Teuchos::RefCountPtr<const Epetra_MultiVector> getYVector() const;
00052 
00055   Teuchos::RefCountPtr<const Epetra_MultiVector> getUVector() const;
00056 
00057 
00058 }; // class YUEpetraVector
00059 
00060 } // namespace GenSQP
00061 
00062 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines