Epetra_Combine Mode enumerable type.
More...
Epetra_Combine Mode enumerable type.
◆ Epetra_CombineMode
If set to Add, components on the receiving processor will be added together. If set to Zero, off-processor components will be ignored. If set to Insert, off-processor components will replace existing components on the receiving processor. If set to InsertAdd, off-processor components will replace existing components, but multiple off-processor contributions will be added. If set to Average, off-processor components will be averaged with existing components on the receiving processor. (Recursive Binary Average) If set to AbsMax, magnitudes of off-processor components will be maxed with magnitudes of existing components of the receiving processor. { V = Supported by Epetra_Vector and Epetra_MultiVector, M = Supported by Epetra_CrsMatrix and Epetra_VbrMatrix }
| Enumerator |
|---|
| Add | Components on the receiving processor will be added together. (V,M)
|
| Zero | Off-processor components will be ignored. (V,M)
|
| Insert | Off-processor components will be inserted into locations on receiving processor replacing existing values. (V,M)
|
| InsertAdd | Off-processor components will be inserted into locations on receiving processor replacing existing values. (V,M)
|
| Average | Off-processor components will be averaged with existing components on the receiving processor. (V)
|
| Epetra_Max | Off-processor components will be maxed with existing components on the receiving processor. (V)
|
| Epetra_Min | Off-processor components will be min'ed with existing components on the receiving processor. (V)
|
| AbsMax | Magnitudes of Off-processor components will be maxed with magnitudes of existing components on the receiving processor. (V)
|
| AbsMin | Magnitudes of Off-processor components will be min'ed with magnitudes of existing components on the receiving processor. (V)
|
| Epetra_AddLocalAlso | Like Add but local components are also added
|
int NumGlobalBlockEntries(int Row) const
Returns the current number of nonzero Block entries in specified global row on this processor.
Definition: Epetra_VbrMatrix.h:995
int Scale(double ScalarConstant)
Multiply all values in the matrix by a constant value (in place: A <- ScalarConstant * A).
Epetra_BlockMap * GenerateBlockMap(int Color) const
Generates an Epetra_BlockMap of the GIDs associated with the specified color.
Epetra_BasicRowMatrix: A class for simplifying the development of Epetra_RowMatrix adapters.
Definition: Epetra_BasicRowMatrix.h:110
int GatherAll(long long *MyVals, long long *AllVals, int Count) const
Epetra_SerialComm All Gather function.
Epetra_CrsMatrix & operator=(const Epetra_CrsMatrix &src)
Assignment operator.
bool operator!=(const Epetra_LongLongSerialDenseMatrix &rhs) const
Inequality operator.
Definition: Epetra_LongLongSerialDenseMatrix.h:240
bool Copy_Created() const
Returns true if a deep copy of the multi-vector was created by the constructor.
virtual const Epetra_Comm & Comm() const =0
Returns a pointer to the Epetra_Comm communicator associated with this operator.
MPI_Comm GetMpiComm() const
Get the MPI Communicator (identical to Comm() method; used when we know we are MPI.
Definition: Epetra_MpiComm.h:486
int ** SameOffsets() const
Accessor.
Definition: Epetra_OffsetIndex.h:86
int DoReversePosts(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Do reverse post of buffer of export objects (can do other local work before executing Waits)
const Epetra_Export * Exporter() const
Returns the Epetra_Export object that contains the export operations for distributed operations.
Definition: Epetra_VbrMatrix.h:1042
int ComputeEquilibrateScaling(void)
Computes the scaling vector S(i) = 1/sqrt(A(i,i) of the this matrix.
int NumMyRowEntries(int MyRow, int &NumEntries) const
Return the current number of values stored for the specified local row.
int NumMyBlockEntries(int Row) const
Returns the current number of nonzero Block entries in specified local row on this processor.
Definition: Epetra_VbrMatrix.h:1007
const Epetra_BlockMap & DomainMap() const
Returns the DomainMap associated with this graph.
Definition: Epetra_CrsGraph.h:836
int SumIntoMyValue(int MyRow, int VectorIndex, int OrdinalValue)
Adds OrdinalValue to existing value at the specified (MyRow, VectorIndex) location.
virtual bool UpperTriangular() const =0
If matrix is upper triangular in local index space, this query returns true, otherwise it returns fal...
int MinAll(double *PartialMins, double *GlobalMins, int Count) const
Epetra_MpiComm Global Min function.
MPI_Comm Comm() const
Extract MPI Communicator from a Epetra_MpiSmpComm object.
Definition: Epetra_MpiSmpComm.h:377
int & operator()(int Index)
Element access function.
Definition: Epetra_IntSerialDenseVector.h:264
int GlobalMaxNumBlockEntries() const
Returns the maximum number of nonzero entries across all rows on this processor.
Definition: Epetra_VbrMatrix.h:1004
int UpdateTransposeValues(Epetra_RowMatrix *MatrixWithNewValues)
Update the values of an already-redistributed problem.
Epetra_Object: The base Epetra class.
Definition: Epetra_Object.h:57
int GatherAll(int *MyVals, int *AllVals, int Count) const
Epetra_SerialComm All Gather function.
int ResetView(double **ArrayOfPointers)
Reset the view of an existing multivector to point to new user data.
int M() const
Returns row dimension of system.
Definition: Epetra_SerialDenseMatrix.h:377
virtual int Broadcast(long *MyVals, int Count, int Root) const =0
Epetra_Comm Broadcast function.
void ResetFlops()
Resets the number of floating point operations to zero for this multi-vector.
Definition: Epetra_Flops.h:77
int NumGlobalRows() const
Returns the number of global matrix rows.
Definition: Epetra_CrsMatrix.h:1076
Epetra_MpiComm(MPI_Comm comm)
Epetra_MpiComm MPI Constructor.
static int GetPidGidPairs(const Epetra_Import &Importer, std::vector< std::pair< int, int > > &gpids, bool use_minus_one_for_local)
Epetra_Util GetPidGidPairs function.
int SetHintMultiplyAndMatTransMultiply(bool TransA, double Alpha, const Epetra_OskiMultiVector &InVec, double Beta, const Epetra_OskiMultiVector &OutVec, double Omega, const Epetra_OskiMultiVector &InVec2, double Zeta, const Epetra_OskiMultiVector &OutVec2, int NumCalls, const Teuchos::ParameterList &List)
Workload hints for computing two matrix-vector multiplies used by OskiTuneMat to optimize the data st...
Epetra_LongLongSerialDenseVector(Epetra_DataAccess CV_in, long long *Values_in, int Length_in)
Set object values from one-dimensional array.
virtual ~Epetra_IntSerialDenseVector()
Epetra_IntSerialDenseVector destructor.
Epetra_MpiSmpComm & operator=(const Epetra_MpiSmpComm &Comm)
Assignment Operator.
int PutScalar(int OrdinalConstant)
Initialize all values in a multi-vector with constant value.
Epetra_MpiSmpComm: The Epetra MPI Shared Memory Parallel Communication Class.
Definition: Epetra_MpiSmpComm.h:62
Epetra_FastCrsOperator(const Epetra_CrsMatrix &Matrix, bool UseFloats=false)
Epetra_FastCrsOperator constuctor.
bool LowerTriangular() const
If matrix is lower triangular in local index space, this query returns true, otherwise it returns fal...
Definition: Epetra_VbrMatrix.h:870
void SYMM(const char SIDE, const char UPLO, const int M, const int N, const double ALPHA, const double *A, const int LDA, const double *B, const int LDB, const double BETA, double *C, const int LDC) const
Epetra_BLAS matrix-matrix multiply function (DSYMM)
int NumGlobalDiagonals() const
Returns the number of global nonzero diagonal entries, based on global row/column index comparisions.
Definition: Epetra_VbrMatrix.h:990
void GEQRF(const int M, const int N, float *A, const int LDA, float *TAU, float *WORK, const int lwork, int *INFO) const
Epetra_LAPACK QR factorization for general matrix (SGEQRF)
int BeginInsertGlobalValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate insertion of a list of elements in a given global row of the matrix, values are inserted via...
int NumMyIndices(int Row) const
Returns the current number of nonzero entries in specified local row on this processor.
Definition: Epetra_CrsGraph.h:759
virtual int GatherAll(long *MyVals, long *AllVals, int Count) const =0
Epetra_Comm All Gather function.
int NumGlobalCols() const
Returns the number of matrix columns in global matrix.
Definition: Epetra_CrsGraph.h:579
int MaxAll(long long *PartialMaxs, long long *GlobalMaxs, int Count) const
Epetra_MpiComm Global Max function.
const Epetra_BlockMap & ColMap() const
Returns the ColMap as an Epetra_BlockMap (the Epetra_Map base class) needed for implementing Epetra_R...
Definition: Epetra_VbrMatrix.h:1054
int BeginExtractMyBlockRowCopy(int BlockRow, int MaxNumBlockEntries, int &RowDim, int &NumBlockEntries, int *BlockIndices, int *ColDims) const
Initiates a copy of the specified local row in user-provided arrays.
Epetra_SerialDenseVector: A class for constructing and using dense vectors.
Definition: Epetra_SerialDenseVector.h:95
virtual const Epetra_Map & RowMatrixRowMap() const
Returns the Row Map object needed for implementing Epetra_RowMatrix.
Definition: Epetra_BasicRowMatrix.h:415
Definition: Epetra_FEVbrMatrix.h:57
long long MaxValue()
Find maximum value.
int EndSubmitEntries()
Completes processing of all data passed in for the current block row.
int Multiply(char SideA, double ScalarAB, const Epetra_SerialSymDenseMatrix &A, const Epetra_SerialDenseMatrix &B, double ScalarThis)
Matrix-Matrix multiplication with a symmetric matrix A.
int InsertGlobalValues(int numIndices, const int *indices, const double *values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
bool Sorted() const
If SortIndices() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_CrsGraph.h:1103
int LDA() const
Returns the leading dimension of the this matrix.
Definition: Epetra_LongLongSerialDenseMatrix.h:315
int FillComplete()
Signal that data entry is complete, perform transformations to local index space.
const Epetra_Comm & Comm() const
Access function for Epetra_Comm communicator.
Definition: Epetra_BlockMap.h:770
int MyNodeID() const
Return my node ID.
Definition: Epetra_MpiSmpComm.h:429
void ResetStartTime(void)
Epetra_Time function to reset the start time for a timer object.
Epetra_IntVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, int *V)
Set vector values from user array.
virtual ~Epetra_VbrRowMatrix()
Epetra_VbrRowMatrix Destructor.
Definition: Epetra_VbrRowMatrix.h:89
void DecrementReferenceCount()
Decrement reference count.
virtual ~Epetra_OskiVector()
Destructor.
int * MyGlobalElements() const
Pointer to internal array containing list of global IDs assigned to the calling processor.
void LAMCH(const char CMACH, double &T) const
Epetra_LAPACK wrapper for SLAMCH routine. On out, T holds machine single precision floating point cha...
int * PermuteFromLIDs() const
List of elements in the source map that are permuted.
Definition: Epetra_Export.h:249
virtual int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const =0
Returns a copy of the main diagonal in a user-provided vector.
static Epetra_Map Create_OneToOne_Map(const Epetra_Map &usermap, bool high_rank_proc_owns_shared=false)
Epetra_Util Create_OneToOne_Map function.
int ReplaceGlobalValues(int numRows, const int *rows, int numCols, const int *cols, const double *values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
Epetra_CrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, const int *NumIndicesPerRow, bool StaticProfile=false)
Epetra_CrsGraph constuctor with variable number of indices per row.
int NumGlobalBlockCols() const
Returns the number of Block matrix columns in global matrix.
Definition: Epetra_CrsGraph.h:646
long long & operator[](int Index)
Element access function.
Definition: Epetra_LongLongSerialDenseVector.h:285
int MaxAll(long *PartialMaxs, long *GlobalMaxs, int Count) const
Epetra_MpiSmpComm Global Max function.
void SYGVX(const int ITYPE, const char JOBZ, const char RANGE, const char UPLO, const int N, float *A, const int LDA, float *B, const int LDB, const float *VL, const float *VU, const int *IL, const int *IU, const float ABSTOL, int *M, float *W, float *Z, const int LDZ, float *WORK, const int LWORK, int *IWORK, int *IFAIL, int *INFO) const
Epetra_LAPACK wrapper to compute selected eigenvalues, and optionally, eigenvectors of a real general...
virtual int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const =0
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.
Epetra_Flops * GetFlopCounter() const
Get the pointer to the Epetra_Flops() object associated with this object, returns 0 if none.
Definition: Epetra_CompObject.h:84
Epetra_LAPACK(void)
Epetra_LAPACK Constructor.
Definition: Epetra_LAPACK.h:425
const Epetra_Map & RowMatrixColMap() const
Returns the Epetra_Map object associated with columns of this matrix.
Definition: Epetra_VbrMatrix.h:1258
int ExtractMyBlockRowPointers(int BlockRow, int MaxNumBlockEntries, int &RowDim, int &NumBlockEntries, int *BlockIndices, Epetra_SerialDenseMatrix **&Values) const
Copy the block indices into user-provided array, set pointers for rest of data for specified local bl...
Epetra_Map * RemoveEmptyProcesses() const
Return a new BlockMap with processes with zero elements removed.
Epetra_Data(const Epetra_Data &Data)
Epetra_Data Copy Constructor.
Epetra_IntSerialDenseVector & ExpertExtractIndexOffset()
Returns a reference to the Epetra_IntSerialDenseVector used to hold the local IndexOffsets (CRS rowpt...
int GatherAll(double *MyVals, double *AllVals, int Count) const
Epetra_MpiComm All Gather function.
virtual ~Epetra_Map(void)
Epetra_Map destructor.
int NumGlobalCols() const
Returns the number of global matrix columns.
Definition: Epetra_VbrMatrix.h:933
void GGEV(const char JOBVL, const char JOBVR, const int N, double *A, const int LDA, double *B, const int LDB, double *ALPHAR, double *ALPHAI, double *BETA, double *VL, const int LDVL, double *VR, const int LDVR, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to compute for a pair of N-by-N real nonsymmetric matrices (A,...
int RightScale(const Epetra_Vector &x)
Scales the Epetra_CrsMatrix on the right with a Epetra_Vector x.
int LDA() const
Returns the leading dimension of the this matrix.
Definition: Epetra_IntSerialDenseMatrix.h:312
bool A_Equilibrated()
Returns true if factor is equilibrated (factor available via AF() and LDAF()).
Definition: Epetra_SerialDenseSolver.h:253
virtual double NormInf() const =0
Returns the infinity norm of the global matrix.
void SCAL(const int N, const float ALPHA, float *X, const int INCX=1) const
Epetra_BLAS vector scale function (SSCAL)
int NumMyElements() const
Number of elements on the calling processor.
Definition: Epetra_BlockMap.h:555
int ReplaceGlobalValue(int GlobalRow, int VectorIndex, int OrdinalValue)
Replace current value at the specified (GlobalRow, VectorIndex) location with OrdinalValue.
static void Sort(bool SortAscending, int NumKeys, T *Keys, int NumDoubleCompanions, double **DoubleCompanions, int NumIntCompanions, int **IntCompanions, int NumLongLongCompanions, long long **LongLongCompanions)
Epetra_Util Sort Routine (Shell sort)
bool HasNormInf() const
Returns true because this class can compute an Inf-norm.
Definition: Epetra_FastCrsMatrix.h:128
int SumAll(long long *PartialSums, long long *GlobalSums, int Count) const
Epetra_SerialComm Global Sum function.
double WallTime(void) const
Epetra_Time wall-clock time function.
bool MyLCID(int LCID_in) const
Returns true if the LRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsMatrix.h:1331
int NumMyRowEntries(int MyRow, int &NumEntries) const
Return the current number of values stored for the specified local row.
Definition: Epetra_VbrRowMatrix.h:163
int MyThreadID() const
Return my thread ID.
Definition: Epetra_MpiSmpComm.h:423
int ReciprocalMultiply(double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis)
Multiply a Epetra_MultiVector by the reciprocal of another, element-by-element.
int * PermuteFromLIDs() const
List of elements in the source map that are permuted.
Definition: Epetra_Import.h:268
Epetra_OskiVector(const Epetra_Vector &Source)
Constructor creates and Epetra_OskiVector from an Epetra_Vector.
Epetra_SerialDenseMatrix & operator=(const Epetra_SerialDenseMatrix &Source)
Value copy from one matrix to another.
int ReplaceGlobalValue(int GlobalRow, int VectorIndex, double ScalarValue)
Replace current value at the specified (GlobalRow, VectorIndex) location with ScalarValue.
long long NumGlobalRows64() const
Returns the number of global matrix rows.
Definition: Epetra_MsrMatrix.h:260
static Epetra_BlockMap Create_OneToOne_BlockMap(const Epetra_BlockMap &usermap, bool high_rank_proc_owns_shared=false)
Epetra_Util Create_OneToOne_Map function.
int GatherAll(long long *MyVals, long long *AllVals, int Count) const
Epetra_MpiComm All Gather function.
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_SerialDenseSVD.h:438
virtual ~Epetra_SerialSymDenseMatrix()
Epetra_SerialSymDenseMatrix destructor.
Epetra_OskiMultiVector(const Epetra_OskiMultiVector &Source)
Copy constructor.
bool HaveColMap() const
Returns true if we have a well-defined ColMap, and returns false otherwise.
Definition: Epetra_CrsGraph.h:548
virtual int NumProc() const =0
Returns total number of processes.
virtual int MinAll(long *PartialMins, long *GlobalMins, int Count) const =0
Epetra_Comm Global Min function.
const Epetra_Comm & Comm() const
Returns the address of the Epetra_Comm for this multi-vector.
Definition: Epetra_DistObject.h:195
double * B() const
Returns pointer to current RHS.
Definition: Epetra_SerialDenseSolver.h:305
int NumAllocatedMyBlockEntries(int Row) const
Returns the allocated number of nonzero Block entries in specified local row on this processor.
Definition: Epetra_VbrMatrix.h:1010
AZ_MATRIX * Amat() const
Returns a pointer to the Aztec Msr matrix used to create this object.
Definition: Epetra_MsrMatrix.h:224
double NormInf() const
Returns the infinity norm of the global matrix.
Definition: Epetra_InvOperator.h:125
int NumGlobalNonzeros() const
Returns the number of nonzero entries in the global matrix.
Definition: Epetra_VbrMatrix.h:945
int Reshape(int NumRows, int NumCols)
Reshape a Epetra_LongLongSerialDenseMatrix object.
bool LowerTriangular() const
If graph is lower triangular in local index space, this query returns true, otherwise it returns fals...
Definition: Epetra_CrsGraph.h:520
bool GlobalIndicesInt() const
Returns true if map create with int NumGlobalElements.
Definition: Epetra_BlockMap.h:653
int ExtractEntryView(Epetra_SerialDenseMatrix *&entry) const
Returns a pointer to the current block entry.
virtual void Print(std::ostream &os) const
Print method.
int SumIntoGlobalValues(int numRows, const int *rows, int numCols, const int *cols, const double *values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
int * PermuteToLIDs() const
List of elements in the target map that are permuted.
Definition: Epetra_Export.h:251
void POTRI(const char UPLO, const int N, float *A, const int LDA, int *INFO) const
Epetra_LAPACK inversion for positive definite matrix (SPOTRI)
Epetra_Data: The Epetra Base Data Class.
Definition: Epetra_Data.h:73
int GatherAll(int *MyVals, int *AllVals, int Count) const
Epetra_MpiComm All Gather function.
bool IndicesAreLocal() const
If matrix indices has been transformed to local, this query returns true, otherwise it returns false.
Definition: Epetra_CrsMatrix.h:1016
double COLCND() const
Ratio of smallest to largest column scale factors for the this matrix (returns -1 if not yet computed...
Definition: Epetra_SerialDenseSolver.h:342
int MinMyElementSize() const
Minimum element size on the calling processor.
Definition: Epetra_BlockMap.h:608
int ReplaceGlobalValues(const Epetra_IntSerialDenseVector &indices, const Epetra_SerialDenseMatrix &values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
double NRM2(const int N, const double *X, const int INCX=1) const
Epetra_BLAS norm function (DNRM2).
bool IndicesAreContiguous() const
If matrix indices are packed into single array (done in OptimizeStorage()) return true,...
Definition: Epetra_VbrMatrix.h:867
Epetra_MultiVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, double *A, int MyLDA, int NumVectors)
Set multi-vector values from two-dimensional array.
Epetra_IntSerialDenseVector(int Length_in)
Sized constructor; defines a variable-sized object.
virtual ~Epetra_SerialDenseSolver()
Epetra_SerialDenseSolver destructor.
int ReferenceCount() const
Returns the reference count of SerialCommData.
double DOT(const int N, const double *X, const double *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS dot product function (DDOT).
const Epetra_Import * Importer() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
Definition: Epetra_CrsMatrix.h:1245
int Broadcast(long *MyVals, int Count, int Root) const
Epetra_MpiSmpComm Broadcast function.
void SPEV(const char JOBZ, const char UPLO, const int N, double *AP, double *W, double *Z, int LDZ, double *WORK, int *INFO) const
Epetra_LAPACK wrapper to compute all the eigenvalues and, optionally, eigenvectors of a real symmetri...
double * Values() const
Get pointer to MultiVector values.
Definition: Epetra_MultiVector.h:985
int GetDirectoryEntries(const Epetra_BlockMap &Map, const int NumEntries, const int *GlobalEntries, int *Procs, int *LocalEntries, int *EntrySizes, bool high_rank_sharing_procs=false) const
GetDirectoryEntries : Returns proc and local id info for non-local map entries.
bool MyGlobalRow(int GID) const
Returns true of GID is owned by the calling processor, otherwise it returns false.
Definition: Epetra_CrsMatrix.h:1335
int ElementSize() const
Returns the size of elements in the map; only valid if map has constant element size.
Definition: Epetra_BlockMap.h:573
bool StorageOptimized() const
If OptimizeStorage() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_VbrMatrix.h:858
Epetra_MapColoring(const Epetra_BlockMap &Map, const int DefaultColor=0)
Epetra_MapColoring basic constructor.
Epetra_FEVbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, int *NumBlockEntriesPerRow, bool ignoreNonLocalEntries=false)
Epetra_FEVbrMatrix constuctor with variable number of indices per row.
Epetra_MpiComm & operator=(const Epetra_MpiComm &Comm)
Assignment Operator.
int NumMyEntries(int Row) const
Returns the current number of nonzero entries in specified local row on this processor.
Definition: Epetra_CrsMatrix.h:1142
void GETRF(const int M, const int N, float *A, const int LDA, int *IPIV, int *INFO) const
Epetra_LAPACK factorization for general matrix (SGETRF)
Epetra_FEVbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, int NumBlockEntriesPerRow, bool ignoreNonLocalEntries=false)
Epetra_FEVbrMatrix constuctor with fixed number of indices per row.
int SumAll(long *PartialSums, long *GlobalSums, int Count) const
Epetra_MpiSmpComm Global Sum function.
virtual void Print(std::ostream &os) const
Print service methods; defines behavior of ostream << operator.
void GGEV(const char JOBVL, const char JOBVR, const int N, float *A, const int LDA, float *B, const int LDB, float *ALPHAR, float *ALPHAI, float *BETA, float *VL, const int LDVL, float *VR, const int LDVR, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to compute for a pair of N-by-N real nonsymmetric matrices (A,...
int NumGlobalRows() const
Returns the number of matrix rows in global matrix.
Definition: Epetra_CrsGraph.h:559
Epetra_RowMatrix * GetMatrix() const
Get a pointer to the matrix A.
Definition: Epetra_LinearProblem.h:175
int * ExportLIDs() const
List of elements that will be sent to other processors.
Definition: Epetra_Export.h:263
virtual ~Epetra_FEVbrMatrix()
Epetra_VbrMatrix Destructor.
int NumAllocatedMyIndices(int Row) const
Returns the allocated number of nonzero entries in specified local row on this processor.
Definition: Epetra_CrsGraph.h:764
virtual int NumGlobalRows() const =0
Returns the number of global matrix rows.
Epetra_SerialDenseMatrix * Matrix() const
Returns pointer to current matrix.
Definition: Epetra_SerialDenseSVD.h:276
const Epetra_BlockMap & RangeMap() const
Returns the RangeMap associated with this graph.
Definition: Epetra_CrsGraph.h:842
void destroyNonlocalMapAndExporter()
Deallocate the Map, Export object, and MultiVector for nonlocal data.
int BeginSumIntoGlobalValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate summing into current values with this list of entries for a given global row of the matrix,...
Epetra_VbrRowMatrix(Epetra_VbrMatrix *Matrix)
Epetra_VbrRowMatrix constuctor.
Definition: Epetra_VbrRowMatrix.h:81
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().
Epetra_FECrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, int NumIndicesPerRow, bool ignoreNonLocalEntries=false, bool buildNonlocalGraph=false)
const char * Label() const
Returns a character std::string describing the operator.
Definition: Epetra_MsrMatrix.h:314
Epetra_Map(int NumGlobalElements, int NumMyElements, int IndexBase, const Epetra_Comm &Comm)
Epetra_Map constructor for a user-defined linear distribution of elements.
int Norm1(double *Result) const
Compute 1-norm of each vector in multi-vector.
Epetra_SerialSymDenseMatrix * SymMatrix() const
Returns pointer to current matrix.
Definition: Epetra_SerialSpdDenseSolver.h:247
int * FirstPointInElementList() const
Pointer to internal array containing a mapping between the local elements and the first local point n...
int ScanSum(long long *MyVals, long long *ScanSums, int Count) const
Epetra_SerialComm Scan Sum function.
bool Filled() const
If FillComplete() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_VbrMatrix.h:470
Epetra_MultiVector * nonlocalVector_
Multivector that holds nonlocal data; source for the Export operation.
Definition: Epetra_FEVector.h:339
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)=0
Perform any unpacking and combining after call to DoTransfer().
bool HasNormInf() const
Returns true because this class can compute an Inf-norm.
Definition: Epetra_BasicRowMatrix.h:480
Epetra_LAPACK: The Epetra LAPACK Wrapper Class.
Definition: Epetra_LAPACK.h:67
virtual int CreateFromSends(const int &NumExportIDs, const int *ExportPIDs, bool Deterministic, int &NumRemoteIDs)=0
Create Distributor object using list of process IDs to which we export.
void POSVX(const char FACT, const char UPLO, const int N, const int NRHS, double *A, const int LDA, double *AF, const int LDAF, const char EQUED, double *S, double *B, const int LDB, double *X, const int LDX, double *RCOND, double *FERR, double *BERR, double *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK solve driver for positive definite matrix (DPOSVX)
void POTRS(const char UPLO, const int N, const int NRHS, const double *A, const int LDA, double *X, const int LDX, int *INFO) const
Epetra_LAPACK solve (after factorization) for positive definite matrix (DPOTRS)
virtual double NormInf() const
Computes the Infinity-Norm of the this matrix.
bool SameBlockMapDataAs(const Epetra_BlockMap &Map) const
int RemoveRedundantIndices()
Removes any redundant column indices in the rows of the graph.
int PutScalar(double ScalarConstant)
Initialize all values in graph of the matrix with constant value.
const Epetra_BlockMap & RangeMap() const
Returns the Epetra_BlockMap object associated with the range of this matrix operator.
Definition: Epetra_VbrMatrix.h:1048
int N() const
Returns column dimension of system.
Definition: Epetra_SerialDenseSVD.h:295
Epetra_CrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, const int *NumEntriesPerRow, bool StaticProfile=false)
Epetra_CrsMatrix constructor with variable number of indices per row.
Epetra_SerialDistributor(const Epetra_SerialDistributor &Plan)
Epetra_SerialDistributor Copy Constructor.
MPI_Comm GetMpiComm() const
Acquire an MPI tag from the Epetra range of 24050-24099, increment tag.
Definition: Epetra_MpiSmpComm.h:405
int Random()
Set vector values to random numbers.
Epetra_DataAccess CV() const
Returns the data access mode of the this vector.
Definition: Epetra_LongLongSerialDenseVector.h:220
Epetra_SerialDenseMatrix * Matrix() const
Returns pointer to current matrix.
Definition: Epetra_SerialDenseSolver.h:281
int PutScalar(double ScalarConstant)
Initialize all values in the matrix with constant value.
int ** Pointers() const
Get pointer to individual vector pointers.
Definition: Epetra_IntMultiVector.h:714
int MakeViewOf(const Epetra_LongLongSerialDenseVector &Source)
Reset an existing LongLongSerialDenseVector to point to another Vector.
int Random()
Set vector values to random numbers.
int MaxNumNonzeros() const
Returns the maximum number of nonzero entries across all block rows on this processor.
Definition: Epetra_VbrMatrix.h:1017
int MinAll(long long *PartialMins, long long *GlobalMins, int Count) const
Epetra_MpiComm Global Min function.
void UpdateFlops(long long int Flops_in) const
Increment Flop count for this object from a long int.
Definition: Epetra_Flops.h:99
int N() const
Returns column dimension of system.
Definition: Epetra_SerialDenseMatrix.h:380
int ReferenceCount() const
Returns the reference count of MpiCommData.
Definition: Epetra_MpiComm.h:514
virtual int RightScale(const Epetra_Vector &x)
Scales the Epetra_BasicRowMatrix on the right with a Epetra_Vector x.
int Scale(double ScalarA, const Epetra_MultiVector &A)
Replace multi-vector values with scaled values of A, this = ScalarA*A.
int NumRemoteIDs() const
Returns the number of elements that are not on the calling processor.
Definition: Epetra_Import.h:273
Epetra_SerialComm()
Epetra_SerialComm Serial Constructor.
int CheckSizes(const Epetra_SrcDistObject &A)
Allows the source and target (this) objects to be compared for compatibility, return nonzero if not.
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_MsrMatrix multiplied by a Epetra_MultiVector X in Y.
virtual int PackAndPrepare(const Epetra_SrcDistObject &Source, int NumExportIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &SizeOfPacket, int *Sizes, bool &VarSizes, Epetra_Distributor &Distor)=0
Perform any packing or preparation required for call to DoTransfer().
void POTRI(const char UPLO, const int N, double *A, const int LDA, int *INFO) const
Epetra_LAPACK inversion for positive definite matrix (DPOTRI)
@ Add
Definition: Epetra_CombineMode.h:64
Epetra_LongLongSerialDenseMatrix(int NumRows, int NumCols)
Shaped constructor; defines a variable-sized object.
virtual ~Epetra_MpiComm()
Epetra_MpiComm Destructor.
const Epetra_Export & RedistExporter() const
Returns const reference to the Epetra_Export object used to redistribute the original linear problem.
Definition: Epetra_LinearProblemRedistor.h:204
int NumProc() const
Returns total number of processes.
Definition: Epetra_MpiSmpComm.h:389
virtual bool ShouldEquilibrate()
Returns true if the LAPACK general rules for equilibration suggest you should equilibrate the system.
Definition: Epetra_SerialDenseSolver.h:259
int PutScalar(double ScalarConstant)
Initialize all values in a multi-vector with constant value.
double * A() const
Returns pointer to the this matrix.
Definition: Epetra_SerialDenseSolver.h:299
int NumMyDiagonals() const
Returns the number of diagonal entries in the local graph, based on global row/column index compariso...
Definition: Epetra_CrsGraph.h:620
int ExtractBlockDiagonalEntryCopy(int SizeOfValues, double *Values, int LDA, bool SumInto) const
Extract a copy of a block diagonal entry from the matrix.
void GETRS(const char TRANS, const int N, const int NRHS, const double *A, const int LDA, const int *IPIV, double *X, const int LDX, int *INFO) const
Epetra_LAPACK solve (after factorization) for general matrix (DGETRS)
int ReplaceMyValues(int MyRow, int NumEntries, const double *Values, const int *Indices)
Replace current values with this list of entries for a given local row of the matrix.
virtual int Factor(void)
Computes the in-place LU factorization of the matrix using the LAPACK routine DGETRF.
int Random()
Set multi-vector values to random numbers.
void SetLower()
Specify that the lower triangle of the this matrix should be used.
Definition: Epetra_SerialSymDenseMatrix.h:215
int ScanSum(long *MyVals, long *ScanSums, int Count) const
Epetra_MpiSmpComm Scan Sum function.
const int * ProcsFrom() const
A list of procs sending values to this proc.
Definition: Epetra_MpiDistributor.h:280
int NumGlobalCols() const
Returns the number of global matrix columns.
Definition: Epetra_CrsMatrix.h:1086
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified local row in user-provided arrays.
int SetVectors(Epetra_SerialDenseMatrix &X, Epetra_SerialDenseMatrix &B)
Sets the pointers for left and right hand side vector(s).
virtual int ApplyInverse(const Epetra_SerialDenseMatrix &Xmat, Epetra_SerialDenseMatrix &Ymat)
Returns the result of a Epetra_SerialDenseOperator inverse applied to an Epetra_SerialDenseMatrix X i...
Definition: Epetra_SerialDenseSVD.h:421
int InsertGlobalValues(int numRows, const int *rows, int numCols, const int *cols, const double *const *values, int format=Epetra_FECrsMatrix::ROW_MAJOR)
Epetra_BlockMap(const Epetra_BlockMap &map)
Epetra_BlockMap copy constructor.
int SumAll(int *PartialSums, int *GlobalSums, int Count) const
Epetra_MpiSmpComm Global Sum function.
void SYGV(const int ITYPE, const char JOBZ, const char UPLO, const int N, double *A, const int LDA, double *B, const int LDB, double *W, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to compute all the eigenvalues, and optionally, the eigenvectors of a real gene...
bool operator==(const Epetra_LongLongSerialDenseMatrix &rhs) const
Comparison operator.
int Solve(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y, double Alpha=1.0) const
Performs a triangular solve of Y = Alpha*(this^TransA)^-1*X where this is a triangular matrix.
int MinAll(int *PartialMins, int *GlobalMins, int Count) const
Epetra_MpiSmpComm Global Min function.
Epetra_Map & operator=(const Epetra_Map &map)
Assignment Operator.
int CreateTranspose(const bool MakeDataContiguous, Epetra_CrsMatrix *&TransposeMatrix, Epetra_Map *TransposeRowMap=0)
Generate a new Epetra_CrsMatrix as the transpose of an Epetra_RowMatrix passed into the constructor.
int LDB() const
Returns the leading dimension of the RHS.
Definition: Epetra_SerialDenseSVD.h:307
int GlobalMaxNumEntries() const
Returns the maximum number of nonzero entries across all rows on all processors.
Definition: Epetra_CrsMatrix.h:1139
int Reshape(int NumRows, int NumCols)
Reshape a Epetra_IntSerialDenseMatrix object.
int ExtractView(double **A, int *MyLDA) const
Set user-provided addresses of A and MyLDA.
double Norm1() const
Compute 1-norm of each vector in multi-vector.
bool NoRedundancies() const
If MergeRedundantEntries() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_CrsMatrix.h:1649
@ View
Definition: Epetra_DataAccess.h:57
int NumProc() const
Returns total number of processes.
Definition: Epetra_MpiComm.h:469
int RemoteIDList(int NumIDs, const int *GIDList, int *PIDList, int *LIDList) const
Returns the processor IDs and corresponding local index value for a given list of global indices.
Definition: Epetra_BlockMap.h:430
Epetra_SrcDistObject: A class for supporting flexible source distributed objects for import/export op...
Definition: Epetra_SrcDistObject.h:63
int Size(int Length_in)
Set length of a Epetra_LongLongSerialDenseVector object; init values to zero.
Definition: Epetra_LongLongSerialDenseVector.h:142
void UpdateFlops(int Flops_in) const
Increment Flop count for this object.
Definition: Epetra_CompObject.h:99
void GETRF(const int M, const int N, double *A, const int LDA, int *IPIV, int *INFO) const
Epetra_LAPACK factorization for general matrix (DGETRF)
int SumIntoMyValues(int MyRow, int NumEntries, double *Values, int *Indices)
Add this list of entries to existing values for a given local row of the matrix. WARNING: this could ...
Epetra_Export(const Epetra_BlockMap &SourceMap, const Epetra_BlockMap &TargetMap)
Constructs a Epetra_Export object from the source and target maps.
virtual int SetUseTranspose(bool UseTranspose_in)
If set true, transpose of this operator will be applied.
Definition: Epetra_SerialDenseMatrix.h:427
void AXPY(const int N, const float ALPHA, const float *X, float *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS vector update function (SAXPY)
virtual int MaxAll(long *PartialMaxs, long *GlobalMaxs, int Count) const =0
Epetra_Comm Global Max function.
int InvColSums(Epetra_Vector &x) const
Computes the sum of absolute values of the columns of the Epetra_MsrMatrix, results returned in x.
int Multiply1(bool TransA, const Epetra_Vector &x, Epetra_Vector &y) const
Returns the result of a Epetra_VbrMatrix multiplied by a Epetra_Vector x in y.
virtual double NormOne() const
Computes the 1-Norm of the this matrix.
double ASUM(const int N, const double *X, const int INCX=1) const
Epetra_BLAS one norm function (DASUM).
void GEHRD(const int N, const int ILO, const int IHI, double *A, const int LDA, double *TAU, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for reduction to Hessenberg form (DGEHRD)
bool ConstantStride() const
Returns true if this multi-vector has constant stride between vectors.
Definition: Epetra_IntMultiVector.h:670
bool StaticGraph()
Returns true if the graph associated with this matrix was pre-constructed and therefore not changeabl...
Definition: Epetra_CrsMatrix.h:1160
bool LowerTriangular() const
If matrix is lower triangular, this query returns true, otherwise it returns false.
Definition: Epetra_MsrMatrix.h:213
Epetra_Export(const Epetra_Export &Exporter)
Epetra_Export copy constructor.
const Epetra_Export & TransposeExporter() const
Returns const reference to the Epetra_Export object used to redistribute the original matrix.
Definition: Epetra_RowMatrixTransposer.h:140
Epetra_OffsetIndex(const Epetra_CrsGraph &SourceGraph, const Epetra_CrsGraph &TargetGraph, Epetra_Import &Importer)
Constructs a Epetra_OffsetIndex object from the graphs and an importer.
void TREXC(const char COMPQ, const int N, float *T, const int LDT, float *Q, const int LDQ, int IFST, int ILST, float *WORK, int *INFO) const
Epetra_LAPACK wrapper for reordering the real-Schur/Schur factorization of a matrix (STREXC)
int SumIntoGlobalValues(const Epetra_IntSerialDenseVector &rows, const Epetra_IntSerialDenseVector &cols, const Epetra_SerialDenseMatrix &values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
virtual void Print(std::ostream &os) const
Print service methods; defines behavior of ostream << operator.
int ReplaceRowMap(const Epetra_BlockMap &newmap)
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values) const
Returns a copy of the specified local row values in user-provided array.
int SetUseTranspose(bool UseTranspose_in)
If set true, transpose of this operator will be applied.
Definition: Epetra_VbrMatrix.h:1147
int GatherAll(long *MyVals, long *AllVals, int Count) const
Epetra_MpiSmpComm All Gather function.
const Epetra_BlockMap & BlockImportMap() const
Use BlockColMap() instead.
Definition: Epetra_VbrMatrix.h:1271
Epetra_MultiVector(const Epetra_MultiVector &Source)
Epetra_MultiVector copy constructor.
virtual ~Epetra_BasicRowMatrix()
Epetra_BasicRowMatrix Destructor.
int Broadcast(double *MyVals, int Count, int Root) const
Epetra_MpiComm Broadcast function.
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_SerialDenseMatrix.h:461
int RightScale(const Epetra_Vector &x)
Scales the Epetra_MsrMatrix on the right with a Epetra_Vector x.
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_InvOperator applied to a Epetra_MultiVector X in Y.
Definition: Epetra_InvOperator.h:106
int InvRowMaxs(Epetra_Vector &x) const
Computes the inverse of the max of absolute values of the rows of the Epetra_CrsMatrix,...
virtual int ColDim() const
Returns the column dimension of operator.
Definition: Epetra_SerialDenseSVD.h:447
int FillComplete()
Tranform to local index space. Perform other operations to allow optimal matrix operations.
int TransformToLocal()
Use FillComplete() instead.
Epetra_CrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const int *NumIndicesPerRow, bool StaticProfile=false)
Epetra_CrsGraph constuctor with variable number of indices per row.
int SetMyThreadID(int ThreadID)
Set my thread ID.
Definition: Epetra_MpiSmpComm.h:446
const Epetra_BlockMap & Map() const
Returns the address of the Epetra_BlockMap for this multi-vector.
Definition: Epetra_DistObject.h:192
Epetra_LocalMap(const Epetra_LocalMap &map)
Epetra_LocalMap copy constructor.
double AMAX() const
Returns the absolute value of the largest entry of the this matrix (returns -1 if not yet computed).
Definition: Epetra_SerialDenseSolver.h:345
Epetra_SerialSymDenseMatrix(const Epetra_SerialSymDenseMatrix &Source)
Epetra_SerialSymDenseMatrix copy constructor.
double & operator()(int Index)
Element access function.
Definition: Epetra_SerialDenseVector.h:290
void Print(std::ostream &os) const
Print method that implements Epetra_Object virtual Print method.
Definition: Epetra_SerialComm.h:450
virtual void Print(std::ostream &os) const
Epetra_CrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, int NumIndicesPerRow, bool StaticProfile=false)
Epetra_CrsGraph constuctor with fixed number of indices per row.
Epetra_BlockMap(int NumGlobalElements, int ElementSize, int IndexBase, const Epetra_Comm &Comm)
Epetra_BlockMap constructor for a Epetra-defined uniform linear distribution of constant size element...
void SetPDL(ProblemDifficultyLevel PDL)
Set problem difficulty level.
Definition: Epetra_LinearProblem.h:119
Definition: Epetra_FECrsMatrix.h:120
int InvColSums(Epetra_Vector &x) const
Computes the sum of absolute values of the columns of the Epetra_VbrMatrix, results returned in x.
Epetra_IntSerialDenseMatrix & operator=(const Epetra_IntSerialDenseMatrix &Source)
Copy from one matrix to another.
int MatTransMatMultiply(bool ATA, const Epetra_Vector &x, Epetra_Vector &y, Epetra_Vector *t, double Alpha=1.0, double Beta=0.0) const
Performs two matrix vector multiplies of y = Alpha*this^TransA*this*x + Beta*y or y = Alpha*this*this...
int NumMyEntries() const
Returns the number of entries on this processor.
Definition: Epetra_CrsGraph.h:690
int GCID(int LCID_in) const
Returns the global column index for give local column index, returns IndexBase-1 if we don't have thi...
Definition: Epetra_VbrMatrix.h:1089
Definition: Epetra_HashTable.h:51
int MaxMyElementSize() const
Maximum element size on the calling processor.
Definition: Epetra_BlockMap.h:611
int MakeDataContiguous()
Eliminates memory that is used for construction. Make consecutive row index sections contiguous.
Definition: Epetra_CrsMatrix.h:718
Epetra_Object(int TracebackModeIn=-1, bool set_label=true)
Epetra_Object Constructor.
bool UpperTriangular() const
If graph is upper triangular in local index space, this query returns true, otherwise it returns fals...
Definition: Epetra_CrsGraph.h:526
void SetMaps(const Epetra_Map &RowMap, const Epetra_Map &ColMap, const Epetra_Map &DomainMap, const Epetra_Map &RangeMap)
Set maps (Version 2); call this function or the previous, but not both.
virtual int NumMyRowEntries(int MyRow, int &NumEntries) const =0
Returns the number of nonzero entries in MyRow.
virtual int ReciprocalConditionEstimate(double &Value)
Returns the reciprocal of the 1-norm condition number of the this matrix.
void SolveToRefinedSolution(bool Flag)
Causes all solves to compute solution to best ability using iterative refinement.
Definition: Epetra_SerialDenseSolver.h:172
virtual int Broadcast(double *MyVals, int Count, int Root) const =0
Epetra_Comm Broadcast function.
Epetra_IntMultiVector(const Epetra_BlockMap &Map, int NumVectors, bool zeroOut=true)
Basic Epetra_IntMultiVector constuctor.
int MinMyGID() const
Returns the minimum global ID owned by this processor.
Definition: Epetra_BlockMap.h:517
virtual int DoReverse(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)=0
Execute reverse of plan on buffer of export objects in a single step (object size may vary)
int SumIntoGlobalValues(int numIndices, const int *indices, const double *values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
virtual void Print(std::ostream &os) const
Print object to an output stream.
int SumIntoGlobalValues(int NumEntries, int BlockOffset, const double *Values, const int *Indices)
Sum values into a vector with a given indexed list of values at the specified BlockOffset,...
double NormOne() const
Computes the 1-Norm of the this matrix.
int ReplaceMyValue(int MyBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
Replace current value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) location with Scalar...
int GlobalAssemble(Epetra_CombineMode mode=Add, bool reuse_map_and_exporter=false)
Epetra_Import(const Epetra_BlockMap &TargetMap, const Epetra_BlockMap &SourceMap, int NumRemotePIDs, const int *RemotePIDs, const int &NumExportIDs, const int *ExportLIDs, const int *ExportPIDs)
Expert-only import constructor.
virtual int CopyAndPermute(const Epetra_SrcDistObject &Source, int NumSameIDs, int NumPermuteIDs, int *PermuteToLIDs, int *PermuteFromLIDs, const Epetra_OffsetIndex *Indexor, Epetra_CombineMode CombineMode=Zero)=0
Perform ID copies and permutations that are on processor.
Epetra_FEVbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, int NumBlockEntriesPerRow, bool ignoreNonLocalEntries=false)
Epetra_FEVbrMatrix constuctor with fixed number of indices per row.
virtual int NumMyRowEntries(int MyRow, int &NumEntries) const =0
Return the current number of values stored for the specified local row.
int ScanSum(int *MyVals, int *ScanSums, int Count) const
Epetra_SerialComm Scan Sum function.
void POTRF(const char UPLO, const int N, double *A, const int LDA, int *INFO) const
Epetra_LAPACK factorization for positive definite matrix (DPOTRF)
bool IndicesAreLocal() const
If column indices are in local range, this query returns true, otherwise it returns false.
Definition: Epetra_CrsGraph.h:514
virtual int MinAll(double *PartialMins, double *GlobalMins, int Count) const =0
Epetra_Comm Global Min function.
int ExtractView(long long **V) const
Set user-provided address of V.
void GETRI(const int N, float *A, const int LDA, int *IPIV, float *WORK, const int *LWORK, int *INFO) const
Epetra_LAPACK inversion for general matrix (SGETRI)
int ExpertStaticFillComplete(const Epetra_Map &DomainMap, const Epetra_Map &RangeMap, const Epetra_Import *Importer=0, const Epetra_Export *Exporter=0, int NumMyDiagonals=-1)
Performs a FillComplete on an object that aready has filled CRS data.
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this graph.
Definition: Epetra_CrsGraph.h:851
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this matrix operator.
Definition: Epetra_CrsMatrix.h:1403
void TRMM(const char SIDE, const char UPLO, const char TRANSA, const char DIAG, const int M, const int N, const double ALPHA, const double *A, const int LDA, double *B, const int LDB) const
Epetra_BLAS triangular matrix-matrix multiply function (DTRMM)
Epetra_FECrsMatrix(Epetra_DataAccess CV, const Epetra_CrsGraph &Graph, bool ignoreNonLocalEntries=false)
Epetra_BasicDirectory(const Epetra_BlockMap &Map)
Epetra_BasicDirectory constructor.
int ReplaceDomainMapAndImporter(const Epetra_Map &NewDomainMap, const Epetra_Import *NewImporter)
Replaces the current DomainMap & Importer with the user-specified map object.
int LID(int GID) const
Returns local ID of global ID, return -1 if not found on this processor.
int OptimizeStorage()
Eliminates memory that is used for construction. Make consecutive row index sections contiguous.
virtual void Print(std::ostream &os) const
Print method.
int CreateRedistProblem(const bool ConstructTranspose, const bool MakeDataContiguous, Epetra_LinearProblem *&RedistProblem)
Generate a new Epetra_LinearProblem as a redistribution of the one passed into the constructor.
virtual ~Epetra_FECrsMatrix()
int SetMatrix(Epetra_SerialDenseMatrix &A)
Sets the pointers for coefficient matrix.
int ReciprocalConditionEstimate(double &Value)
Returns the reciprocal of the 1-norm condition number of the this matrix.
double * A() const
Returns pointer to the this matrix.
Definition: Epetra_SerialDenseSVD.h:298
bool HasNormInf() const
Returns true because this class can compute an Inf-norm.
Definition: Epetra_VbrMatrix.h:1177
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_FastCrsMatrix.h:131
virtual int NumGlobalNonzeros() const =0
Returns the number of nonzero entries in the global matrix.
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_CrsMatrix.h:1400
Epetra_Util()
Epetra_Util Constructor.
Definition: Epetra_Util.h:261
int Shape(int NumRowsCols)
Set dimensions of a Epetra_SerialSymDenseMatrix object; init values to zero.
Definition: Epetra_SerialSymDenseMatrix.h:192
@ InsertAdd
Definition: Epetra_CombineMode.h:71
int RightScale(const Epetra_Vector &x)
Scales the Epetra_VbrMatrix on the right with a Epetra_Vector x.
int MinValue(double *Result) const
Compute minimum value of each vector in multi-vector.
int MaxValue()
Find maximum value.
int Stride() const
Returns the stride between vectors in the multi-vector (only meaningful if ConstantStride() is true).
Definition: Epetra_IntMultiVector.h:667
int InsertMyValues(int MyRow, int NumEntries, double *Values, int *Indices)
Insert a list of elements in a given local row of the matrix.
const char * Label() const
Returns a character std::string describing the operator.
Definition: Epetra_InvOperator.h:131
Epetra_LocalMap & operator=(const Epetra_LocalMap &map)
Assignment Operator.
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_InvOperator.h:138
bool ShouldEquilibrate()
Returns true if the LAPACK general rules for equilibration suggest you should equilibrate the system.
Definition: Epetra_SerialSpdDenseSolver.h:240
MPI implementation of Epetra_Distributor.
Definition: Epetra_MpiDistributor.h:59
int MeanValue(double *Result) const
Compute mean (average) value of each vector in multi-vector.
virtual void Barrier() const =0
Epetra_Comm Barrier function.
virtual int ComputeEquilibrateScaling(void)
Computes the scaling vector S(i) = 1/sqrt(A(i,i)) of the this matrix.
Epetra_BlockMap(long long NumGlobal_Elements, int NumMy_Elements, const long long *myGlobalElements, int ElementSize, int indexBase, const Epetra_Comm &comm, bool UserIsDistributedGlobal, long long UserMinAllGID, long long UserMaxAllGID)
Epetra_BlockMap constructor for a user-defined arbitrary distribution of constant size elements,...
Epetra_LongLongVector(const Epetra_BlockMap &Map, bool zeroOut=true)
Basic Epetra_LongLongVector constuctor.
Epetra_MpiDistributor(const Epetra_MpiDistributor &Distributor)
Copy constructor.
Epetra_RowMatrixTransposer(const Epetra_RowMatrixTransposer &Source)
Epetra_RowMatrixTransposer copy constructor.
virtual int NumGlobalRows() const
Returns the number of global matrix rows.
Definition: Epetra_BasicRowMatrix.h:356
const Epetra_BlockMap & DomainMap() const
Returns the Epetra_BlockMap object associated with the domain of this matrix operator.
Definition: Epetra_VbrMatrix.h:1045
int GRID(int LRID_in) const
Returns the global row index for give local row index, returns IndexBase-1 if we don't have this loca...
Definition: Epetra_CrsGraph.h:874
virtual int ColDim() const =0
Returns the column dimension of operator.
long long & operator()(int RowIndex, int ColIndex)
Element access function.
Definition: Epetra_LongLongSerialDenseMatrix.h:367
Epetra_Map(const Epetra_Map &map)
Epetra_Map copy constructor.
int ReplaceGlobalValues(int numIDs, const int *GIDs, const double *values, int vectorIndex=0)
bool UpperTriangular() const
If matrix is upper triangular, this query returns true, otherwise it returns false.
Definition: Epetra_MsrMatrix.h:216
int DoPosts(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Post buffer of export objects (can do other local work before executing Waits)
Epetra_OskiPermutation(bool RowPerm, const Epetra_OskiMatrix &Source)
Constructor creates an Epetra_OskiPermutation from an Epetra_OskiMatrix.
int GlobalAssemble(bool callFillComplete=true)
int GCID(int LCID_in) const
Returns the global column index for give local column index, returns IndexBase-1 if we don't have thi...
Definition: Epetra_CrsGraph.h:905
void setIgnoreNonLocalEntries(bool flag)
Definition: Epetra_FECrsMatrix.h:740
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().
Epetra_SerialDenseSVD()
Default constructor; matrix should be set using SetMatrix(), LHS and RHS set with SetVectors().
@ AbsMax
Definition: Epetra_CombineMode.h:83
int NumMyRows() const
Returns the number of matrix rows owned by the calling processor.
Definition: Epetra_VbrMatrix.h:918
int MaxValue(int *Result) const
Compute maximum value of each vector in multi-vector.
virtual int NumMyCols() const =0
Returns the number of matrix columns owned by the calling processor.
int BeginInsertGlobalValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate insertion of a list of elements in a given global row of the matrix, values are inserted via...
double * A() const
Returns pointer to the this matrix.
Definition: Epetra_SerialDenseMatrix.h:383
int NumSend() const
Total number of elements to be sent.
Definition: Epetra_Import.h:288
int MaxElementSize() const
Maximum element size across all processors.
Definition: Epetra_BlockMap.h:617
int CreateFromRecvs(const int &NumRemoteIDs, const int *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int &NumExportIDs, int *&ExportGIDs, int *&ExportPIDs)
Create a communication plan from receive list.
Definition: Epetra_FEVector.h:78
int NumRemoteIDs() const
Returns the number of elements that are not on the calling processor.
Definition: Epetra_Export.h:254
double RandomDouble()
Returns a random double on the interval (-1.0,1.0)
int EquilibrateRHS(void)
Equilibrates the current RHS.
int NumMyCols() const
Returns the number of matrix columns owned by the calling processor.
Definition: Epetra_VbrMatrix.h:920
int RemoveEmptyProcessesInPlace(const Epetra_BlockMap *NewMap)
Remove processes owning zero rows from the Maps and their communicator.
virtual int Solve(void)
Computes the solution X to AX = B for the this matrix and the B provided to SetVectors()....
const Epetra_BlockMap & RowMap() const
Returns the RowMap object as an Epetra_BlockMap (the Epetra_Map base class) needed for implementing E...
Definition: Epetra_VbrMatrix.h:1051
virtual ~Epetra_Util()
Epetra_Util Destructor.
Definition: Epetra_Util.h:265
int ReplaceGlobalValues(int numIndices, const int *indices, const double *const *values, int format=Epetra_FECrsMatrix::ROW_MAJOR)
Epetra_IntVector: A class for constructing and using dense integer vectors on a parallel computer.
Definition: Epetra_IntVector.h:124
int MaxNumEntries() const
Returns the maximum of NumMyRowEntries() over all rows.
void GEMM(const char TRANSA, const char TRANSB, const int M, const int N, const int K, const double ALPHA, const double *A, const int LDA, const double *B, const int LDB, const double BETA, double *C, const int LDC) const
Epetra_BLAS matrix-matrix multiply function (DGEMM)
virtual int GatherAll(double *MyVals, double *AllVals, int Count) const =0
Epetra_Comm All Gather function.
int DoReverseWaits()
Wait on a reverse set of posts.
double Norm2() const
Compute 2-norm of each vector in multi-vector.
Epetra_DistObject(const Epetra_DistObject &Source)
Epetra_DistObject copy constructor.
int SumIntoMyValue(int MyRow, int VectorIndex, double ScalarValue)
Adds ScalarValue to existing value at the specified (MyRow, VectorIndex) location.
bool Sorted() const
If SortEntries() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_CrsMatrix.h:1643
int NumMyNonzeros() const
Returns the number of nonzero entriesowned by the calling processor .
Definition: Epetra_VbrMatrix.h:923
void COPY(const int N, const double *X, double *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS vector scale function (DCOPY)
void setIgnoreNonLocalEntries(bool flag)
Definition: Epetra_FEVector.h:260
@ Copy
Definition: Epetra_DataAccess.h:55
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_MsrMatrix multiplied by a Epetra_MultiVector X in Y.
void Barrier() const
Epetra_SerialComm Barrier function.
virtual ~Epetra_SerialSpdDenseSolver()
Epetra_SerialDenseSolver destructor.
void UpdateFlops(double Flops_in) const
Increment Flop count for this object.
Definition: Epetra_CompObject.h:108
virtual ~Epetra_CrsGraph()
Epetra_CrsGraph Destructor.
int ReplaceGlobalValues(const Epetra_IntSerialDenseVector &GIDs, const Epetra_SerialDenseVector &values, int vectorIndex=0)
virtual ~Epetra_SerialComm()
Epetra_SerialComm Destructor.
int GlobalAssemble(const Epetra_Map &domain_map, const Epetra_Map &range_map, bool callFillComplete=true)
int NRHS() const
Returns the number of current right hand sides and solution vectors.
Definition: Epetra_SerialDenseSVD.h:310
bool UpperTriangular() const
If matrix is upper triangular in local index space, this query returns true, otherwise it returns fal...
Definition: Epetra_VbrMatrix.h:873
virtual void ComputeStructureConstants() const
Update the constants associated with the structure of the matrix: Call only if structure changes from...
int InsertGlobalValues(const Epetra_IntSerialDenseVector &indices, const Epetra_SerialDenseMatrix &values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
int ExtractGlobalRowView(int GlobalRow, int &NumIndices, int *&Indices) const
Get a view of the elements in a specified global row of the graph.
const Epetra_Map & TransposeRowMap() const
Returns const reference to the Epetra_Map object describing the row distribution of the transpose mat...
Definition: Epetra_RowMatrixTransposer.h:134
int DoPosts(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Post buffer of export objects (can do other local work before executing Waits)
int GlobalAssemble(bool callFillComplete=true, Epetra_CombineMode combineMode=Add, bool save_off_and_reuse_map_exporter=false)
int UnequilibrateLHS(void)
Unscales the solution vectors if equilibration was used to solve the system.
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified local row in user-provided arrays.
int NumPermuteIDs() const
Returns the number of elements that are local to the calling processor, but not part of the first Num...
Definition: Epetra_Import.h:265
static int SortAndMergeCrsEntries(int NumRows, int *CRS_rowptr, int *CRS_colind, double *CRS_vals)
Epetra_Util SortAndMergeCrsEntries function.
int RemoveGlobalIndices(int GlobalRow, int NumIndices, int *Indices)
Remove a list of elements from a specified global row of the graph.
virtual double NormInf() const =0
Returns the infinity norm of the global matrix.
virtual int SumAll(int *PartialSums, int *GlobalSums, int Count) const =0
Epetra_Comm Global Sum function.
double & operator()(int RowIndex, int ColIndex)
Element access function.
Definition: Epetra_SerialDenseMatrix.h:499
int SumAll(long *PartialSums, long *GlobalSums, int Count) const
Epetra_MpiComm Global Sum function.
const Epetra_BlockMap & Map() const
Map() method inherited from Epetra_DistObject.
Definition: Epetra_VbrMatrix.h:1251
virtual ~Epetra_SerialDistributor()
Epetra_Comm Destructor.
Epetra_LongLongVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, long long *V)
Set vector values from user array.
virtual ~Epetra_Export(void)
Epetra_Export destructor.
bool DistributedGlobal() const
Returns true if this multi-vector is distributed global, i.e., not local replicated.
Definition: Epetra_DistObject.h:198
void Close()
Finalizes the use of OSKI.
int FillComplete(const Epetra_Map &DomainMap, const Epetra_Map &RangeMap, bool OptimizeDataStorage=true)
Signal that data entry is complete. Perform transformations to local index space.
int NumGlobalBlockCols() const
Returns the number of global Block matrix columns.
Definition: Epetra_VbrMatrix.h:972
int InsertGlobalValues(const Epetra_IntSerialDenseVector &rows, const Epetra_IntSerialDenseVector &cols, const Epetra_SerialDenseMatrix &values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
int ExtractMyRowView(int MyRow, int &NumEntries, double *&Values) const
Returns a view of the specified local row values via pointers to internal data.
virtual ~Epetra_RowMatrixTransposer()
Epetra_RowMatrixTransposer destructor.
int MakeViewOf(const Epetra_IntSerialDenseMatrix &Source)
Reset an existing IntSerialDenseMatrix to point to another Matrix.
double NormFrobenius() const
Returns the frobenius norm of the global matrix.
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.
int Solve(bool Upper, bool TransA, bool UnitDiagonal, const Epetra_Vector &x, Epetra_Vector &y) const
Performs a triangular solve of y = (this^TransA)^-1*x where this is a triangular matrix.
int ReplaceRowMap(const Epetra_BlockMap &newmap)
Replaces the current RowMap with the user-specified map object.
virtual long long OneNorm()
Computes the 1-Norm of the this matrix.
void POSV(const char UPLO, const int N, const int NRHS, float *A, const int LDA, float *X, const int LDX, int *INFO) const
Epetra_LAPACK factor and solve for positive definite matrix (SPOSV)
int DoReverse(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Execute reverse of plan on buffer of export objects in a single step (object size may vary)
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator (same as domain).
Definition: Epetra_MsrMatrix.h:284
static int SortCrsEntries(int NumRows, const int *CRS_rowptr, int *CRS_colind, double *CRS_vals)
Epetra_Util SortCrsEntries function.
void POTRF(const char UPLO, const int N, float *A, const int LDA, int *INFO) const
Epetra_LAPACK factorization for positive definite matrix (SPOTRF)
void SetUpper()
Specify that the upper triangle of the this matrix should be used.
Definition: Epetra_SerialSymDenseMatrix.h:218
int NumAllocatedGlobalIndices(long long Row) const
Returns the allocated number of nonzero entries in specified global row on this processor.
void SYEVR(const char JOBZ, const char RANGE, const char UPLO, const int N, float *A, const int LDA, const float *VL, const float *VU, const int *IL, const int *IU, const float ABSTOL, int *M, float *W, float *Z, const int LDZ, int *ISUPPZ, float *WORK, const int LWORK, int *IWORK, const int LIWORK, int *INFO) const
Epetra_LAPACK wrapper to compute selected eigenvalues and, optionally, eigenvectors of a real symmetr...
virtual bool HasNormInf() const =0
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
int ExtractGlobalRowView(int GlobalRow, int &NumEntries, double *&Values) const
Returns a view of the specified global row values via pointers to internal data.
int UpdateRedistProblemValues(Epetra_LinearProblem *ProblemWithNewValues)
Update the values of an already-redistributed problem.
void SCAL(const int N, const double ALPHA, double *X, const int INCX=1) const
Epetra_BLAS vector scale function (DSCAL)
double AMAX()
Returns the absolute value of the largest entry of the this matrix (returns -1 if not yet computed).
Definition: Epetra_SerialSpdDenseSolver.h:262
void GESV(const int N, const int NRHS, float *A, const int LDA, int *IPIV, float *X, const int LDX, int *INFO) const
Epetra_LAPACK factor and solve for general matrix (SGESV)
int SumIntoGlobalValues(int numRows, const int *rows, int numCols, const int *cols, const double *const *values, int format=Epetra_FECrsMatrix::ROW_MAJOR)
Epetra_Import_Util: The Epetra ImportUtil Wrapper Namespace.
Definition: Epetra_Import_Util.h:61
int ExtractMyEntryView(int CurEntry, double const *&Value, int &RowIndex, int &ColIndex) const
Returns a const reference to the ith entry in the matrix, along with its row and column index.
Definition: Epetra_VbrRowMatrix.h:149
int BeginReplaceGlobalValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate replacement of current values with this list of entries for a given global row of the matrix...
int MinAll(double *PartialMins, double *GlobalMins, int Count) const
Epetra_SerialComm Global Min function.
Epetra_BlockMap(int NumGlobalElements, int NumMyElements, const int *MyGlobalElements, const int *ElementSizeList, int IndexBase, const Epetra_Comm &Comm)
Epetra_BlockMap constructor for a user-defined arbitrary distribution of variable size elements.
virtual const char * Label() const
Epetra_Object Label access funtion.
Epetra_BasicDirectory: This class allows Epetra_Map objects to reference non-local elements.
Definition: Epetra_BasicDirectory.h:63
virtual ~Epetra_LinearProblem(void)
Epetra_LinearProblem Destructor.
Epetra_VbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, int NumBlockEntriesPerRow)
Epetra_VbrMatrix constuctor with fixed number of indices per row.
void IncrementReferenceCount()
Increment reference count.
int DoPosts(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Post buffer of export objects (can do other local work before executing Waits)
virtual int DoWaits()=0
Wait on a set of posts.
Epetra_FECrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, int *NumIndicesPerRow, bool ignoreNonLocalEntries=false, bool buildNonlocalGraph=false)
int ExtractGlobalBlockRowPointers(int BlockRow, int MaxNumBlockEntries, int &RowDim, int &NumBlockEntries, int *BlockIndices, Epetra_SerialDenseMatrix **&Values) const
Copy the block indices into user-provided array, set pointers for rest of data for specified global b...
const long long * Values() const
Returns const pointer to the values in vector.
Definition: Epetra_LongLongSerialDenseVector.h:217
Epetra_LongLongVector(const Epetra_LongLongVector &Source)
Epetra_LongLongVector copy constructor.
virtual ~Epetra_LAPACK(void)
Epetra_LAPACK Destructor.
Definition: Epetra_LAPACK.h:429
Epetra_LongLongSerialDenseVector: A class for constructing and using dense vectors.
Definition: Epetra_LongLongSerialDenseVector.h:90
int GCID(int LCID_in) const
Returns the global column index for give local column index, returns IndexBase-1 if we don't have thi...
Definition: Epetra_CrsMatrix.h:1297
double * B() const
Returns pointer to current RHS.
Definition: Epetra_SerialDenseSVD.h:304
void GESV(const int N, const int NRHS, double *A, const int LDA, int *IPIV, double *X, const int LDX, int *INFO) const
Epetra_LAPACK factor and solve for general matrix (DGESV)
const Epetra_Import * RowMatrixImporter() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
Definition: Epetra_VbrMatrix.h:1262
int ReferenceCount() const
Get reference count.
Epetra_BLAS(void)
Epetra_BLAS Constructor.
Definition: Epetra_BLAS.h:179
int NumMyRowEntries(int MyRow, int &NumEntries) const
Return the current number of values stored for the specified local row.
void zeroNonlocalData()
Make all the nonlocal multivector entries zero.
char * GetMatrixTransforms() const
Returns a string holding the transformations performed on the matrix when it was tuned.
virtual int ApplyRefinement(void)
Apply Iterative Refinement.
virtual const Epetra_Import * RowMatrixImporter() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
Definition: Epetra_BasicRowMatrix.h:421
int ScanSum(double *MyVals, double *ScanSums, int Count) const
Epetra_SerialComm Scan Sum function.
int ExtractGlobalRowView(int GlobalRow, int &NumEntries, double *&Values, int *&Indices) const
Returns a view of the specified global row values via pointers to internal data.
int LDX() const
Returns the leading dimension of the solution.
Definition: Epetra_SerialDenseSolver.h:317
virtual int Broadcast(int *MyVals, int Count, int Root) const =0
Epetra_Comm Broadcast function.
Epetra_MpiSmpComm(MPI_Comm comm)
Epetra_MpiSmpComm MPI Constructor.
void UpdateFlops(double Flops_in) const
Increment Flop count for this object from a double.
Definition: Epetra_Flops.h:101
double NormFrobenius() const
Returns the frobenius norm of the global matrix.
int Abs(const Epetra_MultiVector &A)
Puts element-wise absolute values of input Multi-vector in target.
int ElementSizeList(int *ElementSizeList) const
Same as ElementSizeList() except it fills the user array that is passed in.
virtual int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const =0
Returns a copy of the specified local row in user-provided arrays.
int * Values()
Returns pointer to the values in vector.
Definition: Epetra_IntSerialDenseVector.h:211
bool LinearMap() const
Returns true if the global ID space is contiguously divided (but not necessarily uniformly) across al...
Definition: Epetra_BlockMap.h:691
Epetra_Map * ReplaceCommWithSubset(const Epetra_Comm *Comm) const
Replace this Map's communicator with a subset communicator.
int SumIntoGlobalValue(int GlobalBlockRow, int BlockRowOffset, int VectorIndex, int OrdinalValue)
Adds OrdinalValue to existing value at the specified (GlobalBlockRow, BlockRowOffset,...
Epetra_IntMultiVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, int **ArrayOfPointers, int NumVectors)
Set multi-vector values from array of pointers.
Epetra_SerialDenseVector(int Length)
Sized constructor; defines a variable-sized object.
int * ListOfColors() const
Array of length NumColors() containing List of color values used in this coloring.
Definition: Epetra_MapColoring.h:203
void NodeBarrier() const
Epetra_MpiSmpComm Node Barrier function.
int UpdateRedistRHS(Epetra_MultiVector *RHSWithNewValues)
Update the values of an already-redistributed RHS.
bool B_Equilibrated()
Returns true if RHS is equilibrated (RHS available via B() and LDB()).
Definition: Epetra_SerialDenseSolver.h:256
@ Epetra_Max
Definition: Epetra_CombineMode.h:77
int PointToElementList(int *PointToElementList) const
Same as PointToElementList() except it fills the user array that is passed in.
Epetra_FEVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, double *A, int MyLDA, int NumVectors, bool ignoreNonLocalEntries=false)
Set multi-vector values from two-dimensional array.
int MaxAll(long *PartialMaxs, long *GlobalMaxs, int Count) const
Epetra_MpiComm Global Max function.
int SumIntoMyValue(int MyBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
Adds ScalarValue to existing value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) locatio...
int ExtractGlobalBlockRowView(int BlockRow, int &RowDim, int &NumBlockEntries, int *&BlockIndices, Epetra_SerialDenseMatrix **&Values) const
Initiates a view of the specified global row, only works if matrix indices are in global mode.
int NumGlobalElements() const
Number of elements across all processors.
Definition: Epetra_BlockMap.h:546
int MaxNumNonzeros() const
Returns the maximum number of nonzero points across all rows on this processor.
Definition: Epetra_CrsGraph.h:749
int MyLength() const
Returns the local vector length on the calling processor of vectors in the multi-vector.
Definition: Epetra_LongLongVector.h:252
int MyPID() const
Return my process ID.
Definition: Epetra_MpiSmpComm.h:383
virtual int DoPosts(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)=0
Post buffer of export objects (can do other local work before executing Waits)
int M() const
Returns row dimension of system.
Definition: Epetra_LongLongSerialDenseMatrix.h:303
int MergeRedundantEntries()
Add entries that have the same column index. Remove redundant entries from list.
Epetra_Comm: The Epetra Communication Abstract Base Class.
Definition: Epetra_Comm.h:73
Epetra_CrsMatrix(Epetra_DataAccess CV, const Epetra_CrsGraph &Graph)
Construct a matrix using an existing Epetra_CrsGraph object.
int SetSeed(unsigned int Seed_in)
Set seed for Random function.
int NumMyDiagonals() const
Returns the number of local nonzero diagonal entries, based on global row/column index comparisons.
Definition: Epetra_CrsMatrix.h:1121
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_JadMatrix solve with a Epetra_MultiVector X in Y (not implemented).
Definition: Epetra_JadMatrix.h:197
Epetra_Data()
Epetra_Data Serial Constructor.
bool Upper() const
Returns true if upper triangle of this matrix has and will be used.
Definition: Epetra_SerialSymDenseMatrix.h:225
static int SortAndMergeCrsEntries(int NumRows, size_t *CRS_rowptr, int *CRS_colind, double *CRS_vals)
Epetra_Util SortAndMergeCrsEntries function.
void TREVC(const char SIDE, const char HOWMNY, int *SELECT, const int N, const double *T, const int LDT, double *VL, const int LDVL, double *VR, const int LDVR, const int MM, int *M, double *WORK, int *INFO) const
Epetra_LAPACK wrapper for computing eigenvectors of a quasi-triangular/triagnular matrix (DTREVC)
int MyPID() const
Return my process ID.
Definition: Epetra_SerialComm.h:432
int ScanSum(double *MyVals, double *ScanSums, int Count) const
Epetra_MpiSmpComm Scan Sum function.
virtual bool UpperTriangular() const
If matrix is upper triangular, this query returns true, otherwise it returns false.
Definition: Epetra_BasicRowMatrix.h:308
virtual ~Epetra_IntVector()
Epetra_IntVector destructor.
virtual const char * Label() const
Returns a character string describing the operator.
Definition: Epetra_SerialDenseSVD.h:435
void GetLastDoStatistics(int &bytes_sent, int &bytes_recvd) const
Information on the last call to Do/DoReverse.
Definition: Epetra_MpiDistributor.h:296
Epetra_IntMultiVector: A class for constructing and using dense multi-vectors, vectors and matrices i...
Definition: Epetra_IntMultiVector.h:179
int LeftScale(const Epetra_Vector &x)
Scales the Epetra_MsrMatrix on the left with a Epetra_Vector x.
bool GlobalIndicesLongLong() const
Returns true if map create with long long NumGlobalElements.
Definition: Epetra_BlockMap.h:655
const Epetra_Vector * Epetra_View() const
Returns a view to the Epetra Object.
int SumIntoGlobalValue(int GlobalRow, int VectorIndex, double ScalarValue)
Adds ScalarValue to existing value at the specified (GlobalRow, VectorIndex) location.
void POCON(const char UPLO, const int N, const float *A, const int LDA, const float ANORM, float *RCOND, float *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK condition number estimator for positive definite matrix (SPOCON)
void AXPY(const int N, const double ALPHA, const double *X, double *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS vector update function (DAXPY)
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified local row in user-provided arrays.
Definition: Epetra_VbrRowMatrix.h:121
Epetra_LinearProblem(void)
Epetra_LinearProblem Default Constructor.
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this matrix operator.
Definition: Epetra_FastCrsMatrix.h:134
int LDB() const
Returns the leading dimension of the RHS.
Definition: Epetra_SerialDenseSolver.h:308
int ReplaceMyValue(int MyRow, int VectorIndex, double ScalarValue)
Replace current value at the specified (MyRow, VectorIndex) location with ScalarValue.
void LARFT(const char DIRECT, const char STOREV, const int N, const int K, float *V, const int LDV, float *TAU, float *T, const int LDT) const
Epetra_LAPACK for forming the triangular factor of a product of elementary Householder reflectors (DL...
virtual int NumGlobalCols() const =0
Returns the number of global matrix columns.
int NumMyBlockRows() const
Returns the number of Block matrix rows owned by the calling processor.
Definition: Epetra_VbrMatrix.h:950
Epetra_FECrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, const Epetra_Map &ColMap, int NumEntriesPerRow, bool ignoreNonLocalEntries=false)
virtual int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_RowMatrix applied to a Epetra_MultiVector X in Y.
Definition: Epetra_BasicRowMatrix.h:459
virtual double InfNorm() const
Computes the Infinity-Norm of the this matrix (identical to NormInf() method).
Definition: Epetra_SerialDenseMatrix.h:411
virtual ~Epetra_Directory()
Epetra_Directory destructor.
Definition: Epetra_Directory.h:66
int BeginExtractBlockDiagonalCopy(int MaxNumBlockDiagonalEntries, int &NumBlockDiagonalEntries, int *RowColDims) const
Initiates a copy of the block diagonal entries to user-provided arrays.
int * ExportPIDs() const
List of processors to which elements will be sent, ExportLIDs() [i] will be sent to processor ExportP...
Definition: Epetra_Import.h:285
void SYGV(const int ITYPE, const char JOBZ, const char UPLO, const int N, float *A, const int LDA, float *B, const int LDB, float *W, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to compute all the eigenvalues, and optionally, the eigenvectors of a real gene...
bool NoRedundancies() const
If RemoveRedundantIndices() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_CrsGraph.h:1113
Epetra_Import(const Epetra_Export &Exporter)
Epetra_Import pseudo-copy constructor. Creates an Epetra_Import in the reverse direction of the Epetr...
Epetra_IntSerialDenseMatrix()
Default constructor; defines a zero size object.
void GECON(const char NORM, const int N, const float *A, const int LDA, const float ANORM, float *RCOND, float *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK condition number estimator for general matrix (SGECON)
int NumMyBlockDiagonals() const
Returns the number of Block diagonal entries in the local graph, based on global row/column index com...
Definition: Epetra_CrsGraph.h:658
Epetra_BlockMap(int NumGlobalElements, int NumMyElements, int ElementSize, int IndexBase, const Epetra_Comm &Comm)
Epetra_BlockMap constructor for a user-defined linear distribution of constant size elements.
void UpdateFlops(long int Flops_in) const
Increment Flop count for this object.
Definition: Epetra_CompObject.h:102
virtual int NumGlobalDiagonals() const =0
Returns the number of global nonzero diagonal entries, based on global row/column index comparisons.
int ExtractHbData(int &M, int &N, int &nz, int *&ptr, int *&ind, double *&val, int &Nrhs, double *&rhs, int &ldrhs, double *&lhs, int &ldlhs) const
Extract the redistributed problem data in a form usable for other codes that require Harwell-Boeing f...
Epetra_Time(const Epetra_Comm &Comm)
Epetra_Time Constructor.
virtual int RightScale(const Epetra_Vector &x)=0
Scales the Epetra_RowMatrix on the right with a Epetra_Vector x.
int NumSameIDs() const
Returns the number of elements that are identical between the source and target maps,...
Definition: Epetra_Export.h:243
Epetra_Vector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, double *V)
Set vector values from user array.
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Definition: Epetra_InvOperator.h:144
virtual bool Filled() const =0
If FillComplete() has been called, this query returns true, otherwise it returns false.
int Multiply(double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis)
Multiply a Epetra_MultiVector with another, element-by-element.
virtual Epetra_Comm * Clone() const =0
Epetra_Comm clone constructor.
Epetra_OskiPermutation(const Epetra_OskiPermutation &Source)
Copy Constructor.
Epetra_FEVbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, int *NumBlockEntriesPerRow, bool ignoreNonLocalEntries=false)
Epetra_FEVbrMatrix constuctor with variable number of indices per row.
int MaxRowDim() const
Returns the max row dimension of block entries on the processor.
Definition: Epetra_CrsGraph.h:695
virtual ~Epetra_Vector()
Epetra_Vector destructor.
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_MsrMatrix.h:366
int SumIntoMyValues(int MyRow, int NumEntries, const double *Values, const int *Indices)
Add this list of entries to existing values for a given local row of the matrix.
Epetra_CrsGraphData: The Epetra CrsGraph Data Class.
Definition: Epetra_CrsGraphData.h:68
int NumMyRows() const
Returns the number of matrix rows owned by the calling processor.
Definition: Epetra_CrsMatrix.h:1108
virtual ~Epetra_MultiVector()
Epetra_MultiVector destructor.
virtual int ReplaceGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
Replace specified existing values with this list of entries for a given global row of the matrix.
int NumProc() const
Returns total number of processes (always returns 1 for SerialComm).
Definition: Epetra_SerialComm.h:435
int Broadcast(int *MyVals, int Count, int Root) const
Epetra_SerialComm Broadcast function.
virtual int ApplyInverse(const Epetra_SerialDenseMatrix &X, Epetra_SerialDenseMatrix &Y)
Returns the result of a Epetra_SerialDenseOperator inverse applied to an Epetra_SerialDenseMatrix X i...
Definition: Epetra_SerialDenseMatrix.h:450
int MaxMyGID() const
Returns the maximum global ID owned by this processor.
Definition: Epetra_BlockMap.h:527
int ReplaceGlobalValues(int NumEntries, const double *Values, const int *Indices)
Replace values in a vector with a given indexed list of values, indices are in global index space.
const Epetra_OskiPermutation & ViewRowPermutation() const
Returns a read only row/left permutation of the Matrix.
virtual ~Epetra_LongLongSerialDenseMatrix()
Epetra_LongLongSerialDenseMatrix destructor.
int & operator[](int Index)
Element access function.
Definition: Epetra_IntSerialDenseVector.h:282
int MakeViewOf(const Epetra_IntSerialDenseVector &Source)
Reset an existing IntSerialDenseVector to point to another Vector.
virtual const Epetra_Map & RowMatrixRowMap() const =0
Returns the Epetra_Map object associated with the rows of this matrix.
const Epetra_CrsGraph & Graph() const
Returns a reference to the Epetra_CrsGraph object associated with this matrix.
Definition: Epetra_CrsMatrix.h:1163
@ Zero
Definition: Epetra_CombineMode.h:66
void ORGHR(const int N, const int ILO, const int IHI, double *A, const int LDA, double *TAU, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for generating a real orthogonal matrix Q defined by elementary reflectors....
Epetra_Flops: The Epetra Floating Point Operations Class.
Definition: Epetra_Flops.h:58
virtual ~Epetra_SerialDenseMatrix()
Epetra_SerialDenseMatrix destructor.
int MyLength() const
Returns the local vector length on the calling processor of vectors in the multi-vector.
Definition: Epetra_IntVector.h:250
Epetra_GIDTypeVector: A class for constructing and using dense "int" and "long long" vectors on a par...
Definition: Epetra_GIDTypeVector.h:59
int Broadcast(char *MyVals, int Count, int Root) const
Epetra_SerialComm Broadcast function.
const Epetra_Import * Importer() const
Returns the Importer associated with this graph.
Definition: Epetra_CrsGraph.h:845
virtual ~Epetra_LongLongVector()
Epetra_LongLongVector destructor.
Epetra_OskiVector & operator=(const Epetra_OskiVector &Source)
Sets this equal to Source.
bool ConstantStride() const
Returns true if this multi-vector has constant stride between vectors.
Definition: Epetra_MultiVector.h:944
virtual ~Epetra_BlockMap(void)
Epetra_BlockMap destructor.
int NumGlobalEntries() const
Returns the number of entries in the global graph.
Definition: Epetra_CrsGraph.h:678
int OptimizeStorage()
Make consecutive row index sections contiguous, minimize internal storage used for constructing graph...
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.
Definition: Epetra_MsrMatrix.h:358
Epetra_LinearProblem(Epetra_RowMatrix *A, Epetra_MultiVector *X, Epetra_MultiVector *B)
Epetra_LinearProblem Constructor to pass in an operator as a matrix.
@ Insert
Definition: Epetra_CombineMode.h:68
int NumAllocatedMyEntries(int Row) const
Returns the allocated number of nonzero entries in specified local row on this processor.
Definition: Epetra_CrsMatrix.h:1145
Epetra_SerialDenseMatrix * RHS() const
Returns pointer to current RHS.
Definition: Epetra_SerialDenseSVD.h:289
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_JadMatrix multiplied by a Epetra_MultiVector X in Y.
bool MyLCID(int LCID_in) const
Returns true if the LRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_VbrMatrix.h:1113
virtual int Broadcast(long long *MyVals, int Count, int Root) const =0
Epetra_Comm Broadcast function.
int Broadcast(long *MyVals, int Count, int Root) const
Epetra_SerialComm Broadcast function.
Epetra_SerialComm(const Epetra_SerialComm &Comm)
Epetra_SerialComm Copy Constructor.
int ExtractCopy(double *V) const
Put vector values into user-provided array.
virtual int ScanSum(int *MyVals, int *ScanSums, int Count) const =0
Epetra_Comm Scan Sum function.
int FillComplete(const Epetra_BlockMap &DomainMap, const Epetra_BlockMap &RangeMap)
Signal that data entry is complete, perform transformations to local index space.
static int SortCrsEntries(int NumRows, const size_t *CRS_rowptr, int *CRS_colind, double *CRS_vals)
Epetra_Util SortCrsEntries function.
int LCID(int GCID_in) const
Returns the local column index for given global column index, returns -1 if no local column for this ...
Definition: Epetra_CrsMatrix.h:1286
int GlobalLength() const
Returns the global vector length of vectors in the multi-vector.
Definition: Epetra_IntVector.h:254
const char * Label() const
Returns a character string describing the operator.
Definition: Epetra_VbrMatrix.h:1135
Epetra_IntMultiVector(Epetra_DataAccess CV, const Epetra_IntMultiVector &Source, int *Indices, int NumVectors)
Set multi-vector values from list of vectors in an existing Epetra_IntMultiVector.
bool Factored()
Returns true if matrix is factored (factor available via AF() and LDAF()).
Definition: Epetra_SerialDenseSVD.h:239
Epetra_CrsMatrix: A class for constructing and using real-valued double-precision sparse compressed r...
Definition: Epetra_CrsMatrix.h:173
Epetra_DataAccess Mode enumerable type.
Epetra_CompObject(const Epetra_CompObject &Source)
Epetra_CompObject copy constructor.
int SetMatrix(Epetra_SerialDenseMatrix &A)
Sets the pointers for coefficient matrix.
void SYRK(const char UPLO, const char TRANS, const int N, const int K, const double ALPHA, const double *A, const int LDA, const double BETA, double *C, const int LDC) const
Eperta_BLAS symetric rank k funtion (dsyrk)
const Epetra_MultiVector * Epetra_View() const
Returns the Epetra portion of the Multi-Vector.
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y, double Alpha, double Beta=0.0) const
Performs a matrix multi-vector multiply of Y = Alpha*this^TransA*X + Beta*Y.
Epetra_OskiMatrix(const Epetra_CrsMatrix &Source, const Teuchos::ParameterList &List)
Constructor creates an Epetra_OskiMatrix from an Epetra_CrsMatrix.
char * Label() const
Returns a character string describing the operator.
Definition: Epetra_FastCrsMatrix.h:85
int ReplaceMyValues(int MyRow, int NumEntries, double *Values, int *Indices)
Replace current values with this list of entries for a given local row of the matrix....
Epetra_LongLongSerialDenseVector(int Length_in)
Sized constructor; defines a variable-sized object.
bool Inverted()
Returns true if matrix inverse has been computed (inverse available via AF() and LDAF()).
Definition: Epetra_SerialDenseSVD.h:258
bool LowerTriangular() const
If matrix is lower triangular, this query returns true, otherwise it returns false.
Definition: Epetra_BasicRowMatrix.h:305
int SumAll(long *PartialSums, long *GlobalSums, int Count) const
Epetra_SerialComm Global Sum function.
bool operator!=(const Epetra_SerialDenseMatrix &rhs) const
Inequality operator.
Definition: Epetra_SerialDenseMatrix.h:304
virtual int InvRowSums(Epetra_Vector &x) const
Computes the sum of absolute values of the rows of the Epetra_BasicRowMatrix, results returned in x.
Epetra_VbrMatrix(const Epetra_VbrMatrix &Matrix)
Copy constructor.
int SumIntoMyValue(int MyBlockRow, int BlockRowOffset, int VectorIndex, int OrdinalValue)
Adds OrdinalValue to existing value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) locati...
void UpdateFlops(long int Flops_in) const
Increment Flop count for this object from a long int.
Definition: Epetra_Flops.h:97
virtual ~Epetra_MapColoring()
Epetra_MapColoring destructor.
int MinAll(long *PartialMins, long *GlobalMins, int Count) const
Epetra_MpiComm Global Min function.
bool PointSameAs(const Epetra_BlockMap &Map) const
Returns true if this and Map have identical point-wise structure.
Epetra_Combine Mode enumerable type.
virtual int NumMyRows() const =0
Returns the number of matrix rows owned by the calling processor.
int DoReversePosts(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Do reverse post of buffer of export objects (can do other local work before executing Waits)
virtual ~Epetra_Data()
Epetra_Data Destructor.
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.
void HSEQR(const char JOB, const char COMPZ, const int N, const int ILO, const int IHI, double *H, const int LDH, double *WR, double *WI, double *Z, const int LDZ, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for computing the eigenvalues of a real upper Hessenberg matrix (DHSEQR)
bool Filled() const
If FillComplete() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_CrsMatrix.h:1007
virtual void Print(std::ostream &os) const
Print service methods; defines behavior of ostream << operator.
long long * A()
Returns pointer to the this matrix.
Definition: Epetra_LongLongSerialDenseMatrix.h:312
virtual int InvColSums(Epetra_Vector &x) const
Computes the sum of absolute values of the columns of the Epetra_BasicRowMatrix, results returned in ...
bool MyGCID(int GCID_in) const
Returns true if the GCID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsMatrix.h:1321
double NormOne() const
Returns the one norm of the global matrix.
Epetra_SerialDenseMatrix * FactoredMatrix() const
Returns pointer to factored matrix (assuming factorization has been performed).
Definition: Epetra_SerialDenseSolver.h:284
double ** Pointers() const
Get pointer to individual vector pointers.
Definition: Epetra_MultiVector.h:988
Epetra_Directory * CreateDirectory(const Epetra_BlockMap &Map) const
Create a directory object for the given Epetra_BlockMap.
int Resize(int Length_in)
Resize a Epetra_SerialDenseVector object.
Definition: Epetra_SerialDenseVector.h:171
int MaxAll(int *PartialMaxs, int *GlobalMaxs, int Count) const
Epetra_MpiComm Global Max function.
int TransformToLocal()
Use FillComplete() instead.
bool Transpose()
Returns true if transpose of this matrix has and will be used.
Definition: Epetra_SerialDenseSVD.h:236
int Solve(bool TransA, const Epetra_Vector &x, Epetra_Vector &y, double Alpha=1.0) const
Performs a triangular solve of y = Alpha*(this^TransA)^-1*x where this is a triangular matrix.
virtual double NormInf() const
Returns the infinity norm of the global matrix.
Definition: Epetra_SerialDenseSVD.h:432
int NormWeighted(const Epetra_MultiVector &Weights, double *Result) const
Compute Weighted 2-norm (RMS Norm) of each vector in multi-vector.
int BeginSumIntoGlobalValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate summing into current values with this list of entries for a given global row of the matrix,...
int TuneMatrix()
Tunes the matrix multiply if its deemed profitable.
Epetra_SerialDenseVector(Epetra_DataAccess CV, double *Values, int Length)
Set object values from one-dimensional array.
int SetSeed(unsigned int Seed_in)
Set seed for Random function.
Definition: Epetra_MultiVector.h:870
Epetra_JadMatrix: A class for constructing matrix objects optimized for common kernels.
Definition: Epetra_JadMatrix.h:68
void TREXC(const char COMPQ, const int N, double *T, const int LDT, double *Q, const int LDQ, int IFST, int ILST, double *WORK, int *INFO) const
Epetra_LAPACK wrapper for reordering the real-Schur/Schur factorization of a matrix (DTREXC)
virtual Epetra_Distributor * ReverseClone()=0
Create and extract the reverse version of the distributor.
double ANORM() const
Returns the 1-Norm of the this matrix (returns -1 if not yet computed).
Definition: Epetra_SerialDenseSVD.h:339
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: Epetra_MsrMatrix.h:281
const Epetra_Map & RowMatrixRowMap() const
Returns the Row Map object needed for implementing Epetra_RowMatrix.
Definition: Epetra_MsrMatrix.h:290
int NumMyPoints() const
Number of local points for this map; equals the sum of all element sizes on the calling processor.
Definition: Epetra_BlockMap.h:605
Epetra_SerialDenseMatrix(Epetra_DataAccess CV, double *A_in, int LDA_in, int NumRows, int NumCols, bool set_object_label=true)
Set object values from two-dimensional array.
int LeftScale(const Epetra_Vector &x)
Scales the Epetra_CrsMatrix on the left with a Epetra_Vector x.
int ReplaceGlobalValues(int NumEntries, int BlockOffset, const double *Values, const int *Indices)
Replace values in a vector with a given indexed list of values at the specified BlockOffset,...
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_VbrMatrix multiplied by a Epetra_MultiVector X in Y.
int BeginSumIntoMyValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate summing into current values with this list of entries for a given local row of the matrix,...
void GGSVD(const char JOBU, const char JOBV, const char JOBQ, const int M, const int N, const int P, int *K, int *L, double *A, const int LDA, double *B, const int LDB, double *ALPHA, double *BETA, double *U, const int LDU, double *V, const int LDV, double *Q, const int LDQ, double *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK wrapper to compute the generalized singular value decomposition (GSVD) of an M-by-N rea...
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_Vector &x, Epetra_Vector &y) const
Returns the result of a solve using the Epetra_VbrMatrix on a Epetra_Vector x in y.
void ReplacePermutation(const oski_perm_t &InPerm)
Stores a permutation in the data structure.
virtual ~Epetra_OskiPermutation()
Destructor.
int MaxAll(long long *PartialMaxs, long long *GlobalMaxs, int Count) const
Epetra_SerialComm Global Max function.
int M() const
Returns row dimension of system.
Definition: Epetra_SerialDenseSVD.h:292
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.
void SetOperator(Epetra_RowMatrix *A)
Set Operator A of linear problem AX = B using an Epetra_RowMatrix.
Definition: Epetra_LinearProblem.h:124
MPI_Comm Comm() const
Extract MPI Communicator from a Epetra_MpiComm object.
Definition: Epetra_MpiComm.h:457
int SumIntoGlobalValues(const Epetra_IntSerialDenseVector &indices, const Epetra_SerialDenseMatrix &values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
double NormInf() const
Returns the infinity norm of the global matrix.
Definition: Epetra_FastCrsMatrix.h:103
int CreateFromSendsAndRecvs(const int &NumExportIDs, const int *ExportPIDs, const int &NumRemoteIDs, const int *RemoteGIDs, const int *RemotePIDs, bool Deterministic)
Create a communication plan from send list and a recv list.
const Epetra_Comm & Comm() const
Fills a matrix with rows from a source matrix based on the specified importer.
Definition: Epetra_VbrMatrix.h:1059
int ApplyMatrixTransforms(const char *Transforms)
Replaces the current data structure of the matrix with the one specified in Transforms.
int NumGlobalDiagonals() const
Returns the number of global nonzero diagonal entries, based on global row/column index comparisons.
Definition: Epetra_CrsMatrix.h:1096
int M() const
Returns row dimension of system.
Definition: Epetra_SerialDenseSolver.h:293
bool Sorted() const
If SortEntries() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_VbrMatrix.h:1396
const int * ProcsTo() const
A list of procs to which this proc is sending values.
Definition: Epetra_MpiDistributor.h:283
int SumIntoGlobalValues(int numIDs, const int *GIDs, const double *values, int vectorIndex=0)
int MaxNumIndices() const
Returns the maximum number of nonzero entries across all rows on this processor.
Definition: Epetra_CrsGraph.h:731
virtual int DoReverse(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)=0
Execute reverse of plan on buffer of export objects in a single step.
int SetHint(const Teuchos::ParameterList &List)
Stores the hints in List in the matrix structure.
long long GlobalLength64() const
Returns the global vector length of vectors in the multi-vector.
Definition: Epetra_LongLongVector.h:255
int SumIntoGlobalValues(int numIndices, const int *indices, const double *const *values, int format=Epetra_FECrsMatrix::ROW_MAJOR)
virtual int Apply(const Epetra_SerialDenseMatrix &Xmat, Epetra_SerialDenseMatrix &Ymat)
Returns the result of a Epetra_SerialDenseOperator applied to a Epetra_SerialDenseMatrix X in Y.
Definition: Epetra_SerialDenseSVD.h:408
const int * Values() const
Returns const pointer to the values in vector.
Definition: Epetra_IntSerialDenseVector.h:214
Epetra_FEVbrMatrix(const Epetra_FEVbrMatrix &src)
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_BlockMap object associated with the domain of this matrix operator.
Definition: Epetra_InvOperator.h:147
int RightScale(const Epetra_Vector &x)
Scales the Epetra_VbrMatrix on the right with a Epetra_Vector x.
Definition: Epetra_VbrRowMatrix.h:181
virtual void Print(std::ostream &os) const
Print method.
Epetra_LinearProblemRedistor(Epetra_LinearProblem *OrigProblem, const Epetra_Map &RedistMap)
Epetra_LinearProblemRedistor constructor using pre-defined layout.
int SumAll(int *PartialSums, int *GlobalSums, int Count) const
Epetra_MpiComm Global Sum function.
int NumGlobalBlockEntries() const
Returns the number of nonzero block entries in the global matrix.
Definition: Epetra_VbrMatrix.h:978
void SetOperator(Epetra_Operator *A)
Set Operator A of linear problem AX = B using an Epetra_Operator.
Definition: Epetra_LinearProblem.h:130
int GatherAll(double *MyVals, double *AllVals, int Count) const
Epetra_MpiSmpComm All Gather function.
Epetra_OffsetIndex(const Epetra_OffsetIndex &Indexor)
Epetra_OffsetIndex copy constructor.
int BeginExtractGlobalBlockRowView(int BlockRow, int &RowDim, int &NumBlockEntries, int *&BlockIndices) const
Initiates a view of the specified global row, only works if matrix indices are in global mode.
int NumSends() const
The number of procs to which we will send data.
Definition: Epetra_MpiDistributor.h:271
int RemoveMyIndices(int LocalRow, int NumIndices, int *Indices)
Remove a list of elements from a specified local row of the graph.
const Epetra_Map & ColMap() const
Returns the Epetra_Map object that describes the set of column-indices that appear in each processor'...
Definition: Epetra_CrsMatrix.h:1230
bool HasNormInf() const
Returns true because this class can compute an Inf-norm.
Definition: Epetra_CrsMatrix.h:1397
virtual int ScanSum(double *MyVals, double *ScanSums, int Count) const =0
Epetra_Comm Scan Sum function.
bool MyGRID(int GRID_in) const
Returns true if the GRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsGraph.h:918
virtual int NumGlobalCols() const
Returns the number of global matrix columns.
Definition: Epetra_BasicRowMatrix.h:368
int ExtractGlobalRowCopy(int GlobalRow, int LenOfIndices, int &NumIndices, int *Indices) const
Extract a list of elements in a specified global row of the graph. Put into storage allocated by call...
virtual bool HasNormInf() const
Returns true because this class can compute an Inf-norm.
Definition: Epetra_MsrMatrix.h:363
const Epetra_Map & RowMatrixRowMap() const
Returns the Epetra_Map object associated with the rows of this matrix.
Definition: Epetra_CrsMatrix.h:1436
Epetra_SerialCommData: The Epetra Serial Communication Data Class.
Definition: Epetra_SerialCommData.h:55
int NumMyBlockCols() const
Returns the number of Block matrix columns owned by the calling processor.
Definition: Epetra_VbrMatrix.h:953
int Shape(int NumRows, int NumCols)
Set dimensions of a Epetra_IntSerialDenseMatrix object; init values to zero.
void POEQU(const int N, const double *A, const int LDA, double *S, double *SCOND, double *AMAX, int *INFO) const
Epetra_LAPACK equilibration for positive definite matrix (DPOEQU)
int RemoveGlobalIndices(long long Row)
Remove all indices from a specified global row of the graph.
int Reshape(int NumRowsCols)
Reshape a Epetra_SerialSymDenseMatrix object.
Definition: Epetra_SerialSymDenseMatrix.h:211
virtual const Epetra_BlockMap & Map() const
Implement the Epetra_SrcDistObjec::Map() function.
Definition: Epetra_BasicRowMatrix.h:412
int CheckInput() const
Check input parameters for existence and size consistency.
int SortIndices()
Sort column indices, row-by-row, in ascending order.
Epetra_IntVector(const Epetra_IntVector &Source)
Epetra_IntVector copy constructor.
int ExtractGlobalRowCopy(int GlobalRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified global row in user-provided arrays.
virtual int ExtractMyEntryView(int CurEntry, double *&Value, int &RowIndex, int &ColIndex)=0
Returns a reference to the ith entry in the matrix, along with its row and column index.
Epetra_FECrsMatrix & operator=(const Epetra_FECrsMatrix &src)
int ReplaceDiagonalValues(const Epetra_OskiVector &Diagonal)
Replaces diagonal values of the matrix with those in the user-provided vector.
Epetra_CrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, const Epetra_Map &ColMap, int NumEntriesPerRow, bool StaticProfile=false)
Epetra_CrsMatrix constuctor with fixed number of indices per row.
Epetra_CrsMatrix(const Epetra_CrsMatrix &SourceMatrix, const Epetra_Export &RowExporter, const Epetra_Export *DomainExporter, const Epetra_Map *DomainMap, const Epetra_Map *RangeMap, bool RestrictCommunicator)
Epetra CrsMatrix constructor that also fuses Ex[prt and FillComplete().
int NumMyCols() const
Returns the number of entries in the set of column-indices that appear on this processor.
Definition: Epetra_CrsMatrix.h:1115
virtual int NumGlobalNonzeros() const
Returns the number of nonzero entries in the global matrix.
Definition: Epetra_BasicRowMatrix.h:342
const Epetra_Map & RowMatrixColMap() const
Returns the Epetra_Map object associated with columns of this matrix.
Definition: Epetra_CrsMatrix.h:1439
int Do(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Execute plan on buffer of export objects in a single step (object size may vary)
int MaxRowDim() const
Returns the maximum row dimension of all block entries on this processor.
Definition: Epetra_VbrMatrix.h:906
void GETRI(const int N, double *A, const int LDA, int *IPIV, double *WORK, const int *LWORK, int *INFO) const
Epetra_LAPACK inversion for general matrix (DGETRI)
bool NoDiagonal() const
If graph has no diagonal entries in global index space, this query returns true, otherwise it returns...
Definition: Epetra_CrsGraph.h:532
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this matrix.
Definition: Epetra_CrsMatrix.h:1251
int Size(int Length_in)
Set length of a Epetra_SerialDenseVector object; init values to zero.
Definition: Epetra_SerialDenseVector.h:157
bool MyLID(int lid) const
Returns true if the LID passed in belongs to the calling processor in this map, otherwise returns fal...
Definition: Epetra_BlockMap.h:487
int NumGlobalNonzeros() const
Returns the number of indices in the global graph.
Definition: Epetra_CrsGraph.h:595
void POEQU(const int N, const float *A, const int LDA, float *S, float *SCOND, float *AMAX, int *INFO) const
Epetra_LAPACK equilibration for positive definite matrix (SPOEQU)
const Epetra_Map & RangeMap() const
Returns the Epetra_Map object associated with the range of this matrix operator.
Definition: Epetra_CrsMatrix.h:1242
int ExtractEntryCopy(int SizeOfValues, double *Values, int LDA, bool SumInto) const
Extract a copy of an entry from the block row specified by one of the BeginExtract routines.
void UpdateFlops(float Flops_in) const
Increment Flop count for this object.
Definition: Epetra_CompObject.h:111
Epetra_DataAccess CV() const
Returns the data access mode of the this matrix.
Definition: Epetra_LongLongSerialDenseMatrix.h:318
long long * Values() const
Returns a pointer to an array containing the values of this vector.
Definition: Epetra_LongLongVector.h:249
double * FERR() const
Returns a pointer to the forward error estimates computed by LAPACK.
Definition: Epetra_SerialDenseSolver.h:348
virtual int SetUseTranspose(bool use_transpose)
If set true, transpose of this operator will be applied.
Definition: Epetra_SerialDenseSVD.h:397
Epetra_IntSerialDenseMatrix: A class for constructing and using general dense integer matrices.
Definition: Epetra_IntSerialDenseMatrix.h:117
int CreateFromSends(const int &NumExportIDs, const int *ExportPIDs, bool Deterministic, int &NumRemoteIDs)
Create Distributor object using list of process IDs to which we export.
int MaxColDim() const
Returns the maximum column dimension of all block entries on this processor.
Definition: Epetra_VbrMatrix.h:909
double Flops() const
Returns the number of floating point operations with this multi-vector.
Definition: Epetra_CompObject.h:93
double * X() const
Returns pointer to current solution.
Definition: Epetra_SerialDenseSolver.h:314
virtual bool Filled() const
If FillComplete() has been called, this query returns true, otherwise it returns false,...
Definition: Epetra_BasicRowMatrix.h:302
int DoReverse(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Execute reverse of plan on buffer of export objects in a single step.
Epetra_IntSerialDenseMatrix(const Epetra_IntSerialDenseMatrix &Source)
Epetra_IntSerialDenseMatrix copy constructor.
virtual ~Epetra_Time(void)
Epetra_Time Destructor.
virtual int NumMyRows() const
Returns the number of matrix rows owned by the calling processor.
Definition: Epetra_BasicRowMatrix.h:394
int GID(int LID) const
Returns global ID of local ID, return IndexBase-1 if not found on this processor.
Epetra_FECrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, const Epetra_Map &ColMap, int *NumEntriesPerRow, bool ignoreNonLocalEntries=false)
virtual long long InfNorm()
Computes the Infinity-Norm of the this matrix.
int Scale(double ScalarValue)
Scale the current values of a multi-vector, this = ScalarValue*this.
int NumMyRowEntries(int MyRow, int &NumEntries) const
Return the current number of values stored for the specified local row.
void SPEV(const char JOBZ, const char UPLO, const int N, float *AP, float *W, float *Z, int LDZ, float *WORK, int *INFO) const
Epetra_LAPACK wrapper to compute all the eigenvalues and, optionally, eigenvectors of a real symmetri...
virtual const Epetra_Import * Importer() const
Returns the Epetra_Import object that contains the import operations for distributed operations,...
Definition: Epetra_BasicRowMatrix.h:499
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this matrix operator.
Definition: Epetra_VbrMatrix.h:1191
void SortGhostsAssociatedWithEachProcessor(bool Flag)
Forces FillComplete() to locally order ghostnodes associated with each remote processor in ascending ...
Definition: Epetra_CrsGraph.h:1018
virtual int ScanSum(long long *MyVals, long long *ScanSums, int Count) const =0
Epetra_Comm Scan Sum function.
int TransformToLocal(const Epetra_Map *DomainMap, const Epetra_Map *RangeMap)
Use FillComplete(const Epetra_Map& DomainMap, const Epetra_Map& RangeMap) instead.
virtual void Print(std::ostream &os) const
Print method.
virtual const char * Label() const
Returns a character string describing the operator.
Definition: Epetra_SerialDenseMatrix.h:458
Epetra_BlockMapData: The Epetra BlockMap Data Class.
Definition: Epetra_BlockMapData.h:65
int Update(double ScalarA, const Epetra_MultiVector &A, double ScalarB, const Epetra_MultiVector &B, double ScalarThis)
Update multi-vector with scaled values of A and B, this = ScalarThis*this + ScalarA*A + ScalarB*B.
int GlobalLength() const
Returns the global vector length of vectors in the multi-vector.
Definition: Epetra_MultiVector.h:932
Epetra_RowMatrix: A pure virtual class for using real-valued double-precision row matrices.
Definition: Epetra_RowMatrix.h:68
Epetra_IntMultiVector(const Epetra_IntMultiVector &Source)
Epetra_MultiVector copy constructor.
int MinAll(int *PartialMins, int *GlobalMins, int Count) const
Epetra_SerialComm Global Min function.
virtual int ColDim() const
Returns the column dimension of operator.
Definition: Epetra_SerialDenseMatrix.h:470
int InvRowSums(Epetra_Vector &x) const
Computes the sum of absolute values of the rows of the Epetra_MsrMatrix, results returned in x.
Epetra_BlockMap(int NumGlobalElements, int NumMyElements, const int *MyGlobalElements, int ElementSize, int IndexBase, const Epetra_Comm &Comm)
Epetra_BlockMap constructor for a user-defined arbitrary distribution of constant size elements.
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_BlockMap object associated with the range of this matrix operator.
Definition: Epetra_InvOperator.h:154
int ScanSum(long *MyVals, long *ScanSums, int Count) const
Epetra_MpiComm Scan Sum function.
bool IndicesAreContiguous() const
If matrix indices are packed into single array (done in OptimizeStorage()) return true,...
Definition: Epetra_CrsMatrix.h:1019
void SolveWithTranspose(bool Flag)
Causes equilibration to be called just before the matrix factorization as part of the call to Factor.
Definition: Epetra_SerialDenseSVD.h:149
void Barrier() const
Epetra_MpiComm Barrier function.
virtual void Print(std::ostream &os) const
Print method.
void LARFT(const char DIRECT, const char STOREV, const int N, const int K, double *V, const int LDV, double *TAU, double *T, const int LDT) const
Epetra_LAPACK for forming the triangular factor of a product of elementary Householder reflectors (SL...
Epetra_JadMatrix(const Epetra_RowMatrix &Matrix)
Epetra_JadMatrix constuctor.
virtual ~Epetra_BLAS(void)
Epetra_BLAS Destructor.
Definition: Epetra_BLAS.h:183
Epetra_MpiCommData: The Epetra Mpi Communication Data Class.
Definition: Epetra_MpiCommData.h:56
int MyLength() const
Returns the local vector length on the calling processor of vectors in the multi-vector.
Definition: Epetra_IntMultiVector.h:654
Epetra_Export * exporter_
Export object that sums nonlocal data into a nonoverlapping distribution.
Definition: Epetra_FEVector.h:336
int ReplaceGlobalValue(int GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
Replace current value at the specified (GlobalBlockRow, BlockRowOffset, VectorIndex) location with Sc...
static int GetTracebackMode()
Get the value of the Epetra_Object error report mode.
int MinAll(int *PartialMins, int *GlobalMins, int Count) const
Epetra_MpiComm Global Min function.
Epetra_MapColoring(const Epetra_MapColoring &Source)
Epetra_MapColoring copy constructor.
Epetra_DataAccess
Definition: Epetra_DataAccess.h:55
double * AF() const
Returns pointer to the factored matrix (may be the same as A() if factorization done in place).
Definition: Epetra_SerialDenseSolver.h:320
bool UniqueGIDs() const
Returns true if map GIDs are 1-to-1.
Definition: Epetra_BlockMap.h:628
Epetra_BlockMap * ReplaceCommWithSubset(const Epetra_Comm *Comm) const
Replace this BlockMap's communicator with a subset communicator.
int * ElementColors() const
Returns pointer to array of the colors associated with the LIDs on the calling processor.
Definition: Epetra_MapColoring.h:222
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_BasicRowMatrix.h:483
Epetra_OskiError: The Epetra OSKI Class to provide access to get and set error handling routines in O...
Definition: Epetra_OskiError.h:55
int ExtractView(int **V) const
Set user-provided address of V.
int * Values() const
Get pointer to MultiVector values.
Definition: Epetra_IntMultiVector.h:711
double ROWCND() const
Ratio of smallest to largest row scale factors for the this matrix (returns -1 if not yet computed).
Definition: Epetra_SerialDenseSolver.h:337
void GESDD(const char JOBZ, const int M, const int N, double *A, const int LDA, double *S, double *U, const int LDU, double *VT, const int LDVT, double *WORK, const int LWORK, int *IWORK, int *INFO) const
Epetra_LAPACK wrapper to compute the singular value decomposition (SVD) of a real M-by-N matrix A,...
int SumIntoGlobalValue(int GlobalRow, int VectorIndex, int OrdinalValue)
Adds OrdinalValue to existing value at the specified (GlobalRow, VectorIndex) location.
int UnpackWithOwningPIDsCount(const Epetra_CrsMatrix &SourceMatrix, int NumSameIDs, int NumRemoteIDs, const int *RemoteLIDs, int NumPermuteIDs, const int *PermuteToLIDs, const int *PermuteFromLIDs, int LenImports, char *Imports)
UnpackWithOwningPIDsCount.
int MatPowMultiply(bool TransA, const Epetra_Vector &x, Epetra_Vector &y, Epetra_MultiVector &T, int Power=2, double Alpha=1.0, double Beta=0.0) const
Performs a matrix vector multiply of y = Alpha*(this^TransA)^Power*x + Beta*y. This is not implemente...
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.
Definition: Epetra_CrsMatrix.h:1393
Epetra_Distributor * ReverseClone()
Create and extract the reverse version of the distributor.
Epetra_OskiMultiVector & operator=(const Epetra_OskiMultiVector &Source)
Sets this equal to Source.
virtual double NormInf() const
Returns the infinity norm of the global matrix.
Definition: Epetra_BasicRowMatrix.h:323
virtual ~Epetra_FEVector()
int NormInf(double *Result) const
Compute Inf-norm of each vector in multi-vector.
virtual ~Epetra_MsrMatrix()
Epetra_MsrMatrix Destructor.
int DoPosts(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Post buffer of export objects (can do other local work before executing Waits)
int Norm2(double *Result) const
Compute 2-norm of each vector in multi-vector.
Epetra_LongLongSerialDenseMatrix & operator=(const Epetra_LongLongSerialDenseMatrix &Source)
Copy from one matrix to another.
bool MyGlobalBlockRow(int GID) const
Returns true of GID is owned by the calling processor, otherwise it returns false.
Definition: Epetra_VbrMatrix.h:1117
int Factor(void)
Computes the in-place Cholesky factorization of the matrix using the LAPACK routine DPOTRF.
virtual int Invert(double rthresh=0.0, double athresh=0.0)
Inverts the this matrix.
int * ColorLIDList(int Color) const
Returns pointer to array of Map LIDs associated with the specified color.
void SetRHS(Epetra_MultiVector *B)
Set right-hand-side B of linear problem AX = B.
Definition: Epetra_LinearProblem.h:141
const long long * A() const
Returns const pointer to the this matrix.
Definition: Epetra_LongLongSerialDenseMatrix.h:309
void UnsetFlopCounter()
Set the internal Epetra_Flops() pointer to 0 (no flops counted).
Definition: Epetra_CompObject.h:82
const Epetra_Map & ImportMap() const
Use ColMap() instead.
Definition: Epetra_CrsMatrix.h:1541
int NRHS() const
Returns the number of current right hand sides and solution vectors.
Definition: Epetra_SerialDenseSolver.h:311
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 bool GIDsAllUniquelyOwned() const =0
GIDsAllUniquelyOwned: returns true if all GIDs appear on just one processor.
int Resize(int Length_in)
Resize a Epetra_LongLongSerialDenseVector object.
Definition: Epetra_LongLongSerialDenseVector.h:156
void POTRS(const char UPLO, const int N, const int NRHS, const float *A, const int LDA, float *X, const int LDX, int *INFO) const
Epetra_LAPACK solve (after factorization) for positive definite matrix (SPOTRS)
virtual int Do(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)=0
Execute plan on buffer of export objects in a single step.
double NormInf() const
Computes the Infinity-Norm of the this matrix.
static int GetPids(const Epetra_Import &Importer, std::vector< int > &pids, bool use_minus_one_for_local)
Epetra_Util GetPids function.
Epetra_LinearProblem(Epetra_Operator *A, Epetra_MultiVector *X, Epetra_MultiVector *B)
Epetra_LinearProblem Constructor to pass in a basic Epetra_Operator.
virtual int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const =0
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.
int MaxValue(double *Result) const
Compute maximum value of each vector in multi-vector.
virtual int Apply(const Epetra_SerialDenseMatrix &X, Epetra_SerialDenseMatrix &Y)=0
Returns the result of a Epetra_SerialDenseOperator applied to a Epetra_SerialDenseMatrix X in Y.
const Epetra_OskiPermutation & ViewColumnPermutation() const
Returns a read only column/right permutation of the Matrix.
void TRMM(const char SIDE, const char UPLO, const char TRANSA, const char DIAG, const int M, const int N, const float ALPHA, const float *A, const int LDA, float *B, const int LDB) const
Epetra_BLAS triangular matrix-matrix multiply function (STRMM)
int ExtractMyRowView(int MyRow, int &NumEntries, double *&Values, int *&Indices) const
Returns a view of the specified local row values via pointers to internal data.
void Init()
Initializes OSKI.
virtual int ApplyInverse(const Epetra_SerialDenseMatrix &X, Epetra_SerialDenseMatrix &Y)=0
Returns the result of a Epetra_SerialDenseOperator inverse applied to an Epetra_SerialDenseMatrix X i...
const Epetra_BlockMapData * DataPtr() const
Returns a pointer to the BlockMapData instance this BlockMap uses.
Definition: Epetra_BlockMap.h:788
virtual void Print(std::ostream &os) const
Print method.
int ExtractCopy(int *A, int MyLDA) const
Put multi-vector values into user-provided two-dimensional array.
int NumGlobalBlockDiagonals() const
Returns the number of Block diagonal entries in the global graph, based on global row/column index co...
Definition: Epetra_CrsGraph.h:665
static double Chop(const double &Value)
Epetra_Util Chop method. Return zero if input Value is less than ChopValue.
virtual ~Epetra_Import(void)
Epetra_Import destructor.
int * ElementSizeList() const
List of the element sizes corresponding to the array MyGlobalElements().
virtual bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: Epetra_SerialDenseMatrix.h:464
int NumMyCols() const
Returns the number of entries in the set of column-indices that appear on this processor.
Definition: Epetra_CrsGraph.h:572
int MatTransMatMultiply(bool ATA, const Epetra_MultiVector &X, Epetra_MultiVector &Y, Epetra_MultiVector *T, double Alpha=1.0, double Beta=0.0) const
Performs two matrix multi-vector multiplies of Y = Alpha*this^TransA*this*X + Beta*Y or Y = Alpha*thi...
int Broadcast(double *MyVals, int Count, int Root) const
Epetra_MpiSmpComm Broadcast function.
int ReplaceGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
oski_vecview_t Oski_View() const
Returns the Oski portion of the Multi-Vector.
int Shape(int NumRows, int NumCols)
Set dimensions of a Epetra_SerialDenseMatrix object; init values to zero.
Epetra_Time(const Epetra_Time &Time)
Epetra_Time Copy Constructor.
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this matrix.
Definition: Epetra_FastCrsMatrix.h:106
int GatherAll(double *MyVals, double *AllVals, int Count) const
Epetra_SerialComm All Gather function.
int SubmitBlockEntry(double *Values, int LDA, int NumRows, int NumCols)
Submit a block entry to the indicated block row and column specified in the Begin routine.
int NumGlobalPoints() const
Number of global points for this map; equals the sum of all element sizes across all processors.
Definition: Epetra_BlockMap.h:596
int NumGlobalDiagonals() const
Returns the number of diagonal entries in the global graph, based on global row/column index comparis...
Definition: Epetra_CrsGraph.h:608
virtual int MinAll(long long *PartialMins, long long *GlobalMins, int Count) const =0
int SetUseTranspose(bool UseTranspose_in)
If set true, transpose of this operator will be applied.
Definition: Epetra_CrsMatrix.h:1365
void SolveWithTranspose(bool Flag)
If Flag is true, causes all subsequent function calls to work with the transpose of this matrix,...
Definition: Epetra_SerialDenseSolver.h:169
int ReplaceMap(const Epetra_BlockMap &map)
int ResetView(int **ArrayOfPointers)
Reset the view of an existing multivector to point to new user data.
int DoReversePosts(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Do reverse post of buffer of export objects (can do other local work before executing Waits)
int ElementSize(int LID) const
Size of element for specified LID.
double RCOND() const
Returns the reciprocal of the condition number of the this matrix (returns -1 if not yet computed).
Definition: Epetra_SerialDenseSolver.h:332
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified local row in user-provided arrays.
int ScanSum(long long *MyVals, long long *ScanSums, int Count) const
Epetra_MpiComm Scan Sum function.
Epetra_InvOperator(Epetra_Operator *operatorIn)
Uses an Epetra_Operator instance to implement the Epetra_Operator interface.
Definition: Epetra_InvOperator.h:69
Epetra_FEVector(const Epetra_FEVector &source)
int InsertMyIndices(int LocalRow, int NumIndices, int *Indices)
Enter a list of elements in a specified local row of the graph.
int Random()
Set matrix values to random numbers.
int Scale(double ScalarConstant)
Multiply all values in the matrix by a constant value (in place: A <- ScalarConstant * A).
virtual int RowDim() const =0
Returns the row dimension of operator.
virtual int GetDirectoryEntries(const Epetra_BlockMap &Map, const int NumEntries, const int *GlobalEntries, int *Procs, int *LocalEntries, int *EntrySizes, bool high_rank_sharing_procs=false) const =0
GetDirectoryEntries : Returns proc and local id info for non-local map entries.
int SetUseTranspose(bool UseTranspose_in)
If set true, transpose of this operator will be applied.
Definition: Epetra_InvOperator.h:91
virtual ~Epetra_SerialDenseVector()
Epetra_SerialDenseVector destructor.
int GlobalLength() const
Returns the global vector length of vectors in the multi-vector.
Definition: Epetra_IntMultiVector.h:658
virtual int MaxAll(int *PartialMaxs, int *GlobalMaxs, int Count) const =0
Epetra_Comm Global Max function.
int SumIntoMyValues(int NumEntries, const double *Values, const int *Indices)
Sum values into a vector with a given indexed list of values, indices are in local index space.
int NumMyBlockEntries() const
Returns the number of nonzero block entries in the calling processor's portion of the matrix.
Definition: Epetra_VbrMatrix.h:956
void SYEVX(const char JOBZ, const char RANGE, const char UPLO, const int N, float *A, const int LDA, const float *VL, const float *VU, const int *IL, const int *IU, const float ABSTOL, int *M, float *W, float *Z, const int LDZ, float *WORK, const int LWORK, int *IWORK, int *IFAIL, int *INFO) const
Epetra_LAPACK wrapper to compute selected eigenvalues and, optionally, eigenvectors of a real symmetr...
int SumIntoGlobalValues(int NumEntries, const double *Values, const int *Indices)
Sum values into a vector with a given indexed list of values, indices are in global index space.
virtual void Print(std::ostream &os) const
Print method.
int NumAllocatedGlobalEntries(int Row) const
Returns the allocated number of nonzero entries in specified global row on this processor.
Definition: Epetra_CrsMatrix.h:1127
Epetra_Import(const Epetra_Import &Importer)
Epetra_Import copy constructor.
Epetra_MpiComm: The Epetra MPI Communication Class.
Definition: Epetra_MpiComm.h:64
virtual void Print(std::ostream &os) const
Print method.
int MaxAll(double *PartialMaxs, double *GlobalMaxs, int Count) const
Epetra_MpiSmpComm Global Max function.
int MinLID() const
The minimum local index value on the calling processor.
Definition: Epetra_BlockMap.h:536
int NumGlobalBlockRows() const
Returns the number of Block matrix rows in global matrix.
Definition: Epetra_CrsGraph.h:627
Epetra_OskiMatrix(const Epetra_OskiMatrix &Source)
Copy constructor.
Epetra_SerialDenseVector(const Epetra_SerialDenseVector &Source)
Epetra_SerialDenseVector copy constructor.
Epetra_SerialComm: The Epetra Serial Communication Class.
Definition: Epetra_SerialComm.h:61
Epetra_Object(const Epetra_Object &Object)
Epetra_Object Copy Constructor.
void SYEV(const char JOBZ, const char UPLO, const int N, double *A, const int LDA, double *W, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to compute all eigenvalues and, optionally, eigenvectors of a real symmetric ma...
int ExtractCopy(double *A, int MyLDA) const
Put multi-vector values into user-provided two-dimensional array.
void TRTRS(const char UPLO, const char TRANS, const char DIAG, const int N, const int NRHS, const double *A, const int LDA, double *B, const int LDB, int *INFO) const
Epetra_LAPACK wrapper for TRTRS routine.
int Random()
Set matrix values to random numbers.
bool ConstantElementSize() const
Returns true if map has constant element size.
Definition: Epetra_BlockMap.h:675
virtual int Invert(void)
Inverts the this matrix.
int UpdateValues(const Epetra_CrsMatrix &Matrix)
Update values using a matrix with identical structure.
int MaxSendLength() const
Maximum number of values that this proc is sending to another single proc.
Definition: Epetra_MpiDistributor.h:274
void PORFS(const char UPLO, const int N, const int NRHS, const float *A, const int LDA, const float *AF, const int LDAF, const float *B, const int LDB, float *X, const int LDX, float *FERR, float *BERR, float *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK solve driver for positive definite matrix (SPOSVX)
int Broadcast(long long *MyVals, int Count, int Root) const
Epetra_MpiComm Broadcast function.
int Broadcast(long *MyVals, int Count, int Root) const
Epetra_MpiComm Broadcast function.
Epetra_Comm * Clone() const
Clone method.
Definition: Epetra_MpiComm.h:84
int LCID(int GCID_in) const
Returns the local column index for given global column index, returns -1 if no local column for this ...
Definition: Epetra_VbrMatrix.h:1081
int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
Returns a copy of the main diagonal in a user-provided vector.
Epetra_LongLongSerialDenseVector()
Default constructor; defines a zero size object.
const Epetra_CrsGraph & Graph() const
Returns a pointer to the Epetra_CrsGraph object associated with this matrix.
Definition: Epetra_VbrMatrix.h:1036
int DirectSubmitBlockEntry(int GlobalBlockRow, int GlobalBlockCol, const double *values, int LDA, int NumRows, int NumCols, bool sum_into)
Submit a block-entry directly into the matrix (without using a begin/end sequence)
int SortGhostsAssociatedWithEachProcessor(bool Flag)
Forces FillComplete() to locally order ghostnodes associated with each remote processor in ascending ...
Definition: Epetra_CrsMatrix.h:1534
int DoWaits()
Wait on a set of posts.
int NumMyNonzeros() const
Returns the number of nonzero entries in the calling processor's portion of the matrix.
Definition: Epetra_MsrMatrix.h:269
virtual ~Epetra_IntMultiVector()
Epetra_MultiVector destructor.
long long NumGlobalDiagonals64() const
Returns the number of global nonzero diagonal entries.
Definition: Epetra_MsrMatrix.h:266
void SPGV(const int ITYPE, const char JOBZ, const char UPLO, const int N, double *AP, double *BP, double *W, double *Z, const int LDZ, double *WORK, int *INFO) const
Epetra_LAPACK wrapper to compute all the eigenvalues and, optionally, the eigenvectors of a real gene...
int TransformToLocal(const Epetra_BlockMap *DomainMap, const Epetra_BlockMap *RangeMap)
Use FillComplete(const Epetra_BlockMap& DomainMap, const Epetra_BlockMap& RangeMap) instead.
const Epetra_BlockMap & SourceMap() const
Returns the SourceMap used to construct this importer.
Definition: Epetra_Import.h:294
int SumAll(long long *PartialSums, long long *GlobalSums, int Count) const
Epetra_MpiComm Global Sum function.
virtual int DoReverseWaits()=0
Wait on a reverse set of posts.
int LeftScale(const Epetra_Vector &x)
Scales the Epetra_VbrMatrix on the left with a Epetra_Vector x.
Definition: Epetra_VbrRowMatrix.h:196
int CheckSizes(const Epetra_SrcDistObject &A)
Allows the source and target (this) objects to be compared for compatibility, return nonzero if not.
static int GetRemotePIDs(const Epetra_Import &Importer, std::vector< int > &RemotePIDs)
Epetra_Util GetRemotePIDs.
Epetra_VbrMatrix(Epetra_DataAccess CV, const Epetra_CrsGraph &Graph)
Construct a matrix using an existing Epetra_CrsGraph object.
int ReferenceCount() const
Returns the reference count of BlockMapData.
Definition: Epetra_BlockMap.h:784
Epetra_FECrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, int *NumEntriesPerRow, bool ignoreNonLocalEntries=false)
int SetUseTranspose(bool use_transpose)
If set true, transpose of this operator will be applied.
Definition: Epetra_MsrMatrix.h:326
void SYEVD(const char JOBZ, const char UPLO, const int N, double *A, const int LDA, double *W, double *WORK, const int LWORK, int *IWORK, const int LIWORK, int *INFO) const
Epetra_LAPACK wrapper to compute all eigenvalues and, optionally, eigenvectors of a real symmetric ma...
Epetra_Util: The Epetra Util Wrapper Class.
Definition: Epetra_Util.h:79
int LDAI() const
Returns the leading dimension of the inverted matrix.
Definition: Epetra_SerialDenseSVD.h:332
void GEHRD(const int N, const int ILO, const int IHI, float *A, const int LDA, float *TAU, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for reduction to Hessenberg form (SGEHRD)
Epetra_LongLongSerialDenseMatrix()
Default constructor; defines a zero size object.
void SYEVD(const char JOBZ, const char UPLO, const int N, float *A, const int LDA, float *W, float *WORK, const int LWORK, int *IWORK, const int LIWORK, int *INFO) const
Epetra_LAPACK wrapper to compute all eigenvalues and, optionally, eigenvectors of a real symmetric ma...
Epetra_LinearProblem: The Epetra Linear Problem Class.
Definition: Epetra_LinearProblem.h:62
int ExtractMyEntryView(int CurEntry, double const *&Value, int &RowIndex, int &ColIndex) const
Returns a const reference to the ith entry in the matrix, along with its row and column index.
Definition: Epetra_JadMatrix.h:144
double InfNorm() const
Computes the Infinity-Norm of the this matrix (identical to NormInf() method).
Definition: Epetra_SerialSymDenseMatrix.h:270
double * R() const
Returns a pointer to the row scaling vector used for equilibration.
Definition: Epetra_SerialDenseSolver.h:354
virtual int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_BasicRowMatrix solve with a Epetra_MultiVector X in Y (not implemented...
Definition: Epetra_BasicRowMatrix.h:234
void POCON(const char UPLO, const int N, const double *A, const int LDA, const double ANORM, double *RCOND, double *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK condition number estimator for positive definite matrix (DPOCON)
int IsMatrixTransformed() const
Returns 1 if the matrix has been reordered by tuning, and 0 if it has not been.
const int * LengthsFrom() const
Number of values we're receiving from each proc.
Definition: Epetra_MpiDistributor.h:287
virtual int LeftScale(const Epetra_Vector &x)=0
Scales the Epetra_RowMatrix on the left with a Epetra_Vector x.
int MinAllGID() const
Returns the minimum global ID across the entire map.
Definition: Epetra_BlockMap.h:497
int DoWaits()
Wait on a set of posts.
int InvColMaxs(Epetra_Vector &x) const
Computes the max of absolute values of the columns of the Epetra_CrsMatrix, results returned in x.
int ReplaceDiagonalValues(const Epetra_Vector &Diagonal)
Replaces diagonal values of the with those in the user-provided vector.
virtual int DoReversePosts(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)=0
Do reverse post of buffer of export objects (can do other local work before executing Waits)
Epetra_Import(const Epetra_BlockMap &TargetMap, const Epetra_BlockMap &SourceMap)
Constructs a Epetra_Import object from the source and target maps.
int GlobalMaxNumIndices() const
Returns the maximun number of nonzero entries across all rows across all processors.
Definition: Epetra_CrsGraph.h:737
int MyGlobalElements(int *MyGlobalElementList) const
Puts list of global elements on this processor into the user-provided array.
int SetMatrix(Epetra_SerialSymDenseMatrix &A_in)
Sets the pointers for coefficient matrix; special version for symmetric matrices.
virtual int InvRowSums(Epetra_Vector &x) const =0
Computes the sum of absolute values of the rows of the Epetra_RowMatrix, results returned in x.
void ORMHR(const char SIDE, const char TRANS, const int M, const int N, const int ILO, const int IHI, const double *A, const int LDA, const double *TAU, double *C, const int LDC, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for applying an orthogonal matrix in-place (DORMHR)
void COPY(const int N, const float *X, float *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS vector copy function (SCOPY)
void POSVX(const char FACT, const char UPLO, const int N, const int NRHS, float *A, const int LDA, float *AF, const int LDAF, const char EQUED, float *S, float *B, const int LDB, float *X, const int LDX, float *RCOND, float *FERR, float *BERR, float *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK solve driver for positive definite matrix (SPOSVX)
int ExtractView(int **A, int *MyLDA) const
Set user-provided addresses of A and MyLDA.
Epetra_FECrsMatrix(const Epetra_FECrsMatrix &src)
virtual const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator (same as domain).
Definition: Epetra_BasicRowMatrix.h:409
unsigned int Seed() const
Get seed from Random function.
double * AI() const
Returns pointer to the inverted matrix (may be the same as A() if factorization done in place).
Definition: Epetra_SerialDenseSVD.h:329
Epetra_MultiVector(const Epetra_BlockMap &Map, int NumVectors, bool zeroOut=true)
Basic Epetra_MultiVector constuctor.
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.
Definition: Epetra_CrsMatrix.h:1376
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a local solve using the Epetra_CrsMatrix a Epetra_MultiVector X in Y.
int MaxAll(double *PartialMaxs, double *GlobalMaxs, int Count) const
Epetra_SerialComm Global Max function.
int UpdateOriginalLHS(Epetra_MultiVector *LHS)
Update LHS of original Linear Problem object.
Epetra_BLAS: The Epetra BLAS Wrapper Class.
Definition: Epetra_BLAS.h:70
int SumAll(int *PartialSums, int *GlobalSums, int Count) const
Epetra_SerialComm Global Sum function.
virtual int RowDim() const
Returns the row dimension of operator.
Definition: Epetra_SerialDenseMatrix.h:467
Epetra_SerialSymDenseMatrix(Epetra_DataAccess CV, double *A, int LDA, int NumRowsCols)
Set object values from two-dimensional array.
const int * LengthsTo() const
Number of values we're sending to each proc.
Definition: Epetra_MpiDistributor.h:291
Epetra_DataAccess CV() const
Returns the data access mode of the this vector.
Definition: Epetra_IntSerialDenseVector.h:217
int NumSend() const
Total number of elements to be sent.
Definition: Epetra_Export.h:269
void UpdateFlops(int Flops_in) const
Increment Flop count for this object from an int.
Definition: Epetra_Flops.h:95
bool UpperTriangular() const
If matrix is upper triangular in local index space, this query returns true, otherwise it returns fal...
Definition: Epetra_CrsMatrix.h:1025
std::vector< std::vector< double > > nonlocalCoefs_
Array of arrays (one per column) of nonlocal coefficients.
Definition: Epetra_FEVector.h:330
const Epetra_Import * RowMatrixImporter() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
Definition: Epetra_CrsMatrix.h:1442
bool Factored()
Returns true if matrix is factored (factor available via AF() and LDAF()).
Definition: Epetra_SerialDenseSolver.h:250
int SetHintPowMultiply(bool TransA, double Alpha, const Epetra_OskiMultiVector &InVec, double Beta, const Epetra_OskiMultiVector &OutVec, const Epetra_OskiMultiVector &Intermediate, int Power, int NumCalls, const Teuchos::ParameterList &List)
Workload hints for computing a matrix-vector multiply performed Power times used by OskiTuneMat to op...
void GESVD(const char JOBU, const char JOBVT, const int M, const int N, float *A, const int LDA, float *S, float *U, const int LDU, float *VT, const int LDVT, float *WORK, const int *LWORK, int *INFO) const
Epetra_LAPACK wrapper for computing the singular value decomposition (SGESVD)
void SYEVX(const char JOBZ, const char RANGE, const char UPLO, const int N, double *A, const int LDA, const double *VL, const double *VU, const int *IL, const int *IU, const double ABSTOL, int *M, double *W, double *Z, const int LDZ, double *WORK, const int LWORK, int *IWORK, int *IFAIL, int *INFO) const
Epetra_LAPACK wrapper to compute selected eigenvalues and, optionally, eigenvectors of a real symmetr...
int InsertGlobalIndices(int GlobalRow, int NumIndices, int *Indices)
Enter a list of elements in a specified global row of the graph.
Epetra_LongLongSerialDenseVector(const Epetra_LongLongSerialDenseVector &Source)
Epetra_LongLongSerialDenseVector copy constructor.
int * RemoteLIDs() const
List of elements in the target map that are coming from other processors.
Definition: Epetra_Export.h:257
const Epetra_MpiCommData * DataPtr() const
Returns a pointer to the MpiCommData instance this MpiComm uses.
Definition: Epetra_MpiComm.h:518
int Do(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Execute plan on buffer of export objects in a single step.
virtual int CreateFromRecvs(const int &NumRemoteIDs, const int *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int &NumExportIDs, int *&ExportGIDs, int *&ExportPIDs)=0
Create Distributor object using list of Remote global IDs and corresponding PIDs.
bool operator!=(const Epetra_IntSerialDenseMatrix &rhs) const
Inequality operator.
Definition: Epetra_IntSerialDenseMatrix.h:237
Epetra_Directory: This class is a pure virtual class whose interface allows Epetra_Map and Epetr_Bloc...
Definition: Epetra_Directory.h:59
int SetHintMatTransMatMultiply(bool ATA, double Alpha, const Epetra_OskiMultiVector &InVec, double Beta, const Epetra_OskiMultiVector &OutVec, const Epetra_OskiMultiVector &Intermediate, int NumCalls, const Teuchos::ParameterList &List)
Workload hints for computing a two matrix-vector multiplies that are composed used by OskiTuneMat to ...
int Multiply(char TransA, char TransB, double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis)
Matrix-Matrix multiplication, this = ScalarThis*this + ScalarAB*A*B.
bool SameAs(const Epetra_BlockMap &Map) const
Returns true if this and Map are identical maps.
virtual ~Epetra_MpiDistributor()
Destructor (declared virtual for memory safety).
int InvColSums(Epetra_Vector &x) const
Computes the inverse of the sum of absolute values of the columns of the Epetra_CrsMatrix,...
const Epetra_BlockMap & Map() const
Implement the Epetra_SrcDistObjec::Map() function.
Definition: Epetra_MsrMatrix.h:287
int Broadcast(char *MyVals, int Count, int Root) const
Epetra_MpiSmpComm Broadcast function.
Epetra_BlockMap: A class for partitioning block element vectors and matrices.
Definition: Epetra_BlockMap.h:194
double & operator[](int Index)
Element access function.
Definition: Epetra_SerialDenseVector.h:306
Epetra_VbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, int *NumBlockEntriesPerRow)
Epetra_VbrMatrix constuctor with variable number of indices per row.
int ExtractMyRowCopy(int LocalRow, int LenOfIndices, int &NumIndices, int *Indices) const
Extract a list of elements in a specified local row of the graph. Put into storage allocated by calli...
virtual int EquilibrateMatrix(void)
Equilibrates the this matrix.
virtual bool LowerTriangular() const =0
If matrix is lower triangular in local index space, this query returns true, otherwise it returns fal...
Epetra_OskiVector(const Epetra_OskiVector &Source)
Copy constructor.
int MaxNumBlockEntries() const
Returns the maximum number of nonzero entries across all rows on this processor.
Definition: Epetra_VbrMatrix.h:1001
Epetra_MpiComm(const Epetra_MpiComm &Comm)
Epetra_MpiComm Copy Constructor.
Epetra_Vector: A class for constructing and using dense vectors on a parallel computer.
Definition: Epetra_Vector.h:142
int Length() const
Returns length of vector.
Definition: Epetra_LongLongSerialDenseVector.h:211
float NRM2(const int N, const float *X, const int INCX=1) const
Epetra_BLAS norm function (SNRM2).
int * ExportLIDs() const
List of elements that will be sent to other processors.
Definition: Epetra_Import.h:282
virtual bool UseTranspose() const =0
Returns the current UseTranspose setting.
const Epetra_BlockMap & ImportMap() const
Use ColMap() instead.
Definition: Epetra_CrsGraph.h:987
int Resize(int Length_in)
Resize a Epetra_IntSerialDenseVector object.
Definition: Epetra_IntSerialDenseVector.h:153
Epetra_Comm * Clone() const
Clone method.
Definition: Epetra_MpiSmpComm.h:82
int NumGlobalIndices(long long Row) const
Returns the current number of nonzero entries in specified global row on this processor.
virtual int ReportError(const std::string Message, int ErrorCode) const
Error reporting method.
static Epetra_Map Create_Root_Map(const Epetra_Map &usermap, int root=0)
Epetra_Util Create_Root_Map function.
Epetra_MsrMatrix(int *proc_config, AZ_MATRIX *Amat)
Epetra_MsrMatrix constuctor using existing Aztec DMSR matrix.
virtual int MaxNumEntries() const
Returns the maximum number of nonzero entries across all rows on this processor.
Definition: Epetra_BasicRowMatrix.h:403
void TREVC(const char SIDE, const char HOWMNY, int *SELECT, const int N, const float *T, const int LDT, float *VL, const int LDVL, float *VR, const int LDVR, const int MM, int *M, float *WORK, int *INFO) const
Epetra_LAPACK wrapper for computing eigenvectors of a quasi-triangular/triagnular matrix (STREVC)
virtual int SumAll(double *PartialSums, double *GlobalSums, int Count) const =0
Epetra_Comm Global Sum function.
virtual const Epetra_Import * RowMatrixImporter() const =0
Returns the Epetra_Import object that contains the import operations for distributed operations.
double NormInf() const
Returns the infinity norm of the global matrix.
int BeginReplaceMyValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate replacement of current values with this list of entries for a given local row of the matrix,...
int IAMAX(const int N, const float *X, const int INCX=1) const
Epetra_BLAS arg maximum of absolute value function (ISAMAX)
Epetra_IntSerialDenseVector(const Epetra_IntSerialDenseVector &Source)
Epetra_IntSerialDenseVector copy constructor.
int * PermuteToLIDs() const
List of elements in the target map that are permuted.
Definition: Epetra_Import.h:270
Epetra_CrsGraph(const Epetra_CrsGraph &Graph)
Copy constructor.
int MaxColDim() const
Returns the max column dimension of block entries on the processor.
Definition: Epetra_CrsGraph.h:707
int MyLength() const
Returns the local vector length on the calling processor of vectors in the multi-vector.
Definition: Epetra_MultiVector.h:928
const Epetra_Export * Exporter() const
Returns the Epetra_Export object that contains the export operations for distributed operations.
Definition: Epetra_CrsMatrix.h:1248
Epetra_OskiError OskiGetErrorHandler()
Gets a pointer to the current error handler routine being used by OSKI.
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_Vector &x, Epetra_Vector &y) const
Returns the result of a local solve using the Epetra_CrsMatrix on a Epetra_Vector x in y.
int Reshape(int NumRows, int NumCols)
Reshape a Epetra_SerialDenseMatrix object.
int GlobalMaxRowDim() const
Returns the max row dimension of block entries across all processors.
Definition: Epetra_CrsGraph.h:701
int GlobalMaxColDim() const
Returns the maximum column dimension of all block entries across all processors.
Definition: Epetra_VbrMatrix.h:915
Epetra_CombineMode
Definition: Epetra_CombineMode.h:64
int SetHintSolve(bool TransA, double Alpha, const Epetra_OskiMultiVector &Vector, int NumCalls, const Teuchos::ParameterList &List)
Workload hints for computing a triangular solve used by OskiTuneMat to optimize the data structure st...
int ExtractCopy(int *V) const
Put vector values into user-provided array.
int MaxAll(int *PartialMaxs, int *GlobalMaxs, int Count) const
Epetra_SerialComm Global Max function.
int Size(int Length_in)
Set length of a Epetra_IntSerialDenseVector object; init values to zero.
Definition: Epetra_IntSerialDenseVector.h:139
double * BERR() const
Returns a pointer to the backward error estimates computed by LAPACK.
Definition: Epetra_SerialDenseSolver.h:351
int LDX() const
Returns the leading dimension of the solution.
Definition: Epetra_SerialDenseSVD.h:316
int Do(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Execute plan on buffer of export objects in a single step (object size may vary)
double NormInf() const
Compute Inf-norm of each vector in multi-vector.
int M() const
Returns row dimension of system.
Definition: Epetra_IntSerialDenseMatrix.h:300
Epetra_IntSerialDenseMatrix(Epetra_DataAccess CV, int *A, int LDA, int NumRows, int NumCols)
Set object values from two-dimensional array.
Epetra_Export(const Epetra_Import &Exporter)
Epetra_Export pseudo-copy constructor. Creates an Epetra_Export in the reverse direction of the Epetr...
float DOT(const int N, const float *X, const float *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS dot product function (SDOT).
bool MyGRID(int GRID_in) const
Returns true if the GRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_VbrMatrix.h:1095
int NumVectors() const
Returns the number of vectors in the multi-vector.
Definition: Epetra_IntMultiVector.h:651
Epetra_OffsetIndex: This class builds index for efficient mapping of data from one Epetra_CrsGraph ba...
Definition: Epetra_OffsetIndex.h:60
Epetra_MultiVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, double **ArrayOfPointers, int NumVectors)
Set multi-vector values from array of pointers.
int FillComplete(bool OptimizeDataStorage=true)
Signal that data entry is complete. Perform transformations to local index space.
int Broadcast(long long *MyVals, int Count, int Root) const
Epetra_SerialComm Broadcast function.
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified local row in user-provided arrays.
int ExtractGlobalRowCopy(int GlobalRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified global row in user-provided arrays.
virtual double NormInf() const =0
Returns the infinity norm of the global matrix.
int IAMAX(const int N, const double *X, const int INCX=1) const
Epetra_BLAS arg maximum of absolute value function (IDAMAX)
Epetra_MpiSmpCommData: The Epetra Mpi Shared Memory ParallelCommunication Data Class.
Definition: Epetra_MpiSmpCommData.h:56
void GESVX(const char FACT, const char TRANS, const int N, const int NRHS, double *A, const int LDA, double *AF, const int LDAF, int *IPIV, const char EQUED, double *R, double *C, double *B, const int LDB, double *X, const int LDX, double *RCOND, double *FERR, double *BERR, double *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK solve driver for general matrix (DGESVX)
int ExtractGlobalRowCopy(int GlobalRow, int Length, int &NumEntries, double *Values) const
Returns a copy of the specified global row values in user-provided array.
Epetra_SerialSpdDenseSolver: A class for constructing and using symmetric positive definite dense mat...
Definition: Epetra_SerialSpdDenseSolver.h:147
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_CrsMatrix multiplied by a Epetra_MultiVector X in Y.
void GEEVX(const char BALANC, const char JOBVL, const char JOBVR, const char SENSE, const int N, float *A, const int LDA, float *WR, float *WI, float *VL, const int LDVL, float *VR, const int LDVR, int *ILO, int *IHI, float *SCALE, float *ABNRM, float *RCONDE, float *RCONDV, float *WORK, const int LWORK, int *IWORK, int *INFO) const
Epetra_LAPACK wrapper to compute for an N-by-N real nonsymmetric matrix A, the eigenvalues and,...
int GatherAll(long *MyVals, long *AllVals, int Count) const
Epetra_SerialComm All Gather function.
long long * Values()
Returns pointer to the values in vector.
Definition: Epetra_LongLongSerialDenseVector.h:214
Epetra_BlockMap * RemoveEmptyProcesses() const
Return a new BlockMap with processes with zero elements removed.
Definition: Epetra_FECrsGraph.h:65
virtual int SumAll(long *PartialSums, long *GlobalSums, int Count) const =0
Epetra_Comm Global Sum function.
bool StorageOptimized() const
If OptimizeStorage() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_CrsGraph.h:508
virtual ~Epetra_CrsMatrix()
Epetra_CrsMatrix Destructor.
virtual ~Epetra_CompObject()
Epetra_CompObject destructor.
void UpdateFlops(long long Flops_in) const
Increment Flop count for this object.
Definition: Epetra_CompObject.h:105
int Do(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Execute plan on buffer of export objects in a single step.
Epetra_LongLongVector: A class for constructing and using dense integer vectors on a parallel compute...
Definition: Epetra_LongLongVector.h:126
Epetra_CrsMatrix(const Epetra_CrsMatrix &SourceMatrix, const Epetra_Import &RowImporter, const Epetra_Import *DomainImporter, const Epetra_Map *DomainMap, const Epetra_Map *RangeMap, bool RestrictCommunicator)
Epetra CrsMatrix constructor that also fuses Import and FillComplete().
Epetra_LongLongSerialDenseMatrix(Epetra_DataAccess CV, long long *A, int LDA, int NumRows, int NumCols)
Set object values from two-dimensional array.
virtual int LeftScale(const Epetra_Vector &x)
Scales the Epetra_BasicRowMatrix on the left with a Epetra_Vector x.
int LDA() const
Returns the leading dimension of the this matrix.
Definition: Epetra_SerialDenseMatrix.h:389
virtual ~Epetra_FastCrsOperator()
Epetra_FastCrsOperator Destructor.
const Epetra_BlockMap & Map() const
Map() method inherited from Epetra_DistObject.
Definition: Epetra_CrsMatrix.h:1433
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_VbrMatrix multiplied by a Epetra_MultiVector X in Y.
virtual void Print(std::ostream &os) const
Print method.
virtual int NumMyNonzeros() const
Returns the number of nonzero entries in the calling processor's portion of the matrix.
Definition: Epetra_BasicRowMatrix.h:391
virtual const char * Label() const =0
Returns a character string describing the operator.
int ExpertMakeUniqueCrsGraphData()
Makes sure this matrix has a unique CrsGraphData object.
int ReplaceMap(const Epetra_BlockMap &map)
int ReplaceColMap(const Epetra_BlockMap &newmap)
Replaces the current ColMap with the user-specified map object.
int FirstPointInElementList(int *FirstPointInElementList) const
Same as FirstPointInElementList() except it fills the user array that is passed in.
int ExtractCopy(int **ArrayOfPointers) const
Put multi-vector values into user-provided array of pointers.
int NumGlobalNonzeros() const
Returns the number of nonzero entries in the global matrix.
Definition: Epetra_CrsMatrix.h:1066
Epetra_OskiMatrix: A class for constructing and using OSKI Matrices within Epetra....
Definition: Epetra_OskiMatrix.h:94
int EndSubmitEntries()
Completes processing of all data passed in for the current block row.
double *& ExpertExtractValues()
Returns a reference to the double* used to hold the values array.
Definition: Epetra_CrsMatrix.h:1505
void GEEVX(const char BALANC, const char JOBVL, const char JOBVR, const char SENSE, const int N, double *A, const int LDA, double *WR, double *WI, double *VL, const int LDVL, double *VR, const int LDVR, int *ILO, int *IHI, double *SCALE, double *ABNRM, double *RCONDE, double *RCONDV, double *WORK, const int LWORK, int *IWORK, int *INFO) const
Epetra_LAPACK wrapper to compute for an N-by-N real nonsymmetric matrix A, the eigenvalues and,...
int & operator()(int RowIndex, int ColIndex)
Element access function.
Definition: Epetra_IntSerialDenseMatrix.h:364
virtual ~Epetra_InvOperator()
Destructor.
Definition: Epetra_InvOperator.h:75
@ Epetra_AddLocalAlso
Definition: Epetra_CombineMode.h:89
int ExtractMyEntryView(int CurEntry, double *&Value, int &RowIndex, int &ColIndex)
Returns a reference to the ith entry in the matrix, along with its row and column index.
Definition: Epetra_JadMatrix.h:127
Epetra_VbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, int NumBlockEntriesPerRow)
Epetra_VbrMatrix constuctor with fixed number of indices per row.
int RemoveEmptyProcessesInPlace(const Epetra_BlockMap *NewMap)
Remove processes owning zero rows from the Maps and their communicator.
int MinAll(long *PartialMins, long *GlobalMins, int Count) const
Epetra_MpiSmpComm Global Min function.
int MinElementSize() const
Minimum element size across all processors.
Definition: Epetra_BlockMap.h:614
Epetra_FECrsMatrix(Epetra_DataAccess CV, const Epetra_FECrsGraph &Graph, bool ignoreNonLocalEntries=false)
int SetUseTranspose(bool UseTranspose)
If set true, transpose of this operator will be applied.
Definition: Epetra_FastCrsMatrix.h:97
virtual int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
Returns a copy of the main diagonal in a user-provided vector.
int MultiplyAndMatTransMultiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y, const Epetra_MultiVector &W, Epetra_MultiVector &Z, double Alpha=1.0, double Beta=0.0, double Omega=1.0, double Zeta=0.0) const
Performs the two matrix multi-vector multiplies of Y = Alpha*this*X + Beta*Y and Z = Omega*this^Trans...
Epetra_SerialDenseMatrix(const Epetra_SerialDenseMatrix &Source)
Epetra_SerialDenseMatrix copy constructor.
bool DistributedGlobal() const
Returns true if map is defined across more than one processor.
Definition: Epetra_BlockMap.h:694
Epetra_Object(const char *const Label, int TracebackModeIn=-1)
Epetra_Object Constructor.
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.
int NumElementsWithColor(int Color) const
Returns number of map elements on calling processor having specified Color.
int GRID(int LRID_in) const
Returns the global row index for give local row index, returns IndexBase-1 if we don't have this loca...
Definition: Epetra_CrsMatrix.h:1273
virtual int Solve(void)
Computes the solution X to AX = B for the this matrix and the B provided to SetVectors()....
Epetra_GIDTypeSerialDenseVector: A class for switching between "int" and "long long" GID Type at comp...
Definition: Epetra_GIDTypeSerialDenseVector.h:59
virtual int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const =0
Returns a copy of the specified local row in user-provided arrays.
@ Average
Definition: Epetra_CombineMode.h:74
int Broadcast(int *MyVals, int Count, int Root) const
Epetra_MpiComm Broadcast function.
Epetra_Time: The Epetra Timing Class.
Definition: Epetra_Time.h:75
void GERFS(const char TRANS, const int N, const int NRHS, const double *A, const int LDA, const double *AF, const int LDAF, const int *IPIV, const double *B, const int LDB, double *X, const int LDX, double *FERR, double *BERR, double *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK Refine solution (GERFS)
bool MyGCID(int GCID_in) const
Returns true if the GCID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsGraph.h:933
virtual ~Epetra_OffsetIndex(void)
Epetra_OffsetIndex destructor.
int MaxNumColors() const
Returns maximum over all processors of the number of colors.
int ReplaceGlobalValue(int GlobalBlockRow, int BlockRowOffset, int VectorIndex, int OrdinalValue)
Replace current value at the specified (GlobalBlockRow, BlockRowOffset, VectorIndex) location with Or...
double * C() const
Returns a pointer to the column scale vector used for equilibration.
Definition: Epetra_SerialDenseSolver.h:357
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.
Epetra_SerialDenseMatrix(bool set_object_label=true)
Default constructor; defines a zero size object.
int Reciprocal(const Epetra_MultiVector &A)
Puts element-wise reciprocal values of input Multi-vector in target.
int BeginExtractGlobalBlockRowCopy(int BlockRow, int MaxNumBlockEntries, int &RowDim, int &NumBlockEntries, int *BlockIndices, int *ColDims) const
Initiates a copy of the specified global row in user-provided arrays.
void FactorWithEquilibration(bool Flag)
Causes equilibration to be called just before the matrix factorization as part of the call to Factor.
Definition: Epetra_SerialDenseSolver.h:166
virtual int Apply(const Epetra_SerialDenseMatrix &X, Epetra_SerialDenseMatrix &Y)
Returns the result of a Epetra_SerialDenseOperator applied to a Epetra_SerialDenseMatrix X in Y.
int GRID(int LRID_in) const
Returns the global row index for give local row index, returns IndexBase-1 if we don't have this loca...
Definition: Epetra_VbrMatrix.h:1075
virtual int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_BasicRowMatrix multiplied by a Epetra_MultiVector X in Y.
Epetra_LongLongSerialDenseMatrix: A class for constructing and using general dense integer matrices.
Definition: Epetra_LongLongSerialDenseMatrix.h:120
bool operator==(const Epetra_IntSerialDenseMatrix &rhs) const
Comparison operator.
double * operator[](int ColIndex)
Column access function.
Definition: Epetra_SerialDenseMatrix.h:523
void GECON(const char NORM, const int N, const double *A, const int LDA, const double ANORM, double *RCOND, double *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK condition number estimator for general matrix (DGECON)
bool MyGlobalRow(int GID) const
Returns true of GID is owned by the calling processor, otherwise it returns false.
Definition: Epetra_CrsGraph.h:536
Epetra_Flops(const Epetra_Flops &Flops_in)
Epetra_Flops Copy Constructor.
int DoReversePosts(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Do reverse post of buffer of export objects (can do other local work before executing Waits)
Epetra_FECrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, int NumIndicesPerRow, bool ignoreNonLocalEntries=false, bool buildNonlocalGraph=false)
Epetra_DataAccess CV() const
Returns the data access mode of the this matrix.
Definition: Epetra_SerialDenseMatrix.h:392
void GESVD(const char JOBU, const char JOBVT, const int M, const int N, double *A, const int LDA, double *S, double *U, const int LDU, double *VT, const int LDVT, double *WORK, const int *LWORK, int *INFO) const
Epetra_LAPACK wrapper for computing the singular value decomposition (DGESVD)
int Solve(void)
Computes the solution X to AX = B for the this matrix and the B provided to SetVectors()....
virtual int NumMyNonzeros() const =0
Returns the number of nonzero entries in the calling processor's portion of the matrix.
int ExtractView(double **V) const
Set user-provided address of V.
int ** RemoteOffsets() const
Accessor.
Definition: Epetra_OffsetIndex.h:92
Epetra_IntSerialDenseVector: A class for constructing and using dense vectors.
Definition: Epetra_IntSerialDenseVector.h:87
Epetra_Import(const Epetra_BlockMap &TargetMap, const Epetra_BlockMap &SourceMap, int NumRemotePIDs, const int *RemotePIDs)
Expert-only import constructor.
int EquilibrateRHS(void)
Equilibrates the current RHS.
int MinAll(long *PartialMins, long *GlobalMins, int Count) const
Epetra_SerialComm Global Min function.
Epetra_DistObject(const Epetra_BlockMap &Map)
Basic Epetra_DistObject constuctor.
Epetra_SerialDenseVector()
Default constructor; defines a zero size object.
virtual const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: Epetra_BasicRowMatrix.h:406
virtual const Epetra_Map & RowMatrixColMap() const =0
Returns the Epetra_Map object associated with the columns of this matrix.
Epetra_CrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, const Epetra_BlockMap &ColMap, int NumIndicesPerRow, bool StaticProfile=false)
Epetra_CrsGraph constuctor with fixed number of indices per row.
int ** PermuteOffsets() const
Accessor.
Definition: Epetra_OffsetIndex.h:89
int * Values() const
Returns a pointer to an array containing the values of this vector.
Definition: Epetra_IntVector.h:247
virtual int MaxNumEntries() const =0
Returns the maximum of NumMyRowEntries() over all rows.
virtual void Print(std::ostream &os) const
Print method.
int PermuteVector(const bool TransA, Epetra_OskiMultiVector &Vector) const
Permutes Vector according to the Permutation. If a transpose is desired it performs that operation.
Epetra_CrsGraph: A class for constructing and using sparse compressed row graphs.
Definition: Epetra_CrsGraph.h:213
Epetra_DataAccess CV() const
Returns the data access mode of the this vector.
Definition: Epetra_SerialDenseVector.h:277
const Epetra_Map & RowMatrixRowMap() const
Returns the EpetraMap object associated with the rows of this matrix.
Definition: Epetra_VbrMatrix.h:1254
int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
Returns a copy of the main diagonal in a user-provided vector.
Epetra_Map(int NumGlobalElements, int NumMyElements, const int *MyGlobalElements, int IndexBase, const Epetra_Comm &Comm)
Epetra_Map constructor for a user-defined arbitrary distribution of elements.
const Epetra_BlockMap & TargetMap() const
Returns the TargetMap used to construct this exporter.
Definition: Epetra_Export.h:278
Epetra_SerialSymDenseMatrix(void)
Default constructor; defines a zero size object.
int Scale(double ScalarA)
Inplace scalar-matrix product A = a A.
Epetra_MsrMatrix: A class for constructing and using real-valued double-precision sparse compressed r...
Definition: Epetra_MsrMatrix.h:72
virtual ~Epetra_JadMatrix()
Epetra_JadMatrix Destructor.
int InsertMyValues(int MyRow, int NumEntries, const double *Values, const int *Indices)
Insert a list of elements in a given local row of the matrix.
Epetra_FastCrsOperator: A class for constructing matrix objects optimized for common kernels.
Definition: Epetra_FastCrsMatrix.h:59
Epetra_FEVbrMatrix(Epetra_DataAccess CV, const Epetra_CrsGraph &Graph, bool ignoreNonLocalEntries=false)
virtual void SetLabel(const char *const Label)
Epetra_Object Label definition using char *.
virtual ~Epetra_Flops(void)
Epetra_Flops Destructor.
int DoReverse(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
Execute reverse of plan on buffer of export objects in a single step.
int RightScale(const Epetra_Vector &D)
Perform right scaling of a linear problem.
int NumGlobalBlockDiagonals() const
Returns the number of global nonzero block diagonal entries, based on global row/column index compari...
Definition: Epetra_VbrMatrix.h:984
virtual ~Epetra_BasicDirectory(void)
Epetra_BasicDirectory destructor.
int * ExportPIDs() const
List of processors to which elements will be sent, ExportLIDs() [i] will be sent to processor ExportP...
Definition: Epetra_Export.h:266
const Epetra_Export * Exporter() const
Returns the Exporter associated with this graph.
Definition: Epetra_CrsGraph.h:848
int NumGlobalNonzeros() const
Returns the number of nonzero entries in the global matrix.
Definition: Epetra_MsrMatrix.h:240
void SetLHS(Epetra_MultiVector *X)
Set left-hand-side X of linear problem AX = B.
Definition: Epetra_LinearProblem.h:136
int Scale(double ScalarA)
Inplace scalar-matrix product A = a A.
const Epetra_Map & DomainMap() const
Returns the Epetra_Map object associated with the domain of this matrix operator.
Definition: Epetra_CrsMatrix.h:1236
int * operator[](int Loc)
Inlined bracket operator for fast access to data. (Const and Non-const versions)
Definition: Epetra_CrsGraph.h:957
int ReferenceCount() const
Returns the reference count of CrsGraphData.
Definition: Epetra_CrsGraph.h:1002
int UnequilibrateLHS(void)
Unscales the solution vectors if equilibration was used to solve the system.
int EquilibrateMatrix(void)
Equilibrates the this matrix.
void UpdateFlops(float Flops_in) const
Increment Flop count for this object from a float.
Definition: Epetra_Flops.h:103
int NumRecv() const
Total number of elements to be received.
Definition: Epetra_Export.h:272
Epetra_MultiVector: A class for constructing and using dense multi-vectors, vectors and matrices in p...
Definition: Epetra_MultiVector.h:184
bool Transpose()
Returns true if transpose of this matrix has and will be used.
Definition: Epetra_SerialDenseSolver.h:247
int Dot(const Epetra_MultiVector &A, double *Result) const
Computes dot product of each corresponding pair of vectors.
const Epetra_BlockMap & SourceMap() const
Returns the SourceMap used to construct this exporter.
Definition: Epetra_Export.h:275
Epetra_LinearProblemRedistor(const Epetra_LinearProblemRedistor &Source)
Epetra_LinearProblemRedistor copy constructor.
int CreateFromSends(const int &NumExportIDs, const int *ExportPIDs, bool Deterministic, int &NumRemoteIDs)
Create a communication plan from send list.
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this matrix operator.
Definition: Epetra_FastCrsMatrix.h:137
Epetra_MultiVector & operator=(const Epetra_MultiVector &Source)
= Operator.
int LCID(int GCID_in) const
Returns the local column index for given global column index, returns -1 if no local column for this ...
Definition: Epetra_CrsGraph.h:887
double Dot(const Epetra_SerialDenseVector &x) const
Compute 1-norm of each vector in multi-vector.
double *& operator[](int i)
Vector access function.
Definition: Epetra_MultiVector.h:900
int FirstPointInElement(int LID) const
Returns the requested entry in the FirstPointInElementList; see FirstPointInElementList() for details...
bool IndicesAreGlobal() const
If matrix indices has not been transformed to local, this query returns true, otherwise it returns fa...
Definition: Epetra_VbrMatrix.h:861
Epetra_OskiUtils: The Epetra OSKI Class to handle all operations that do not involve the use of a mat...
Definition: Epetra_OskiUtils.h:62
Epetra_MpiSmpComm(const Epetra_MpiSmpComm &Comm)
Epetra_MpiSmpComm Copy Constructor.
Epetra_MpiDistributor(const Epetra_MpiComm &Comm)
Default constructor.
Epetra_SerialDenseSVD: A class for SVDing dense linear problems.
Definition: Epetra_SerialDenseSVD.h:115
Epetra_MultiVector(Epetra_DataAccess CV, const Epetra_MultiVector &Source, int *Indices, int NumVectors)
Set multi-vector values from list of vectors in an existing Epetra_MultiVector.
virtual int MaxAll(double *PartialMaxs, double *GlobalMaxs, int Count) const =0
Epetra_Comm Global Max function.
int InsertGlobalValues(int GlobalRow, int NumEntries, double *Values, int *Indices)
int ApplyRefinement(void)
Apply Iterative Refinement.
Epetra_SerialDenseMatrix * InvertedMatrix() const
Returns pointer to inverted matrix (assuming inverse has been performed).
Definition: Epetra_SerialDenseSVD.h:283
void PrintInfo(std::ostream &os) const
Print method that implements Epetra_Comm virtual PrintInfo method.
Definition: Epetra_SerialComm.h:468
Epetra_SerialDenseMatrix * LHS() const
Returns pointer to current LHS.
Definition: Epetra_SerialDenseSVD.h:286
virtual int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const =0
Returns result of a local-only solve using a triangular Epetra_RowMatrix with Epetra_MultiVectors X a...
virtual int DoPosts(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)=0
Post buffer of export objects (can do other local work before executing Waits)
virtual const char * Label() const =0
Returns a character string describing the operator.
int MergeRedundantEntries()
Add entries that have the same column index. Remove redundant entries from list.
int DoReverse(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
Execute reverse of plan on buffer of export objects in a single step (object size may vary)
void SPGV(const int ITYPE, const char JOBZ, const char UPLO, const int N, float *AP, float *BP, float *W, float *Z, const int LDZ, float *WORK, int *INFO) const
Epetra_LAPACK wrapper to compute all the eigenvalues and, optionally, the eigenvectors of a real gene...
const Epetra_Map & RedistMap() const
Returns const reference to the Epetra_Map that describes the layout of the RedistLinearProblem.
Definition: Epetra_LinearProblemRedistor.h:197
int OptimizeStorage()
Make consecutive row index sections contiguous, minimize internal storage used for constructing graph...
virtual const Epetra_BlockMap & Map() const =0
Returns a reference to the Epetra_BlockMap for this object.
int ExtractMyEntryView(int CurEntry, double *&Value, int &RowIndex, int &ColIndex)
Returns a reference to the ith entry in the matrix, along with its row and column index.
Definition: Epetra_VbrRowMatrix.h:136
virtual ~Epetra_Object()
Epetra_Object Destructor.
long long & operator()(int Index)
Element access function.
Definition: Epetra_LongLongSerialDenseVector.h:267
bool operator==(const Epetra_SerialDenseMatrix &rhs) const
Comparison operator.
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_VbrRowMatrix multiplied by a Epetra_MultiVector X in Y.
Definition: Epetra_VbrRowMatrix.h:214
int NumMyRows() const
Returns the number of matrix rows on this processor.
Definition: Epetra_CrsGraph.h:555
int InsertGlobalValues(int numRows, const int *rows, int numCols, const int *cols, const double *values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
Epetra_CrsMatrix(const Epetra_CrsMatrix &SourceMatrix, const Epetra_Import &RowImporter, const Epetra_Map *DomainMap=0, const Epetra_Map *RangeMap=0, bool RestrictCommunicator=false)
Epetra CrsMatrix constructor that also fuses Import and FillComplete().
int ScanSum(long *MyVals, long *ScanSums, int Count) const
Epetra_SerialComm Scan Sum function.
int InvRowSums(Epetra_Vector &x) const
Computes the inverse of the sum of absolute values of the rows of the Epetra_CrsMatrix,...
void ORGHR(const int N, const int ILO, const int IHI, float *A, const int LDA, float *TAU, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for generating a real orthogonal matrix Q defined by elementary reflectors....
int InsertGlobalValues(int numIndices, const int *indices, const double *const *values, int format=Epetra_FECrsMatrix::ROW_MAJOR)
int MinAll(double *PartialMins, double *GlobalMins, int Count) const
Epetra_MpiSmpComm Global Min function.
unsigned int Seed()
Get seed from Random function.
Definition: Epetra_MultiVector.h:876
void GESDD(const char JOBZ, const int M, const int N, float *A, const int LDA, float *S, float *U, const int LDU, float *VT, const int LDVT, float *WORK, const int LWORK, int *IWORK, int *INFO) const
Epetra_LAPACK wrapper to.
int ExtractView(int ***ArrayOfPointers) const
Set user-provided addresses of ArrayOfPointers.
Epetra_Vector(Epetra_DataAccess CV, const Epetra_MultiVector &Source, int Index)
Set vector values from a vector in an existing Epetra_MultiVector.
bool Filled() const
If FillComplete() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_MsrMatrix.h:210
Epetra_LinearProblem(const Epetra_LinearProblem &Problem)
Epetra_LinearProblem Copy Constructor.
const Epetra_BlockMap & ColMap() const
Returns the Column Map associated with this graph.
Definition: Epetra_CrsGraph.h:830
virtual ~Epetra_Distributor()
Epetra_Distributor Destructor.
Definition: Epetra_Distributor.h:76
Epetra_MultiVector * GetLHS() const
Get a pointer to the left-hand-side X.
Definition: Epetra_LinearProblem.h:177
int SumIntoGlobalValue(int GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
Adds ScalarValue to existing value at the specified (GlobalBlockRow, BlockRowOffset,...
Definition: Epetra_CrsGraphData.h:275
bool MyLRID(int LRID_in) const
Returns true if the LRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsGraph.h:926
void SYEVR(const char JOBZ, const char RANGE, const char UPLO, const int N, double *A, const int LDA, const double *VL, const double *VU, const int *IL, const int *IU, const double ABSTOL, int *M, double *W, double *Z, const int LDZ, int *ISUPPZ, double *WORK, const int LWORK, int *IWORK, const int LIWORK, int *INFO) const
Epetra_LAPACK wrapper to compute selected eigenvalues and, optionally, eigenvectors of a real symmetr...
virtual const Epetra_Map & RowMatrixColMap() const
Returns the Column Map object needed for implementing Epetra_RowMatrix.
Definition: Epetra_BasicRowMatrix.h:418
Epetra_BasicDirectory(const Epetra_BasicDirectory &Directory)
Epetra_BasicDirectory copy constructor.
int ReplaceMyValue(int MyBlockRow, int BlockRowOffset, int VectorIndex, int OrdinalValue)
Replace current value at the specified (MyBlockRow, BlockRowOffset, VectorIndex) location with Ordina...
int N() const
Returns column dimension of system.
Definition: Epetra_LongLongSerialDenseMatrix.h:306
int ExtractMyBlockRowView(int BlockRow, int &RowDim, int &NumBlockEntries, int *&BlockIndices, Epetra_SerialDenseMatrix **&Values) const
Initiates a view of the specified local row, only works if matrix indices are in local mode.
Epetra_VbrMatrix(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, int *NumBlockEntriesPerRow)
Epetra_VbrMatrix constuctor with variable number of indices per row.
Epetra_LinearProblemRedistor: A class for redistributing an Epetra_LinearProblem object.
Definition: Epetra_LinearProblemRedistor.h:66
void ORGQR(const int M, const int N, const int K, double *A, const int LDA, double *TAU, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for generating a m x n real matrix Q with orthonormal columns,...
int Invert(void)
Inverts the this matrix.
virtual ~Epetra_LongLongSerialDenseVector()
Epetra_LongLongSerialDenseVector destructor.
int MaxAllGID() const
Returns the maximum global ID across the entire map.
Definition: Epetra_BlockMap.h:507
Epetra_MapColoring: A class for coloring Epetra_Map and Epetra_BlockMap objects.
Definition: Epetra_MapColoring.h:105
double SCOND()
Ratio of smallest to largest equilibration scale factors for the this matrix (returns -1 if not yet c...
Definition: Epetra_SerialSpdDenseSolver.h:255
int Shape(int NumRows, int NumCols)
Set dimensions of a Epetra_LongLongSerialDenseMatrix object; init values to zero.
int NumAllocatedGlobalBlockEntries(int Row) const
Returns the allocated number of nonzero Block entries in specified global row on this processor.
Definition: Epetra_VbrMatrix.h:998
double Flops() const
Returns the number of floating point operations with this object and resets the count.
Definition: Epetra_Flops.h:74
Epetra_MultiVector * GetRHS() const
Get a pointer to the right-hand-side B.
Definition: Epetra_LinearProblem.h:179
Epetra_OskiVector: A class for constructing and using dense OSKI vectors on a single processor or a s...
Definition: Epetra_OskiVector.h:68
virtual ~Epetra_LinearProblemRedistor()
Epetra_LinearProblemRedistor destructor.
int GatherAll(long *MyVals, long *AllVals, int Count) const
Epetra_MpiComm All Gather function.
void GERFS(const char TRANS, const int N, const int NRHS, const float *A, const int LDA, const float *AF, const int LDAF, const int *IPIV, const float *B, const int LDB, float *X, const int LDX, float *FERR, float *BERR, float *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK Refine solution (GERFS)
virtual int NumMyCols() const
Returns the number of matrix columns owned by the calling processor.
Definition: Epetra_BasicRowMatrix.h:397
int SortEntries()
Sort column entries, row-by-row, in ascending order.
Epetra_DataAccess CV() const
Returns the data access mode of the this matrix.
Definition: Epetra_IntSerialDenseMatrix.h:315
virtual ~Epetra_OskiMultiVector()
Destructor.
Epetra_VbrRowMatrix: A class for using an existing Epetra_VbrMatrix object as an Epetra_RowMatrix obj...
Definition: Epetra_VbrRowMatrix.h:68
int NumMyCols() const
Returns the number of matrix columns owned by the calling processor.
Definition: Epetra_MsrMatrix.h:275
virtual const Epetra_Map & OperatorRangeMap() const =0
Returns the Epetra_Map object associated with the range of this operator.
Epetra_MapColoring(const Epetra_BlockMap &Map, int *ElementColors, const int DefaultColor=0)
Epetra_MapColoring constructor.
const Epetra_BlockMap & TargetMap() const
Returns the TargetMap used to construct this importer.
Definition: Epetra_Import.h:297
int MakeViewOf(const Epetra_LongLongSerialDenseMatrix &Source)
Reset an existing LongLongSerialDenseMatrix to point to another Matrix.
Epetra_LocalMap: A class for replicating vectors and matrices across multiple processors.
Definition: Epetra_LocalMap.h:89
virtual int SetUseTranspose(bool use_transpose)
If set true, transpose of this operator will be applied.
Definition: Epetra_BasicRowMatrix.h:447
bool IsOperatorSymmetric() const
Get operator symmetry bool.
Definition: Epetra_LinearProblem.h:183
int NumMyBlockRows() const
Returns the number of block matrix rows on this processor.
Definition: Epetra_CrsGraph.h:623
virtual int MaxAll(long long *PartialMaxs, long long *GlobalMaxs, int Count) const =0
Epetra_Comm Global Max function.
Epetra_OskiMultiVector: A class for constructing and using dense Oski multi-vectors on a single proce...
Definition: Epetra_OskiMultiVector.h:66
void PrintInfo(std::ostream &os) const
Print method that implements Epetra_Comm virtual PrintInfo method.
Definition: Epetra_MpiSmpComm.h:465
virtual int NumMyDiagonals() const
Returns the number of local nonzero diagonal entries.
Definition: Epetra_BasicRowMatrix.h:400
double ElapsedTime(void) const
Epetra_Time elapsed time function.
int NumGlobalEntries(long long Row) const
Returns the current number of nonzero entries in specified global row on this processor.
Definition: Epetra_CrsMatrix.h:1124
Epetra_DistObject: A class for constructing and using dense multi-vectors, vectors and matrices in pa...
Definition: Epetra_DistObject.h:80
bool ReciprocalConditionEstimated()
Returns true if the condition number of the this matrix has been computed (value available via Recipr...
Definition: Epetra_SerialDenseSolver.h:268
void SetMaps(const Epetra_Map &RowMap, const Epetra_Map &ColMap)
Set maps (Version 1); call this function or the next, but not both.
void createNonlocalMapAndExporter()
Allocate the Map, Export object, and MultiVector for nonlocal data.
int InsertGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
Epetra_Distributor * ReverseClone()
Create and extract the reverse version of the distributor.
Definition: Epetra_SerialDistributor.h:77
int Random()
Set matrix values to random numbers.
int MinValue(int *Result) const
Compute minimum value of each vector in multi-vector.
int MaxNumEntries() const
Returns the maximum number of nonzero entries across all rows on this processor.
Definition: Epetra_CrsMatrix.h:1133
int N() const
Returns column dimension of system.
Definition: Epetra_SerialDenseSolver.h:296
int NumMyBlockCols() const
Returns the number of Block matrix columns on this processor.
Definition: Epetra_CrsGraph.h:639
int UpdateMatrix(Epetra_VbrMatrix *Matrix)
Update the matrix to which this object points.
Definition: Epetra_VbrRowMatrix.h:99
long long * operator[](int ColIndex)
Column access function.
Definition: Epetra_LongLongSerialDenseMatrix.h:391
bool MyGRID(int GRID_in) const
Returns true if the GRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsMatrix.h:1307
virtual ~Epetra_SerialDenseSVD()
Epetra_SerialDenseSVD destructor.
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_VbrRowMatrix solve with a Epetra_MultiVector X in Y (not implemented).
Definition: Epetra_VbrRowMatrix.h:234
int GlobalMaxNumNonzeros() const
Returns the maximun number of nonzero points across all rows across all processors.
Definition: Epetra_CrsGraph.h:756
Epetra_Distributor * Clone()
Clone method.
Definition: Epetra_MpiDistributor.h:73
void SYRK(const char UPLO, const char TRANS, const int N, const int K, const float ALPHA, const float *A, const int LDA, const float BETA, float *C, const int LDC) const
Eperta_BLAS symetric rank k funtion (ssyrk)
virtual bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: Epetra_SerialDenseSVD.h:441
int LDA() const
Returns the leading dimension of the this matrix.
Definition: Epetra_SerialDenseSolver.h:302
Epetra_CrsGraph & operator=(const Epetra_CrsGraph &Source)
Assignment operator.
int NumMyRows() const
Returns the number of matrix rows owned by the calling processor.
Definition: Epetra_MsrMatrix.h:272
Epetra_Map(long long NumGlobal_Elements, int NumMy_Elements, const long long *myGlobalElements, int indexBase, const Epetra_Comm &comm, bool UserIsDistributedGlobal, long long UserMinAllGID, long long UserMaxAllGID)
Epetra_Map constructor for a user-defined arbitrary distribution of elements, where the user provides...
int LeftScale(const Epetra_Vector &x)
Scales the Epetra_VbrMatrix on the left with a Epetra_Vector x.
virtual ~Epetra_OskiUtils()
Destructor.
void GGSVD(const char JOBU, const char JOBV, const char JOBQ, const int M, const int N, const int P, int *K, int *L, float *A, const int LDA, float *B, const int LDB, float *ALPHA, float *BETA, float *U, const int LDU, float *V, const int LDV, float *Q, const int LDQ, float *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK wrapper to compute the generalized singular value decomposition (GSVD) of an M-by-N rea...
Epetra_IntSerialDenseVector(Epetra_DataAccess CV_in, int *Values_in, int Length_in)
Set object values from one-dimensional array.
double * X() const
Returns pointer to current solution.
Definition: Epetra_SerialDenseSVD.h:313
void PrintInfo(std::ostream &os) const
Print method that implements Epetra_Comm virtual PrintInfo method.
Definition: Epetra_MpiComm.h:506
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: Epetra_VbrMatrix.h:1180
int IndexBase() const
Index base for this map.
Definition: Epetra_BlockMap.h:586
Epetra_CompObject: Functionality and data that is common to all computational classes.
Definition: Epetra_CompObject.h:57
Epetra_SerialDenseOperator: A pure virtual class for using real-valued double-precision operators.
Definition: Epetra_SerialDenseOperator.h:58
int * A()
Returns pointer to the this matrix.
Definition: Epetra_IntSerialDenseMatrix.h:309
virtual Epetra_Distributor * CreateDistributor() const =0
Create a distributor object.
const Epetra_OskiMatrix & ViewTransformedMat() const
Returns the transformed version of InMat if InMat has been transformed. If InMat has not been transfo...
long long MinValue()
Find minimum value.
int NumPermuteIDs() const
Returns the number of elements that are local to the calling processor, but not part of the first Num...
Definition: Epetra_Export.h:246
int ReplaceDiagonalValues(const Epetra_Vector &Diagonal)
Replaces diagonal values of the matrix with those in the user-provided vector.
void EstimateSolutionErrors(bool Flag)
Causes all solves to estimate the forward and backward solution error.
int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
Returns a copy of the main diagonal in a user-provided vector.
Epetra_CrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, const Epetra_Map &ColMap, const int *NumEntriesPerRow, bool StaticProfile=false)
Epetra_CrsMatrix constructor with variable number of indices per row.
const Epetra_Import * Importer() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
Definition: Epetra_VbrMatrix.h:1039
virtual ~Epetra_IntSerialDenseMatrix()
Epetra_IntSerialDenseMatrix destructor.
void PORFS(const char UPLO, const int N, const int NRHS, const double *A, const int LDA, const double *AF, const int LDAF, const double *B, const int LDB, double *X, const int LDX, double *FERR, double *BERR, double *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK solve driver for positive definite matrix (DPOSVX)
virtual int OneNorm()
Computes the 1-Norm of the this matrix.
const char * Label() const
Returns a character string describing the operator.
Definition: Epetra_CrsMatrix.h:1354
int ScanSum(int *MyVals, int *ScanSums, int Count) const
Epetra_MpiSmpComm Scan Sum function.
int Solve(bool Upper, bool TransA, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Performs a triangular solve of Y = (this^TransA)^-1*X where this is a triangular matrix.
Epetra_Operator * Operator() const
Returns a pointer to the Epetra_Operator operator object that was used to create this Epetra_InvOpera...
Definition: Epetra_InvOperator.h:134
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this matrix.
Definition: Epetra_MsrMatrix.h:299
int SetNumThreads(int NumThreads)
Set number of threads on this node.
Definition: Epetra_MpiSmpComm.h:434
ProblemDifficultyLevel GetPDL() const
Get problem difficulty level.
Definition: Epetra_LinearProblem.h:181
virtual void Print(std::ostream &os) const
Print method.
int Broadcast(int *MyVals, int Count, int Root) const
Epetra_MpiSmpComm Broadcast function.
void SYEV(const char JOBZ, const char UPLO, const int N, float *A, const int LDA, float *W, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to compute all eigenvalues and, optionally, eigenvectors of a real symmetric ma...
Epetra_RowMatrixTransposer(Epetra_RowMatrix *OrigMatrix)
Primary Epetra_RowMatrixTransposer constructor.
virtual ~Epetra_LocalMap()
Epetra_LocalMap destructor.
virtual void Print(std::ostream &os) const
Print service methods; defines behavior of ostream << operator.
Epetra_BlockMap * nonlocalMap_
Map describing distribution of nonlocal data.
Definition: Epetra_FEVector.h:333
virtual int MinAll(int *PartialMins, int *GlobalMins, int Count) const =0
Epetra_Comm Global Min function.
virtual ~Epetra_OskiError()
Destructor.
long long NumGlobalNonzeros64() const
Returns the number of nonzero entries in the global matrix.
Definition: Epetra_MsrMatrix.h:257
int InvRowSums(Epetra_Vector &x) const
Computes the sum of absolute values of the rows of the Epetra_VbrMatrix, results returned in x.
Epetra_Directory * CreateDirectory(const Epetra_BlockMap &Map) const
Create a directory object for the given Epetra_BlockMap.
int * PointToElementList() const
For each local point, indicates the local element ID that the point belongs to.
bool SolutionRefined()
Returns true if the current set of vectors has been refined.
Definition: Epetra_SerialDenseSolver.h:274
virtual void Print(std::ostream &os) const
Epetra_CrsMatrix(const Epetra_CrsMatrix &Matrix)
Copy constructor.
double OneNorm() const
Computes the 1-Norm of the this matrix (identical to NormOne() method).
Definition: Epetra_SerialSymDenseMatrix.h:267
void GEEQU(const int M, const int N, const double *A, const int LDA, double *R, double *C, double *ROWCND, double *COLCND, double *AMAX, int *INFO) const
Epetra_LAPACK equilibration for general matrix (DGEEQU)
int DoReverseWaits()
Wait on a reverse set of posts.
Epetra_LocalMap(int NumMyElements, int IndexBase, const Epetra_Comm &Comm)
Epetra_LocalMap constructor for a user-defined replicate distribution of elements.
int NumGlobalDiagonals() const
Returns the number of global nonzero diagonal entries.
Definition: Epetra_MsrMatrix.h:253
const Epetra_SerialCommData * DataPtr() const
Returns a pointer to the SerialCommData instance this SerialComm uses.
Definition: Epetra_SerialComm.h:483
Epetra_DistObject(const Epetra_BlockMap &Map, const char *const Label)
Epetra_SerialDenseMatrix * RHS() const
Returns pointer to current RHS.
Definition: Epetra_SerialDenseSolver.h:290
virtual void Print(std::ostream &os) const
@ Epetra_Min
Definition: Epetra_CombineMode.h:80
bool NoDiagonal() const
If matrix has no diagonal entries based on global row/column index comparisons, this query returns tr...
Definition: Epetra_VbrMatrix.h:876
int ReplaceMyValue(int MyRow, int VectorIndex, int OrdinalValue)
Replace current value at the specified (MyRow, VectorIndex) location with OrdinalValue.
int ReplaceColMap(const Epetra_BlockMap &newmap)
Epetra_LinearProblemRedistor(Epetra_LinearProblem *OrigProblem, int NumProc, bool Replicate)
Epetra_LinearProblemRedistor constructor specifying number of processor and replication bool.
Epetra_Vector(const Epetra_BlockMap &Map, bool zeroOut=true)
Basic Epetra_Vector constuctor.
int MatPowMultiply(bool TransA, const Epetra_Vector &x, Epetra_Vector &y, int Power=2, double Alpha=1.0, double Beta=0.0) const
Performs a matrix vector multiply of y = Alpha*(this^TransA)^Power*x + Beta*y. This is not implemente...
virtual int SetUseTranspose(bool UseTranspose)=0
If set true, transpose of this operator will be applied.
int TransformToLocal()
Use FillComplete() instead.
virtual int GatherAll(long long *MyVals, long long *AllVals, int Count) const =0
Epetra_Comm All Gather function.
int ExtractCopy(long long *V) const
Put vector values into user-provided array.
const Epetra_CrsGraphData * DataPtr() const
Returns a pointer to the CrsGraphData instance this CrsGraph uses.
Definition: Epetra_CrsGraph.h:1006
Epetra_IntVector(const Epetra_BlockMap &Map, bool zeroOut=true)
Basic Epetra_IntVector constuctor.
Epetra_OskiError()
Default Constructor.
const Epetra_Map & RowMap() const
Returns the Epetra_Map object associated with the rows of this matrix.
Definition: Epetra_CrsMatrix.h:1166
int ExtractBlockDiagonalEntryView(double *&Values, int &LDA) const
Extract a view of a block diagonal entry from the matrix.
int Broadcast(char *MyVals, int Count, int Root) const
Epetra_MpiComm Broadcast function.
int NumMyRowEntries(int MyRow, int &NumEntries) const
Return the current number of values stored for the specified local row.
Epetra_SerialSymDenseMatrix * SymFactoredMatrix() const
Returns pointer to factored matrix (assuming factorization has been performed).
Definition: Epetra_SerialSpdDenseSolver.h:250
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_InvOperator inverse applied to an Epetra_MultiVector X in Y.
Definition: Epetra_InvOperator.h:117
double NormInf() const
Returns the infinity norm of the global matrix.
virtual int RowDim() const
Returns the row dimension of operator.
Definition: Epetra_SerialDenseSVD.h:444
bool MyLRID(int LRID_in) const
Returns true if the LRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_VbrMatrix.h:1102
int * IPIV() const
Returns pointer to pivot vector (if factorization has been computed), zero otherwise.
Definition: Epetra_SerialDenseSolver.h:326
int RemoveMyIndices(int Row)
Remove all indices from a specified local row of the graph.
bool Inverted()
Returns true if matrix inverse has been computed (inverse available via AF() and LDAF()).
Definition: Epetra_SerialDenseSolver.h:265
Epetra_SerialDistributor(const Epetra_SerialComm &Comm)
Constructor.
int SetVectors(Epetra_SerialDenseMatrix &X, Epetra_SerialDenseMatrix &B)
Sets the pointers for left and right hand side vector(s).
int NumExportIDs() const
Returns the number of elements that must be sent by the calling processor to other processors.
Definition: Epetra_Import.h:279
int FillComplete(const Epetra_BlockMap &DomainMap, const Epetra_BlockMap &RangeMap)
Transform to local index space using specified Domain/Range maps. Perform other operations to allow o...
int UpdateValues(const Epetra_RowMatrix &Matrix, bool CheckStructure=false)
Update values using a matrix with identical structure.
int ScanSum(double *MyVals, double *ScanSums, int Count) const
Epetra_MpiComm Scan Sum function.
bool IndicesAreGlobal() const
If matrix indices has not been transformed to local, this query returns true, otherwise it returns fa...
Definition: Epetra_CrsMatrix.h:1013
bool SolutionErrorsEstimated()
Returns true if forward and backward error estimated have been computed (available via FERR() and BER...
Definition: Epetra_SerialDenseSolver.h:262
int NumReceives() const
The number of procs from which we will receive data.
Definition: Epetra_MpiDistributor.h:268
bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: Epetra_InvOperator.h:141
Epetra_Distributor: The Epetra Gather/Scatter Setup Base Class.
Definition: Epetra_Distributor.h:61
virtual ~Epetra_VbrMatrix()
Epetra_VbrMatrix Destructor.
int LowCommunicationMakeColMapAndReindex(int N, const int *rowptr, int *colind, const Epetra_Map &domainMap, const int *owningPIDs, bool SortGhostsAssociatedWithEachProcessor, std::vector< int > &RemotePIDs, Epetra_BlockMap &NewColMap)
LowCommunicationMakeColMapAndReindex.
double * A()
Returns pointer to the this matrix.
Definition: Epetra_SerialDenseMatrix.h:386
Epetra_OskiPermutation()
Default Constructor.
int MaxNumEntries() const
Returns the maximum of NumMyRowEntries() over all rows.
virtual Epetra_Directory * CreateDirectory(const Epetra_BlockMap &Map) const =0
Create a directory object for the given Epetra_BlockMap.
int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
Returns a copy of the main diagonal in a user-provided vector.
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.
virtual int GatherAll(int *MyVals, int *AllVals, int Count) const =0
Epetra_Comm All Gather function.
int ReplaceGlobalValues(const Epetra_IntSerialDenseVector &rows, const Epetra_IntSerialDenseVector &cols, const Epetra_SerialDenseMatrix &values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
bool NoDiagonal() const
If matrix has no diagonal entries in global index space, this query returns true, otherwise it return...
Definition: Epetra_CrsMatrix.h:1028
virtual int NumMyDiagonals() const =0
Returns the number of local nonzero diagonal entries, based on global row/column index comparisons.
void GEEQU(const int M, const int N, const float *A, const int LDA, float *R, float *C, float *ROWCND, float *COLCND, float *AMAX, int *INFO) const
Epetra_LAPACK equilibration for general matrix (SGEEQU)
bool Solved()
Returns true if the current set of vectors has been solved.
Definition: Epetra_SerialDenseSVD.h:265
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Performs a matrix multi-vector multiply of Y = this^TransA*X.
static std::ostream & GetTracebackStream()
Get the output stream for error reporting.
char UPLO() const
Returns character value of UPLO used by LAPACK routines.
Definition: Epetra_SerialSymDenseMatrix.h:228
virtual double NormOne() const
Returns the one norm of the global matrix.
Definition: Epetra_BasicRowMatrix.h:333
void Print(std::ostream &os) const
Print method that implements Epetra_Object virtual Print method.
Definition: Epetra_MpiSmpComm.h:459
long long NumGlobalCols64() const
Returns the number of global matrix columns.
Definition: Epetra_MsrMatrix.h:263
int Multiply(char TransA, char TransB, double ScalarAB, const Epetra_SerialDenseMatrix &A, const Epetra_SerialDenseMatrix &B, double ScalarThis)
Matrix-Matrix multiplication, this = ScalarThis*this + ScalarAB*A*B.
int ReplaceGlobalValues(int numRows, const int *rows, int numCols, const int *cols, const double *const *values, int format=Epetra_FECrsMatrix::ROW_MAJOR)
int SumIntoGlobalValues(const Epetra_IntSerialDenseVector &GIDs, const Epetra_SerialDenseVector &values, int vectorIndex=0)
virtual const char * Label() const
Returns a character string describing the operator.
Definition: Epetra_BasicRowMatrix.h:450
int ResetView(double *Values_in)
Reset the view of an existing vector to point to new user data.
Definition: Epetra_Vector.h:460
void GESVX(const char FACT, const char TRANS, const int N, const int NRHS, float *A, const int LDA, float *AF, const int LDAF, int *IPIV, const char EQUED, float *R, float *C, float *B, const int LDB, float *X, const int LDX, float *RCOND, float *FERR, float *BERR, float *WORK, int *IWORK, int *INFO) const
Epetra_LAPACK solve driver for general matrix (SGESVX)
int NumExportIDs() const
Returns the number of elements that must be sent by the calling processor to other processors.
Definition: Epetra_Export.h:260
Epetra_SerialComm & operator=(const Epetra_SerialComm &Comm)
Assignment Operator.
virtual int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_RowMatrix inverse applied to an Epetra_MultiVector X in Y.
Definition: Epetra_BasicRowMatrix.h:471
Epetra_Directory * CreateDirectory(const Epetra_BlockMap &Map) const
Create a directory object for the given Epetra_BlockMap.
int GatherAll(int *MyVals, int *AllVals, int Count) const
Epetra_MpiSmpComm All Gather function.
Definition: Epetra_CrsGraphData.h:225
bool Solved()
Returns true if the current set of vectors has been solved.
Definition: Epetra_SerialDenseSolver.h:271
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.
virtual int InfNorm()
Computes the Infinity-Norm of the this matrix.
virtual ~Epetra_FECrsGraph()
bool LowerTriangular() const
If matrix is lower triangular in local index space, this query returns true, otherwise it returns fal...
Definition: Epetra_CrsMatrix.h:1022
virtual void ComputeNumericConstants() const
Update the constants associated with the values of the matrix: Call only if values changes from the i...
int PackAndPrepareWithOwningPIDs(const Epetra_CrsMatrix &SourceMatrix, int NumExportIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &SizeOfPacket, int *Sizes, bool &VarSizes, std::vector< int > &SourcePids)
PackAndPrepareWithOwningPIDs.
bool StorageOptimized() const
If OptimizeStorage() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_CrsMatrix.h:1010
Epetra_Map * GenerateMap(int Color) const
Generates an Epetra_Map of the GIDs associated with the specified color.
int NumGlobalRows() const
Returns the number of global matrix rows.
Definition: Epetra_VbrMatrix.h:927
int Length() const
Returns length of vector.
Definition: Epetra_IntSerialDenseVector.h:208
void GETRS(const char TRANS, const int N, const int NRHS, const float *A, const int LDA, const int *IPIV, float *X, const int LDX, int *INFO) const
Epetra_LAPACK solve (after factorization) for general matrix (SGETRS)
unsigned int RandomInt()
Returns a random integer on the interval (0, 2^31-1)
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.
int CreateFromRecvs(const int &NumRemoteIDs, const int *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int &NumExportIDs, int *&ExportGIDs, int *&ExportPIDs)
Create Distributor object using list of Remote global IDs and corresponding PIDs.
double NormOne() const
Returns the one norm of the global matrix.
int MaxAll(int *PartialMaxs, int *GlobalMaxs, int Count) const
Epetra_MpiSmpComm Global Max function.
Epetra_SerialDenseMatrix * LHS() const
Returns pointer to current LHS.
Definition: Epetra_SerialDenseSolver.h:287
virtual const Epetra_Export * Exporter() const
Returns the Epetra_Export object that contains the export operations for distributed operations,...
Definition: Epetra_BasicRowMatrix.h:511
int MyPID() const
Return my process ID.
Definition: Epetra_MpiComm.h:463
virtual int ScanSum(long *MyVals, long *ScanSums, int Count) const =0
Epetra_Comm Scan Sum function.
void Barrier() const
Epetra_MpiSmpComm Barrier function.
virtual int InsertGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
Insert a list of elements in a given global row of the matrix.
int NumMyNonzeros() const
Returns the number of nonzero entries in the calling processor's portion of the matrix.
Definition: Epetra_CrsMatrix.h:1105
bool NoRedundancies() const
If MergeRedundantEntries() has been called, this query returns true, otherwise it returns false.
Definition: Epetra_VbrMatrix.h:1402
Epetra_FEVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, double **ArrayOfPointers, int NumVectors, bool ignoreNonLocalEntries=false)
Set multi-vector values from array of pointers.
bool MyLCID(int LCID_in) const
Returns true if the LRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsGraph.h:944
int LRID(int GRID_in) const
Returns the local row index for given global row index, returns -1 if no local row for this global ro...
Definition: Epetra_CrsMatrix.h:1258
Epetra_IntSerialDenseVector()
Default constructor; defines a zero size object.
int NumGlobalCols() const
Returns the number of global matrix columns.
Definition: Epetra_MsrMatrix.h:250
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this matrix operator.
Definition: Epetra_CrsMatrix.h:1410
Epetra_VbrMatrix: A class for the construction and use of real-valued double-precision variable block...
Definition: Epetra_VbrMatrix.h:175
int MultiplyAndMatTransMultiply(bool TransA, const Epetra_Vector &x, Epetra_Vector &y, const Epetra_Vector &w, Epetra_Vector &z, double Alpha=1.0, double Beta=0.0, double Omega=1.0, double Zeta=0.0) const
Performs the two matrix vector multiplies of y = Alpha*this*x + Beta*y and z = Omega*this^TransA*w + ...
Epetra_Operator: A pure virtual class for using real-valued double-precision operators.
Definition: Epetra_Operator.h:60
int NumGlobalBlockRows() const
Returns the number of global Block matrix rows.
Definition: Epetra_VbrMatrix.h:966
@ AbsMin
Definition: Epetra_CombineMode.h:86
virtual const Epetra_Map & OperatorDomainMap() const =0
Returns the Epetra_Map object associated with the domain of this operator.
int * operator[](int ColIndex)
Column access function.
Definition: Epetra_IntSerialDenseMatrix.h:388
int SumAll(double *PartialSums, double *GlobalSums, int Count) const
Epetra_SerialComm Global Sum function.
virtual bool UseTranspose() const =0
Returns the current UseTranspose setting.
int LDAF() const
Returns the leading dimension of the factored matrix.
Definition: Epetra_SerialDenseSolver.h:323
Epetra_SerialSymDenseMatrix: A class for constructing and using symmetric positive definite dense mat...
Definition: Epetra_SerialSymDenseMatrix.h:130
int UnpackAndCombineIntoCrsArrays(const Epetra_CrsMatrix &SourceMatrix, int NumSameIDs, int NumRemoteIDs, const int *RemoteLIDs, int NumPermuteIDs, const int *PermuteToLIDs, const int *PermuteFromLIDs, int LenImports, char *Imports, int TargetNumRows, int TargetNumNonzeros, int MyTargetPID, int *CSR_rowptr, int *CSR_colind, double *CSR_values, const std::vector< int > &SourcePids, std::vector< int > &TargetPids)
UnpackAndCombineIntoCrsArrays.
Epetra_CrsMatrix(const Epetra_CrsMatrix &SourceMatrix, const Epetra_Export &RowExporter, const Epetra_Map *DomainMap=0, const Epetra_Map *RangeMap=0, bool RestrictCommunicator=false)
Epetra CrsMatrix constructor that also fuses Ex[prt and FillComplete().
const int * A() const
Returns const pointer to the this matrix.
Definition: Epetra_IntSerialDenseMatrix.h:306
int LRID(int GRID_in) const
Returns the local row index for given global row index, returns -1 if no local row for this global ro...
Definition: Epetra_VbrMatrix.h:1067
int BeginReplaceGlobalValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate replacement of current values with this list of entries for a given global row of the matrix...
Epetra_FEVector(const Epetra_BlockMap &Map, int numVectors=1, bool ignoreNonLocalEntries=false)
virtual const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this matrix.
Definition: Epetra_BasicRowMatrix.h:424
int NumSameIDs() const
Returns the number of elements that are identical between the source and target maps,...
Definition: Epetra_Import.h:262
Epetra_OskiUtils()
Default Constructor.
Epetra_MultiVector(Epetra_DataAccess CV, const Epetra_MultiVector &Source, int StartIndex, int NumVectors)
Set multi-vector values from range of vectors in an existing Epetra_MultiVector.
void OskiSetErrorHandler(Epetra_OskiError &NewErrorHandler)
Sets the error handling routine to be used by OSKI to NewErrorHandler.
int NumMyNonzeros() const
Returns the number of indices in the local graph.
Definition: Epetra_CrsGraph.h:719
int NumMyDiagonals() const
Returns the number of local nonzero diagonal entries, based on global row/column index comparisons.
Definition: Epetra_VbrMatrix.h:962
Epetra_Export: This class builds an export object for efficient exporting of off-processor elements.
Definition: Epetra_Export.h:62
int GlobalAssemble(const Epetra_Map &domain_map, const Epetra_Map &range_map, bool callFillComplete=true, Epetra_CombineMode combineMode=Add, bool save_off_and_reuse_map_exporter=false)
Epetra_RowMatrixTransposer: A class for transposing an Epetra_RowMatrix object.
Definition: Epetra_RowMatrixTransposer.h:58
int ExtractCrsDataPointers(int *&IndexOffset, int *&Indices, double *&Values_in) const
Returns internal data pointers associated with Crs matrix format.
Definition: Epetra_CrsMatrix.h:1479
int GlobalMaxNumNonzeros() const
Returns the maximum number of nonzero entries across all block rows on all processors.
Definition: Epetra_VbrMatrix.h:1022
virtual double OneNorm() const
Computes the 1-Norm of the this matrix (identical to NormOne() method).
Definition: Epetra_SerialDenseMatrix.h:408
Epetra_SerialDenseMatrix: A class for constructing and using real double precision general dense matr...
Definition: Epetra_SerialDenseMatrix.h:107
Epetra_Map: A class for partitioning vectors and matrices.
Definition: Epetra_Map.h:119
int MaxAll(double *PartialMaxs, double *GlobalMaxs, int Count) const
Epetra_MpiComm Global Max function.
int SubmitBlockEntry(double *Values, int LDA, int NumRows, int NumCols)
Submit a block entry to the indicated block row and column specified in the Begin routine.
virtual double NormOne() const =0
Returns the one norm of the global matrix.
Epetra_FECrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, int NumEntriesPerRow, bool ignoreNonLocalEntries=false)
int BeginInsertMyValues(int BlockRow, int NumBlockEntries, int *BlockIndices)
Initiate insertion of a list of elements in a given local row of the matrix, values are inserted via ...
virtual void Print(std::ostream &os) const
virtual const Epetra_Import * RowMatrixImporter() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
Definition: Epetra_MsrMatrix.h:296
void GGLSE(const int M, const int N, const int P, float *A, const int LDA, float *B, const int LDB, float *C, float *D, float *X, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to solve the linear equality-constrained least squares (LSE) problem.
virtual ~Epetra_DistObject()
Epetra_DistObject destructor.
double NormInf() const
Returns the infinity norm of the global matrix.
double ANORM() const
Returns the 1-Norm of the this matrix (returns -1 if not yet computed).
Definition: Epetra_SerialDenseSolver.h:329
int DefaultColor() const
Returns default color.
Definition: Epetra_MapColoring.h:206
int SortEntries()
Sort column entries, row-by-row, in ascending order.
int Multiply(bool TransA, const Epetra_Vector &x, Epetra_Vector &y, double Alpha, double Beta=0.0) const
Performs a matrix vector multiply of y = Alpha*this^TransA*x + Beta*y.
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().
int NumMyBlockDiagonals() const
Returns the number of local nonzero block diagonal entries, based on global row/column index comparis...
Definition: Epetra_VbrMatrix.h:959
Epetra_IntSerialDenseVector & ExpertExtractIndices()
Returns a reference to the Epetra_IntSerialDenseVector used to hold the local All_Indices (CRS colind...
int SumIntoMyValues(int NumEntries, int BlockOffset, const double *Values, const int *Indices)
Sum values into a vector with a given indexed list of values at the specified BlockOffset,...
const Epetra_Map & RowMatrixColMap() const
Returns the Column Map object needed for implementing Epetra_RowMatrix.
Definition: Epetra_MsrMatrix.h:293
Epetra_Map(int NumGlobalElements, int IndexBase, const Epetra_Comm &Comm)
Epetra_Map constructor for a Epetra-defined uniform linear distribution of elements.
Epetra_FECrsGraph(Epetra_DataAccess CV, const Epetra_BlockMap &RowMap, int *NumIndicesPerRow, bool ignoreNonLocalEntries=false, bool buildNonlocalGraph=false)
bool GIDsAllUniquelyOwned() const
GIDsAllUniquelyOwned: returns true if all GIDs appear on just one processor.
int ExtractMyRowView(int LocalRow, int &NumIndices, int *&Indices) const
Get a view of the elements in a specified local row of the graph.
int BeginExtractMyBlockRowView(int BlockRow, int &RowDim, int &NumBlockEntries, int *&BlockIndices) const
Initiates a view of the specified local row, only works if matrix indices are in local mode.
int NumMyDiagonals() const
Returns the number of local nonzero diagonal entries.
Definition: Epetra_MsrMatrix.h:278
Epetra_IntMultiVector(Epetra_DataAccess CV, const Epetra_BlockMap &Map, int *A, int MyLDA, int NumVectors)
Set multi-vector values from two-dimensional array.
Epetra_SerialDistributor: The Epetra Serial implementation of the Epetra_Distributor Gather/Scatter S...
Definition: Epetra_SerialDistributor.h:58
int NumThreads() const
Get number of threads on this node.
Definition: Epetra_MpiSmpComm.h:439
bool IndicesAreGlobal() const
If column indices are in global range, this query returns true, otherwise it returns false.
Definition: Epetra_CrsGraph.h:511
int Random()
Set vector values to random numbers.
void SYMM(const char SIDE, const char UPLO, const int M, const int N, const float ALPHA, const float *A, const int LDA, const float *B, const int LDB, const float BETA, float *C, const int LDC) const
Epetra_BLAS symmetric matrix-matrix multiply function (SSYMM)
int ScanSum(int *MyVals, int *ScanSums, int Count) const
Epetra_MpiComm Scan Sum function.
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().
int RemoteIDList(int NumIDs, const int *GIDList, int *PIDList, int *LIDList, int *SizeList) const
Returns the processor IDs, corresponding local index value, and element size for a given list of glob...
virtual int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const =0
Returns the result of a Epetra_RowMatrix multiplied by a Epetra_MultiVector X in Y.
Epetra_IntSerialDenseMatrix(int NumRows, int NumCols)
Shaped constructor; defines a variable-sized object.
bool HaveColMap() const
Returns true if we have a well-defined ColMap, and returns false otherwise.
Definition: Epetra_CrsMatrix.h:1182
int Multiply(bool TransA, const Epetra_Vector &x, Epetra_Vector &y) const
Returns the result of a Epetra_CrsMatrix multiplied by a Epetra_Vector x in y.
Epetra_BasicRowMatrix(const Epetra_Comm &Comm)
Epetra_BasicRowMatrix constructor.
int * RemoteLIDs() const
List of elements in the target map that are coming from other processors.
Definition: Epetra_Import.h:276
Epetra_LongLongSerialDenseMatrix(const Epetra_LongLongSerialDenseMatrix &Source)
Epetra_LongLongSerialDenseMatrix copy constructor.
virtual int Do(char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)=0
Execute plan on buffer of export objects in a single step (object size may vary)
int InsertGlobalIndices(int numRows, const int *rows, int numCols, const int *cols)
Epetra_CrsMatrix(Epetra_DataAccess CV, const Epetra_Map &RowMap, int NumEntriesPerRow, bool StaticProfile=false)
Epetra_CrsMatrix constructor with fixed number of indices per row.
virtual int SumIntoGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
Add this list of entries to existing values for a given global row of the matrix.
double NormOne() const
Returns the one norm of the global matrix.
int FindLocalElementID(int PointID, int &ElementID, int &ElementOffset) const
Returns the LID of the element that contains the given local PointID, and the Offset of the point in ...
virtual int MyPID() const =0
Return my process ID.
void GELS(const char TRANS, const int M, const int N, const int NRHS, double *A, const int LDA, double *B, const int LDB, double *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK simple driver to solve least-squares systems.
virtual int SetUseTranspose(bool UseTranspose)=0
If set true, transpose of this operator will be applied.
double * Values() const
Returns pointer to the values in vector.
Definition: Epetra_SerialDenseVector.h:274
Epetra_OffsetIndex(const Epetra_CrsGraph &SourceGraph, const Epetra_CrsGraph &TargetGraph, Epetra_Export &Exporter)
Constructs a Epetra_OffsetIndex object from the graphs and an exporter.
int GlobalMaxRowDim() const
Returns the maximum row dimension of all block entries across all processors.
Definition: Epetra_VbrMatrix.h:912
int ReplaceDomainMapAndImporter(const Epetra_BlockMap &NewDomainMap, const Epetra_Import *NewImporter)
Replaces the current DomainMap & Importer with the user-specified map object.
Epetra_Vector(const Epetra_Vector &Source)
Epetra_Vector copy constructor.
void GEQRF(const int M, const int N, double *A, const int LDA, double *TAU, double *WORK, const int lwork, int *INFO) const
Epetra_LAPACK factorization for general matrix (DGEQRF)
int SetHintMultiply(bool TransA, double Alpha, const Epetra_OskiMultiVector &InVec, double Beta, const Epetra_OskiMultiVector &OutVec, int NumCalls, const Teuchos::ParameterList &List)
Workload hints for computing a matrix-vector multiply used by OskiTuneMat to optimize the data struct...
int TransformToLocal(const Epetra_BlockMap *DomainMap, const Epetra_BlockMap *RangeMap)
Use FillComplete(const Epetra_BlockMap& DomainMap, const Epetra_BlockMap& RangeMap) instead.
bool MyGID(int GID_in) const
Returns true if the GID passed in belongs to the calling processor in this map, otherwise returns fal...
Definition: Epetra_BlockMap.h:479
int Multiply(bool TransA, const Epetra_Vector &x, Epetra_Vector &y) const
Performs a matrix vector multiply of y = this^TransA*x.
int Stride() const
Returns the stride between vectors in the multi-vector (only meaningful if ConstantStride() is true).
Definition: Epetra_MultiVector.h:941
void Print(std::ostream &os) const
Print method that implements Epetra_Object virtual Print method.
Definition: Epetra_MpiComm.h:491
int Multiply(bool transA, const Epetra_SerialDenseMatrix &x, Epetra_SerialDenseMatrix &y)
Matrix-Vector multiplication, y = A*x, where 'this' == A.
int PutScalar(double ScalarConstant)
Initialize all values in graph of the matrix with constant value.
int LeftScale(const Epetra_Vector &D)
Perform left scaling of a linear problem.
void ORMHR(const char SIDE, const char TRANS, const int M, const int N, const int ILO, const int IHI, const float *A, const int LDA, const float *TAU, float *C, const int LDC, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper for applying an orthogonal matrix in-place (SORMHR)
static void SetTracebackMode(int TracebackModeValue)
Set the value of the Epetra_Object error traceback report mode.
Epetra_Flops(void)
Epetra_Flops Constructor.
virtual bool HasNormInf() const =0
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Epetra_OskiPermutation: A class for storing the permutation performed on a Epetra_OskiMatrix.
Definition: Epetra_OskiPermutation.h:65
int SumAll(double *PartialSums, double *GlobalSums, int Count) const
Epetra_MpiSmpComm Global Sum function.
void destroyNonlocalData()
Deallocate storage for nonlocal data.
Epetra_OskiMultiVector(const Epetra_MultiVector &Source)
Constructor creates and Epetra_OskiMultiVector from an Epetra_MultiVector.
void SYGVX(const int ITYPE, const char JOBZ, const char RANGE, const char UPLO, const int N, double *A, const int LDA, double *B, const int LDB, const double *VL, const double *VU, const int *IL, const int *IU, const double ABSTOL, int *M, double *W, double *Z, const int LDZ, double *WORK, const int LWORK, int *IWORK, int *IFAIL, int *INFO) const
Epetra_LAPACK wrapper to compute selected eigenvalues, and optionally, eigenvectors of a real general...
bool MyLRID(int LRID_in) const
Returns true if the LRID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_CrsMatrix.h:1314
Epetra_Import: This class builds an import object for efficient importing of off-processor elements.
Definition: Epetra_Import.h:63
Epetra_Comm * Clone() const
Clone method.
Definition: Epetra_SerialComm.h:82
Epetra_Distributor * Clone()
Clone method.
Definition: Epetra_SerialDistributor.h:72
const Epetra_BlockMap & RowMap() const
Returns the RowMap associated with this graph.
Definition: Epetra_CrsGraph.h:780
Epetra_IntMultiVector(Epetra_DataAccess CV, const Epetra_IntMultiVector &Source, int StartIndex, int NumVectors)
Set multi-vector values from range of vectors in an existing Epetra_IntMultiVector.
virtual int SumAll(long long *PartialSums, long long *GlobalSums, int Count) const =0
Epetra_Comm Global Sum function.
int ReplaceGlobalValues(int numIndices, const int *indices, const double *values, int format=Epetra_FECrsMatrix::COLUMN_MAJOR)
virtual int CheckSizes(const Epetra_SrcDistObject &Source)=0
Allows the source and target (this) objects to be compared for compatibility, return nonzero if not.
int MaxAll(long *PartialMaxs, long *GlobalMaxs, int Count) const
Epetra_SerialComm Global Max function.
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.
int GlobalMaxColDim() const
Returns the max column dimension of block entries across all processors.
Definition: Epetra_CrsGraph.h:713
void SetFlopCounter(const Epetra_CompObject &CompObject)
Set the internal Epetra_Flops() pointer to the flop counter of another Epetra_CompObject.
Definition: Epetra_CompObject.h:80
int Broadcast(double *MyVals, int Count, int Root) const
Epetra_SerialComm Broadcast function.
virtual int InvColSums(Epetra_Vector &x) const =0
Computes the sum of absolute values of the columns of the Epetra_RowMatrix, results returned in x.
int BeginExtractBlockDiagonalView(int &NumBlockDiagonalEntries, int *&RowColDims) const
Initiates a view of the block diagonal entries.
virtual int ExtractMyEntryView(int CurEntry, double const *&Value, int &RowIndex, int &ColIndex) const =0
Returns a const reference to the ith entry in the matrix, along with its row and column index.
virtual int DoReversePosts(char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)=0
Do reverse post of buffer of export objects (can do other local work before executing Waits)
int TotalReceiveLength() const
Total number of values that this proc is receiving from other procs.
Definition: Epetra_MpiDistributor.h:277
int NumVectors() const
Returns the number of vectors in the multi-vector.
Definition: Epetra_MultiVector.h:925
void GEEV(const char JOBVL, const char JOBVR, const int N, float *A, const int LDA, float *WR, float *WI, float *VL, const int LDVL, float *VR, const int LDVR, float *WORK, const int LWORK, int *INFO) const
Epetra_LAPACK wrapper to compute for an N-by-N real nonsymmetric matrix A, the eigenvalues and,...
Epetra_SerialDenseMatrix(int NumRows, int NumCols, bool set_object_label=true)
Shaped constructor; defines a variable-sized object.
int ReplaceMyValues(int NumEntries, int BlockOffset, const double *Values, const int *Indices)
Replace values in a vector with a given indexed list of values at the specified BlockOffset,...
bool MyGCID(int GCID_in) const
Returns true if the GCID passed in belongs to the calling processor in this map, otherwise returns fa...
Definition: Epetra_VbrMatrix.h:1106
int MinValue()
Find minimum value.
int MaxLID() const
The maximum local index value on the calling processor.
Definition: Epetra_BlockMap.h:539
Epetra_InvOperator: An implementation of the Epetra_Operator class that reverses the role of Apply() ...
Definition: Epetra_InvOperator.h:59
Epetra_SerialDenseSolver: A class for solving dense linear problems.
Definition: Epetra_SerialDenseSolver.h:134
virtual ~Epetra_OskiMatrix()
Destructor
int SumIntoGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
bool IndicesAreLocal() const
If matrix indices has been transformed to local, this query returns true, otherwise it returns false.
Definition: Epetra_VbrMatrix.h:864
Epetra_BlockMap & operator=(const Epetra_BlockMap &map)
Assignment Operator.
virtual int Broadcast(char *MyVals, int Count, int Root) const =0
Epetra_Comm Broadcast function.
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.
Definition: Epetra_MsrMatrix.h:341
virtual void Print(std::ostream &os) const
Print method.
int ReplaceMyValues(int NumEntries, const double *Values, const int *Indices)
Replace values in a vector with a given indexed list of values, indices are in local index space.
int SetMyNodeID(int NodeID)
Set my node ID.
Definition: Epetra_MpiSmpComm.h:453
virtual Epetra_Distributor * Clone()=0
Epetra_Distributor clone constructor.
virtual int NumGlobalDiagonals() const
Returns the number of global nonzero diagonal entries.
Definition: Epetra_BasicRowMatrix.h:380
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this matrix operator.
Definition: Epetra_VbrMatrix.h:1183
int LDA() const
Returns the leading dimension of the this matrix.
Definition: Epetra_SerialDenseSVD.h:301
virtual ~Epetra_MpiSmpComm()
Epetra_MpiSmpComm Destructor.
int Update(double ScalarA, const Epetra_MultiVector &A, double ScalarThis)
Update multi-vector values with scaled values of A, this = ScalarThis*this + ScalarA*A.
void GEMV(const char TRANS, const int M, const int N, const double ALPHA, const double *A, const int LDA, const double *X, const double BETA, double *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS matrix-vector multiply function (DGEMV)
int N() const
Returns column dimension of system.
Definition: Epetra_IntSerialDenseMatrix.h:303
int NumGlobalRows() const
Returns the number of global matrix rows.
Definition: Epetra_MsrMatrix.h:247
int SumAll(double *PartialSums, double *GlobalSums, int Count) const
Epetra_MpiComm Global Sum function.
void POSV(const char UPLO, const int N, const int NRHS, double *A, const int LDA, double *X, const int LDX, int *INFO) const
Epetra_LAPACK factor and solve for positive definite matrix (DPOSV)
int NumRecv() const
Total number of elements to be received.
Definition: Epetra_Import.h:291
virtual ~Epetra_Comm()
Epetra_Comm Destructor.
Definition: Epetra_Comm.h:85
int LRID(int GRID_in) const
Returns the local row index for given global row index, returns -1 if no local row for this global ro...
Definition: Epetra_CrsGraph.h:859
int MinAll(long long *PartialMins, long long *GlobalMins, int Count) const
Epetra_SerialComm Global Min function.