| 
    EpetraExt
    Development
    
   | 
 
EpetraExt_PointToBlockDiagPermute: A class for managing point-to-block-diagonal permutations. More...
#include <EpetraExt_PointToBlockDiagPermute.h>

| EpetraExt_PointToBlockDiagPermute (const Epetra_CrsMatrix &MAT) | |
| @ Name Constructors  More... | |
Destructor | |
| virtual | ~EpetraExt_PointToBlockDiagPermute () | 
| Destructor.  More... | |
Attribute set methods | |
| virtual int | SetParameters (Teuchos::ParameterList &List) | 
| Sets the parameter list.  More... | |
| virtual int | SetUseTranspose (bool) | 
| Set whether to use the transpose.  More... | |
| virtual int | Compute () | 
| Extracts the block-diagonal, builds maps, etc.  More... | |
Mathematical functions | |
| virtual int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const | 
| Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.  More... | |
| virtual int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const | 
| Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.  More... | |
| virtual double | NormInf () const | 
| Returns the infinity norm of the global matrix - NOT IMPLEMENTED.  More... | |
Attribute access functions | |
| virtual const char * | Label () const | 
| Return a string describing the operator.  More... | |
| virtual bool | UseTranspose () const | 
| Return the current UseTranspose setting.  More... | |
| virtual bool | HasNormInf () const | 
| Return true if the this object can provide an approximate Inf-norm, false otherwise.  More... | |
| virtual const Epetra_Comm & | Comm () const | 
| Return a pointer to the Epetra_Comm communicator associated with this operator.  More... | |
| virtual const Epetra_Map & | OperatorDomainMap () const | 
| Return the Epetra_Map object associated with the domain of this operator.  More... | |
| virtual const Epetra_Map & | OperatorRangeMap () const | 
| Return the Epetra_Map object associated with the range of this operator.  More... | |
| virtual const  EpetraExt_BlockDiagMatrix &  | BlockMatrix () | 
| Return the block matrix. Only call this after calling Compute.  More... | |
| virtual Epetra_FECrsMatrix * | CreateFECrsMatrix () | 
| Create an Epetra_FECrsMatrix from the BlockDiagMatrix.  More... | |
Miscellaneous | |
| virtual void | Print (std::ostream &os) const | 
| Print information about this object to the given output stream.  More... | |
Import/Export Methods | |
| int | Import (const Epetra_SrcDistObject &A, const Epetra_Import &Importer, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0) | 
| Imports an Epetra_DistObject using the Epetra_Import object.  More... | |
| int | Import (const Epetra_SrcDistObject &A, const Epetra_Export &Exporter, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0) | 
| Imports an Epetra_DistObject using the Epetra_Export object.  More... | |
| int | Export (const Epetra_SrcDistObject &A, const Epetra_Import &Importer, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0) | 
| Exports an Epetra_DistObject using the Epetra_Import object.  More... | |
| int | Export (const Epetra_SrcDistObject &A, const Epetra_Export &Exporter, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0) | 
| Exports an Epetra_DistObject using the Epetra_Export object.  More... | |
Internal utilities | |
| virtual int | CheckSizes (const Epetra_SrcDistObject &Source) | 
| Allows the source and target (this) objects to be compared for compatibility, return nonzero if not.  More... | |
| virtual int | CopyAndPermute (const Epetra_SrcDistObject &Source, int NumSameIDs, int NumPermuteIDs, int *PermuteToLIDs, int *PermuteFromLIDs, const Epetra_OffsetIndex *Indexor, Epetra_CombineMode CombineMode=Zero) | 
| Perform ID copies and permutations that are on processor.  More... | |
| virtual int | PackAndPrepare (const Epetra_SrcDistObject &Source, int NumExportIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &SizeOfPacket, int *Sizes, bool &VarSizes, Epetra_Distributor &Distor) | 
| Perform any packing or preparation required for call to DoTransfer().  More... | |
| virtual int | UnpackAndCombine (const Epetra_SrcDistObject &Source, int NumImportIDs, int *ImportLIDs, int LenImports, char *Imports, int &SizeOfPacket, Epetra_Distributor &Distor, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor) | 
| Perform any unpacking and combining after call to DoTransfer().  More... | |
Additional Inherited Members | 
EpetraExt_PointToBlockDiagPermute: A class for managing point-to-block-diagonal permutations.
Manages point-to-block-diagonal permutations (and vice versa) as well as service routines for extracting block diagonals from matrices.
Definition at line 72 of file EpetraExt_PointToBlockDiagPermute.h.
| EpetraExt_PointToBlockDiagPermute::EpetraExt_PointToBlockDiagPermute | ( | const Epetra_CrsMatrix & | MAT | ) | 
@ Name Constructors
Constructor
Definition at line 58 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  virtual | 
Destructor.
Definition at line 83 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  virtual | 
Sets the parameter list.
Definition at line 137 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  inlinevirtual | 
Set whether to use the transpose.
This class does NOT know how to apply its transpose, so this method always returns an error code.
Implements Epetra_Operator.
Definition at line 100 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  virtual | 
Extracts the block-diagonal, builds maps, etc.
Definition at line 155 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  virtual | 
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.
| In | X - A Epetra_MultiVector of dimension NumVectors to multiply with matrix. | 
| Out | Y -A Epetra_MultiVector of dimension NumVectors containing result. | 
Implements Epetra_Operator.
Definition at line 162 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  virtual | 
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.
| In | X - A Epetra_MultiVector of dimension NumVectors to solve for. | 
| Out | Y -A Epetra_MultiVector of dimension NumVectors containing result. | 
Implements Epetra_Operator.
Definition at line 169 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  inlinevirtual | 
Returns the infinity norm of the global matrix - NOT IMPLEMENTED.
Implements Epetra_Operator.
Definition at line 136 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  inlinevirtual | 
Return a string describing the operator.
Implements Epetra_Operator.
Definition at line 143 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  inlinevirtual | 
Return the current UseTranspose setting.
Implements Epetra_Operator.
Definition at line 146 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  inlinevirtual | 
Return true if the this object can provide an approximate Inf-norm, false otherwise.
Implements Epetra_Operator.
Definition at line 149 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  inlinevirtual | 
Return a pointer to the Epetra_Comm communicator associated with this operator.
Implements Epetra_Operator.
Definition at line 152 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  inlinevirtual | 
Return the Epetra_Map object associated with the domain of this operator.
Implements Epetra_Operator.
Definition at line 155 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  inlinevirtual | 
Return the Epetra_Map object associated with the range of this operator.
Implements Epetra_Operator.
Definition at line 158 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  inlinevirtual | 
Return the block matrix. Only call this after calling Compute.
Definition at line 161 of file EpetraExt_PointToBlockDiagPermute.h.
      
  | 
  virtual | 
Create an Epetra_FECrsMatrix from the BlockDiagMatrix.
This is generally only useful if you want to do a matrix-matrix multiply.
Definition at line 602 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  virtual | 
Print information about this object to the given output stream.
Reimplemented from Epetra_DistObject.
Definition at line 221 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::Import | ( | const Epetra_SrcDistObject & | A, | 
| const Epetra_Import & | Importer, | ||
| Epetra_CombineMode | CombineMode, | ||
| const Epetra_OffsetIndex * | Indexor = 0  | 
        ||
| ) | 
Imports an Epetra_DistObject using the Epetra_Import object.
| In | Source - Distributed object that will be imported into the "\e this" object. | 
| In | Importer - A Epetra_Import object specifying the communication required. | 
| In | CombineMode - A Epetra_CombineMode enumerated type specifying how results should be combined on the receiving processor. | 
Definition at line 651 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::Import | ( | const Epetra_SrcDistObject & | A, | 
| const Epetra_Export & | Exporter, | ||
| Epetra_CombineMode | CombineMode, | ||
| const Epetra_OffsetIndex * | Indexor = 0  | 
        ||
| ) | 
Imports an Epetra_DistObject using the Epetra_Export object.
| In | Source - Distributed object that will be imported into the "\e this" object. | 
| In | Exporter - A Epetra_Export object specifying the communication required. | 
| In | CombineMode - A Epetra_CombineMode enumerated type specifying how results should be combined on the receiving processor. | 
Definition at line 656 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::Export | ( | const Epetra_SrcDistObject & | A, | 
| const Epetra_Import & | Importer, | ||
| Epetra_CombineMode | CombineMode, | ||
| const Epetra_OffsetIndex * | Indexor = 0  | 
        ||
| ) | 
Exports an Epetra_DistObject using the Epetra_Import object.
| In | Source - Distributed object that will be exported to the "\e this" object. | 
| In | Importer - A Epetra_Import object specifying the communication required. | 
| In | CombineMode - A Epetra_CombineMode enumerated type specifying how results should be combined on the receiving processor. | 
Definition at line 661 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::Export | ( | const Epetra_SrcDistObject & | A, | 
| const Epetra_Export & | Exporter, | ||
| Epetra_CombineMode | CombineMode, | ||
| const Epetra_OffsetIndex * | Indexor = 0  | 
        ||
| ) | 
Exports an Epetra_DistObject using the Epetra_Export object.
| In | Source - Distributed object that will be exported to the "\e this" multivector. | 
| In | Exporter - A Epetra_Export object specifying the communication required. | 
| In | CombineMode - A Epetra_CombineMode enumerated type specifying how results should be combined on the receiving processor. | 
Definition at line 666 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  protectedvirtual | 
Allows the source and target (this) objects to be compared for compatibility, return nonzero if not.
Implements Epetra_DistObject.
Definition at line 672 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  protectedvirtual | 
Perform ID copies and permutations that are on processor.
Implements Epetra_DistObject.
Definition at line 678 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  protectedvirtual | 
Perform any packing or preparation required for call to DoTransfer().
Implements Epetra_DistObject.
Definition at line 690 of file EpetraExt_PointToBlockDiagPermute.cpp.
      
  | 
  protectedvirtual | 
Perform any unpacking and combining after call to DoTransfer().
Implements Epetra_DistObject.
Definition at line 704 of file EpetraExt_PointToBlockDiagPermute.cpp.
 1.8.5