43 #ifndef IFPACK_DROPFILTER_H
44 #define IFPACK_DROPFILTER_H
46 #if defined(Ifpack_SHOW_DEPRECATED_WARNINGS)
48 #warning "The Ifpack package is deprecated"
52 #include "Ifpack_ConfigDefs.h"
53 #include "Epetra_RowMatrix.h"
54 #include "Teuchos_RefCountPtr.hpp"
100 NumEntries = NumEntries_[MyRow];
107 return(MaxNumEntries_);
110 virtual int ExtractMyRowCopy(
int MyRow,
int Length,
int & NumEntries,
double *Values,
int * Indices)
const;
112 virtual int ExtractDiagonalCopy(
Epetra_Vector & Diagonal)
const;
117 virtual int Solve(
bool Upper,
bool Trans,
bool UnitDiagonal,
131 return(A_->LeftScale(x));
138 return(A_->RightScale(x));
141 virtual bool Filled()
const
143 return(A_->Filled());
146 virtual double NormInf()
const
151 virtual double NormOne()
const
156 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
157 virtual int NumGlobalNonzeros()
const
159 return(NumNonzeros_);
162 virtual int NumGlobalRows()
const
167 virtual int NumGlobalCols()
const
172 virtual int NumGlobalDiagonals()
const
178 virtual long long NumGlobalNonzeros64()
const
180 return(NumNonzeros_);
183 virtual long long NumGlobalRows64()
const
188 virtual long long NumGlobalCols64()
const
193 virtual long long NumGlobalDiagonals64()
const
198 virtual int NumMyNonzeros()
const
200 return(NumNonzeros_);
203 virtual int NumMyRows()
const
208 virtual int NumMyCols()
const
213 virtual int NumMyDiagonals()
const
218 virtual bool LowerTriangular()
const
223 virtual bool UpperTriangular()
const
228 virtual const Epetra_Map & RowMatrixRowMap()
const
230 return(A_->RowMatrixRowMap());
233 virtual const Epetra_Map & RowMatrixColMap()
const
235 return(A_->RowMatrixColMap());
240 return(A_->RowMatrixImporter());
243 int SetUseTranspose(
bool useTranspose)
245 return(A_->SetUseTranspose(useTranspose));
248 bool UseTranspose()
const
250 return(A_->UseTranspose());
253 bool HasNormInf()
const
265 return(A_->OperatorDomainMap());
270 return(A_->OperatorRangeMap());
278 const char* Label()
const{
285 Teuchos::RefCountPtr<Epetra_RowMatrix> A_;
297 mutable std::vector<int> Indices_;
299 mutable std::vector<double> Values_;
302 std::vector<int> NumEntries_;
virtual int MaxNumEntries() const
Returns the maximum number of entries.
Ifpack_DropFilter: Filter based on matrix entries.
virtual int NumMyRowEntries(int MyRow, int &NumEntries) const
Returns the number of entries in MyRow.
virtual ~Ifpack_DropFilter()
Destructor.
Ifpack_DropFilter(const Teuchos::RefCountPtr< Epetra_RowMatrix > &Matrix, double DropTol)
Constructor.