EpetraExt_PointToBlockDiagPermute: A class for managing point-to-block-diagonal permutations.  
 More...
#include <EpetraExt_PointToBlockDiagPermute.h>
|  | 
| virtual void | Print (std::ostream &os) const | 
|  | Print information about this object to the given output stream.  More... 
 | 
|  | 
|  | 
| 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... 
 | 
|  | 
|  | 
| 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... 
 | 
|  | 
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 | ) |  | 
      
 
 
  
  | 
        
          | EpetraExt_PointToBlockDiagPermute::~EpetraExt_PointToBlockDiagPermute | ( |  | ) |  |  | virtual | 
 
 
  
  | 
        
          | virtual int EpetraExt_PointToBlockDiagPermute::SetUseTranspose | ( | bool |  | ) |  |  | inlinevirtual | 
 
Set whether to use the transpose. 
- Returns
- 0 if this class can change its transpose state, else nonzero.
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.
 
 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::Compute | ( |  | ) |  |  | virtual | 
 
 
  
  | 
        
          | virtual double EpetraExt_PointToBlockDiagPermute::NormInf | ( |  | ) | const |  | inlinevirtual | 
 
 
  
  | 
        
          | virtual const char* EpetraExt_PointToBlockDiagPermute::Label | ( |  | ) | const |  | inlinevirtual | 
 
 
  
  | 
        
          | virtual bool EpetraExt_PointToBlockDiagPermute::UseTranspose | ( |  | ) | const |  | inlinevirtual | 
 
 
  
  | 
        
          | virtual bool EpetraExt_PointToBlockDiagPermute::HasNormInf | ( |  | ) | const |  | inlinevirtual | 
 
 
  
  | 
        
          | virtual const Epetra_Comm& EpetraExt_PointToBlockDiagPermute::Comm | ( |  | ) | const |  | inlinevirtual | 
 
 
  
  | 
        
          | virtual const Epetra_Map& EpetraExt_PointToBlockDiagPermute::OperatorDomainMap | ( |  | ) | const |  | inlinevirtual | 
 
 
  
  | 
        
          | virtual const Epetra_Map& EpetraExt_PointToBlockDiagPermute::OperatorRangeMap | ( |  | ) | const |  | inlinevirtual | 
 
 
  
  | 
        
          | void EpetraExt_PointToBlockDiagPermute::Print | ( | std::ostream & | os | ) | const |  | virtual | 
 
 
Imports an Epetra_DistObject using the Epetra_Import object. 
- Parameters
- 
  
    | 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. |  
 
- Returns
- Integer error code, set to 0 if successful. 
Definition at line 651 of file EpetraExt_PointToBlockDiagPermute.cpp.
 
 
Imports an Epetra_DistObject using the Epetra_Export object. 
- Parameters
- 
  
    | 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. |  
 
- Returns
- Integer error code, set to 0 if successful. 
Definition at line 656 of file EpetraExt_PointToBlockDiagPermute.cpp.
 
 
Exports an Epetra_DistObject using the Epetra_Import object. 
- Parameters
- 
  
    | 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. |  
 
- Returns
- Integer error code, set to 0 if successful. 
Definition at line 661 of file EpetraExt_PointToBlockDiagPermute.cpp.
 
 
Exports an Epetra_DistObject using the Epetra_Export object. 
- Parameters
- 
  
    | 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. |  
 
- Returns
- Integer error code, set to 0 if successful. 
Definition at line 666 of file EpetraExt_PointToBlockDiagPermute.cpp.
 
 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::PackAndPrepare | ( | const Epetra_SrcDistObject & | Source, |  
          |  |  | int | NumExportIDs, |  
          |  |  | int * | ExportLIDs, |  
          |  |  | int & | LenExports, |  
          |  |  | char *& | Exports, |  
          |  |  | int & | SizeOfPacket, |  
          |  |  | int * | Sizes, |  
          |  |  | bool & | VarSizes, |  
          |  |  | Epetra_Distributor & | Distor |  
          |  | ) |  |  |  | protectedvirtual | 
 
 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::ExtractBlockDiagonal | ( |  | ) |  |  | private | 
 
 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::SetupContiguousMode | ( |  | ) |  |  | private | 
 
 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::CleanupContiguousMode | ( |  | ) |  |  | private | 
 
 
  
  | 
        
          | void EpetraExt_PointToBlockDiagPermute::UpdateImportVector | ( | int | NumVectors | ) | const |  | private | 
 
 
  
  | 
        
          | void EpetraExt_PointToBlockDiagPermute::UpdateExportVector | ( | int | NumVectors | ) | const |  | private | 
 
 
template<typename int_type > 
 
 
template<typename int_type > 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::TSetupContiguousMode | ( |  | ) |  |  | private | 
 
 
template<typename int_type > 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::TExtractBlockDiagonal | ( |  | ) |  |  | private | 
 
 
template<typename int_type > 
 
 
template<typename int_type > 
  
  | 
        
          | const int_type* EpetraExt_PointToBlockDiagPermute::Blockids_const_ptr | ( |  | ) | const |  | private | 
 
 
template<typename int_type > 
  
  | 
        
          | int_type*& EpetraExt_PointToBlockDiagPermute::Blockids_ref | ( |  | ) |  |  | private | 
 
 
template<> 
  
  | 
        
          | const int* EpetraExt_PointToBlockDiagPermute::Blockids_const_ptr | ( |  | ) | const |  | inlineprivate | 
 
 
template<> 
  
  | 
        
          | int*& EpetraExt_PointToBlockDiagPermute::Blockids_ref | ( |  | ) |  |  | inlineprivate | 
 
 
template<> 
  
  | 
        
          | const long long* EpetraExt_PointToBlockDiagPermute::Blockids_const_ptr | ( |  | ) | const |  | inlineprivate | 
 
 
template<> 
  
  | 
        
          | long long*& EpetraExt_PointToBlockDiagPermute::Blockids_ref | ( |  | ) |  |  | inlineprivate | 
 
 
  
  | 
        
          | bool EpetraExt_PointToBlockDiagPermute::PurelyLocalMode_ |  | private | 
 
 
  
  | 
        
          | bool EpetraExt_PointToBlockDiagPermute::ContiguousBlockMode_ |  | private | 
 
 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::ContiguousBlockSize_ |  | private | 
 
 
  
  | 
        
          | int EpetraExt_PointToBlockDiagPermute::NumBlocks_ |  | private | 
 
 
  
  | 
        
          | int* EpetraExt_PointToBlockDiagPermute::Blockstart_ |  | private | 
 
 
  
  | 
        
          | int* EpetraExt_PointToBlockDiagPermute::Blockids_int_ |  | private | 
 
 
  
  | 
        
          | long long* EpetraExt_PointToBlockDiagPermute::Blockids_LL_ |  | private | 
 
 
  
  | 
        
          | Epetra_Map* EpetraExt_PointToBlockDiagPermute::CompatibleMap_ |  | private | 
 
 
The documentation for this class was generated from the following files: