Epetra_SerialDenseOperator.h

Go to the documentation of this file.
00001 
00002 /* Copyright (2001) Sandia Corportation. Under the terms of Contract 
00003  * DE-AC04-94AL85000, there is a non-exclusive license for use of this 
00004  * work by or on behalf of the U.S. Government.  Export of this program
00005  * may require a license from the United States Government. */
00006 
00007 
00008 /* NOTICE:  The United States Government is granted for itself and others
00009  * acting on its behalf a paid-up, nonexclusive, irrevocable worldwide
00010  * license in ths data to reproduce, prepare derivative works, and
00011  * perform publicly and display publicly.  Beginning five (5) years from
00012  * July 25, 2001, the United States Government is granted for itself and
00013  * others acting on its behalf a paid-up, nonexclusive, irrevocable
00014  * worldwide license in this data to reproduce, prepare derivative works,
00015  * distribute copies to the public, perform publicly and display
00016  * publicly, and to permit others to do so.
00017  * 
00018  * NEITHER THE UNITED STATES GOVERNMENT, NOR THE UNITED STATES DEPARTMENT
00019  * OF ENERGY, NOR SANDIA CORPORATION, NOR ANY OF THEIR EMPLOYEES, MAKES
00020  * ANY WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LEGAL LIABILITY OR
00021  * RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF ANY
00022  * INFORMATION, APPARATUS, PRODUCT, OR PROCESS DISCLOSED, OR REPRESENTS
00023  * THAT ITS USE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS. */
00024 
00025 #ifndef _EPETRA_SERIALDENSEOPERATOR_H_
00026 #define _EPETRA_SERIALDENSEOPERATOR_H_
00027 
00028 class Epetra_SerialDenseMatrix;
00029 
00031 
00038 class Epetra_SerialDenseOperator {
00039       
00040  public:
00041 
00043 
00044 
00045     virtual ~Epetra_SerialDenseOperator() {};
00047   
00049 
00050 
00052 
00061     virtual int SetUseTranspose(bool UseTranspose) = 0;
00063   
00065 
00066 
00068 
00076     virtual int Apply(const Epetra_SerialDenseMatrix& X, Epetra_SerialDenseMatrix& Y) = 0;
00077 
00079 
00088     virtual int ApplyInverse(const Epetra_SerialDenseMatrix & X, Epetra_SerialDenseMatrix & Y) = 0;
00089 
00091     /* Returns the quantity \f$ \| A \|_\infty\f$ such that
00092        \f[\| A \|_\infty = \max_{1\lei\lem} \sum_{j=1}^n |a_{ij}| \f].
00093 
00094        \warning This method must not be called unless HasNormInf() returns true.
00095     */ 
00096     virtual double NormInf() const = 0;
00098   
00100 
00101 
00103     virtual const char * Label() const = 0;
00104 
00106     virtual bool UseTranspose() const = 0;
00107 
00109     virtual bool HasNormInf() const = 0;
00110 
00112     virtual int RowDim() const = 0;
00113 
00115     virtual int ColDim() const = 0;
00117 
00118 };
00119 
00120 #endif /* _EPETRA_OPERATOR_H_ */

Generated on Thu Sep 18 12:37:58 2008 for Epetra Package Browser (Single Doxygen Collection) by doxygen 1.3.9.1