#include <EpetraExt_PointToBlockDiagPermute.h>
Inheritance diagram for EpetraExt_PointToBlockDiagPermute:

| EpetraExt_PointToBlockDiagPermute (const Epetra_CrsMatrix &MAT) | |
| Constructor. | |
Destructor | |
| virtual | ~EpetraExt_PointToBlockDiagPermute () |
| Destructor. | |
Atribute set methods | |
| virtual int | SetParameters (Teuchos::ParameterList &List) |
| Sets the parameter list. | |
| virtual int | SetUseTranspose (bool UseTranspose) |
| If set true, transpose of this operator will be applied. NOT IMPLEMENTED. | |
| virtual int | Compute () |
| Extracts the block-diagonal, builds maps, etc. | |
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. | |
| 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. | |
| virtual double | NormInf () const |
| Returns the infinity norm of the global matrix - NOT IMPLEMENTED. | |
Atribute access functions | |
| virtual const char * | Label () const |
| Returns a character string describing the operator. | |
| virtual bool | UseTranspose () const |
| Returns the current UseTranspose setting. | |
| virtual bool | HasNormInf () const |
| Returns true if the this object can provide an approximate Inf-norm, false otherwise. | |
| virtual const Epetra_Comm & | Comm () const |
| Returns a pointer to the Epetra_Comm communicator associated with this operator. | |
| virtual const Epetra_Map & | OperatorDomainMap () const |
| Returns the Epetra_Map object associated with the domain of this. | |
| virtual const Epetra_Map & | OperatorRangeMap () const |
| Returns the Epetra_Map object associated with the range of this. | |
| virtual const EpetraExt_BlockDiagMatrix & | BlockMatrix () |
| Returns the block matrix. Only call this after calling Compute. | |
Miscellaneous | |
| virtual void | Print (ostream &os) const |
| Print method. | |
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. | |
| 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. | |
| 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. | |
| 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. | |
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. | |
| virtual int | CopyAndPermute (const Epetra_SrcDistObject &Source, int NumSameIDs, int NumPermuteIDs, int *PermuteToLIDs, int *PermuteFromLIDs, const Epetra_OffsetIndex *Indexor) |
| Perform ID copies and permutations that are on processor. | |
| 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(). | |
| 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(). | |
Manages point-to-block-diagonal permutations (and vice versa) as well as service routines for extracting block diagonals from matrices.
Definition at line 58 of file EpetraExt_PointToBlockDiagPermute.h.
| EpetraExt_PointToBlockDiagPermute::EpetraExt_PointToBlockDiagPermute | ( | const Epetra_CrsMatrix & | MAT | ) |
| EpetraExt_PointToBlockDiagPermute::~EpetraExt_PointToBlockDiagPermute | ( | ) | [virtual] |
| int EpetraExt_PointToBlockDiagPermute::SetParameters | ( | Teuchos::ParameterList & | List | ) | [virtual] |
| virtual int EpetraExt_PointToBlockDiagPermute::SetUseTranspose | ( | bool | UseTranspose | ) | [inline, virtual] |
If set true, transpose of this operator will be applied. NOT IMPLEMENTED.
Implements Epetra_Operator.
Definition at line 81 of file EpetraExt_PointToBlockDiagPermute.h.
| int EpetraExt_PointToBlockDiagPermute::Compute | ( | ) | [virtual] |
Extracts the block-diagonal, builds maps, etc.
Definition at line 74 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::Apply | ( | const Epetra_MultiVector & | X, | |
| Epetra_MultiVector & | Y | |||
| ) | const [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 81 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::ApplyInverse | ( | const Epetra_MultiVector & | X, | |
| Epetra_MultiVector & | Y | |||
| ) | const [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 88 of file EpetraExt_PointToBlockDiagPermute.cpp.
| virtual double EpetraExt_PointToBlockDiagPermute::NormInf | ( | ) | const [inline, virtual] |
Returns the infinity norm of the global matrix - NOT IMPLEMENTED.
Implements Epetra_Operator.
Definition at line 117 of file EpetraExt_PointToBlockDiagPermute.h.
| virtual const char* EpetraExt_PointToBlockDiagPermute::Label | ( | ) | const [inline, virtual] |
Returns a character string describing the operator.
Implements Epetra_Operator.
Definition at line 124 of file EpetraExt_PointToBlockDiagPermute.h.
| virtual bool EpetraExt_PointToBlockDiagPermute::UseTranspose | ( | ) | const [inline, virtual] |
Returns the current UseTranspose setting.
Implements Epetra_Operator.
Definition at line 127 of file EpetraExt_PointToBlockDiagPermute.h.
| virtual bool EpetraExt_PointToBlockDiagPermute::HasNormInf | ( | ) | const [inline, virtual] |
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Implements Epetra_Operator.
Definition at line 130 of file EpetraExt_PointToBlockDiagPermute.h.
| virtual const Epetra_Comm& EpetraExt_PointToBlockDiagPermute::Comm | ( | ) | const [inline, virtual] |
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Reimplemented from Epetra_DistObject.
Definition at line 133 of file EpetraExt_PointToBlockDiagPermute.h.
| virtual const Epetra_Map& EpetraExt_PointToBlockDiagPermute::OperatorDomainMap | ( | ) | const [inline, virtual] |
Returns the Epetra_Map object associated with the domain of this.
Implements Epetra_Operator.
Definition at line 137 of file EpetraExt_PointToBlockDiagPermute.h.
| virtual const Epetra_Map& EpetraExt_PointToBlockDiagPermute::OperatorRangeMap | ( | ) | const [inline, virtual] |
Returns the Epetra_Map object associated with the range of this.
Implements Epetra_Operator.
Definition at line 141 of file EpetraExt_PointToBlockDiagPermute.h.
| virtual const EpetraExt_BlockDiagMatrix& EpetraExt_PointToBlockDiagPermute::BlockMatrix | ( | ) | [inline, virtual] |
Returns the block matrix. Only call this after calling Compute.
Definition at line 145 of file EpetraExt_PointToBlockDiagPermute.h.
| void EpetraExt_PointToBlockDiagPermute::Print | ( | ostream & | os | ) | const [virtual] |
Print method.
Reimplemented from Epetra_DistObject.
Definition at line 140 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. |
Reimplemented from Epetra_DistObject.
Definition at line 433 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. |
Reimplemented from Epetra_DistObject.
Definition at line 438 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. |
Reimplemented from Epetra_DistObject.
Definition at line 443 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. |
Reimplemented from Epetra_DistObject.
Definition at line 448 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::CheckSizes | ( | const Epetra_SrcDistObject & | Source | ) | [protected, virtual] |
Allows the source and target (this) objects to be compared for compatibility, return nonzero if not.
Implements Epetra_DistObject.
Definition at line 454 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::CopyAndPermute | ( | const Epetra_SrcDistObject & | Source, | |
| int | NumSameIDs, | |||
| int | NumPermuteIDs, | |||
| int * | PermuteToLIDs, | |||
| int * | PermuteFromLIDs, | |||
| const Epetra_OffsetIndex * | Indexor | |||
| ) | [protected, virtual] |
Perform ID copies and permutations that are on processor.
Implements Epetra_DistObject.
Definition at line 460 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 | |||
| ) | [protected, virtual] |
Perform any packing or preparation required for call to DoTransfer().
Implements Epetra_DistObject.
Definition at line 471 of file EpetraExt_PointToBlockDiagPermute.cpp.
| int EpetraExt_PointToBlockDiagPermute::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 | |||
| ) | [protected, virtual] |
Perform any unpacking and combining after call to DoTransfer().
Implements Epetra_DistObject.
Definition at line 485 of file EpetraExt_PointToBlockDiagPermute.cpp.
1.4.7