EpetraExt_CrsMatrixIn.cpp File Reference

#include "EpetraExt_CrsMatrixIn.h"
#include "Epetra_Comm.h"
#include "Epetra_CrsMatrix.h"
#include "Epetra_Map.h"
#include "Epetra_IntVector.h"
#include "Epetra_IntSerialDenseVector.h"
#include "Epetra_Import.h"
#include "Epetra_Util.h"

Include dependency graph for EpetraExt_CrsMatrixIn.cpp:

Go to the source code of this file.

Namespaces

namespace  EpetraExt

Functions

int MatrixMarketFileToCrsMatrix (const char *filename, const Epetra_Comm &comm, Epetra_CrsMatrix *&A)
 Constructs an Epetra_CrsMatrix object from a Matrix Market format file, simplest version: requires matrix to be square, distributes rows evenly across processors.
int MatrixMarketFileToCrsMatrix (const char *filename, const Epetra_Map &rowMap, const Epetra_Map &rangeMap, const Epetra_Map &domainMap, Epetra_CrsMatrix *&A)
 Constructs an Epetra_CrsMatrix object from a Matrix Market format file, row, range and domain map specified; typically used for rectangular matrices.
int MatrixMarketFileToCrsMatrix (const char *filename, const Epetra_Map &rowMap, Epetra_CrsMatrix *&A)
 Constructs an Epetra_CrsMatrix object from a Matrix Market format file, only row map specified; allows user defined distribution of matrix rows, requires square matrix.
int MatrixMarketFileToCrsMatrix (const char *filename, const Epetra_Map &rowMap, const Epetra_Map &colMap, Epetra_CrsMatrix *&A)
 Constructs an Epetra_CrsMatrix object from a Matrix Market format file, both row and column map specified; this version is seldom used unless you want explicit control over column map.
int MatrixMarketFileToCrsMatrix (const char *filename, const Epetra_Map &rowMap, const Epetra_Map &colMap, const Epetra_Map &rangeMap, const Epetra_Map &domainMap, Epetra_CrsMatrix *&A)
 Constructs an Epetra_CrsMatrix object from a Matrix Market format file, row, column, range and domain map specified; this version is seldom required unless you want explicit control over column map.
int MatrixMarketFileToCrsMatrixHandle (const char *filename, const Epetra_Comm &comm, Epetra_CrsMatrix *&A, const Epetra_Map *rowMap, const Epetra_Map *colMap, const Epetra_Map *rangeMap, const Epetra_Map *domainMap)
int MatlabFileToCrsMatrix (const char *filename, const Epetra_Comm &comm, Epetra_CrsMatrix *&A)
 Constructs an Epetra_CrsMatrix object from a Matlab format file, distributes rows evenly across processors.


Function Documentation

int EpetraExt::MatrixMarketFileToCrsMatrix const char *  filename,
const Epetra_Comm comm,
Epetra_CrsMatrix *&  A
 

Constructs an Epetra_CrsMatrix object from a Matrix Market format file, simplest version: requires matrix to be square, distributes rows evenly across processors.

This function constructs an Epetra_CrsMatrix object by reading a Matrix Market file.

Parameters:
filename (In) A filename, including path if desired. The matrix to be read should be in this file in Matrix Market coordinate format.
comm (In) An Epetra_Comm object.
A (Out) An Epetra_CrsMatrix object constructed from file contents.
Warning:
User must delete!!.
Returns:
Returns 0 if no error, -1 if any problems with file system.
(See the Matrix Market home page for details.)

Definition at line 40 of file EpetraExt_CrsMatrixIn.cpp.

int EpetraExt::MatrixMarketFileToCrsMatrix const char *  filename,
const Epetra_Map rowMap,
const Epetra_Map rangeMap,
const Epetra_Map domainMap,
Epetra_CrsMatrix *&  A
 

Constructs an Epetra_CrsMatrix object from a Matrix Market format file, row, range and domain map specified; typically used for rectangular matrices.

Reads an Epetra_CrsMatrix object from a matrix-market file, but uses the specified maps for constructing and 'FillComplete()'ing the matrix. Successfully creates rectangular matrices.

Parameters:
filename (In) A filename, including path if desired. The matrix to be read should be in this file in Matrix Market coordinate format.
rowMap (In) An Epetra_Map object describing the desired row distribution of the matrix.
rangeMap (In) An Epetra_Map object describing the distribution of range vectors that will be used with this matrix, must be 1-to-1.
domainMap (In) An Epetra_Map object describing the distribution of domain vectors that will be used with this matrix, must be 1-to-1.
A (Out) An Epetra_CrsMatrix object constructed from file contents.
Warning:
User must delete!!.
Returns:
Returns 0 if no error, -1 if any problems with file system. (See the Matrix Market home page for details.)

Definition at line 46 of file EpetraExt_CrsMatrixIn.cpp.

int EpetraExt::MatrixMarketFileToCrsMatrix const char *  filename,
const Epetra_Map rowMap,
Epetra_CrsMatrix *&  A
 

Constructs an Epetra_CrsMatrix object from a Matrix Market format file, only row map specified; allows user defined distribution of matrix rows, requires square matrix.

This function constructs an Epetra_CrsMatrix object by reading a Matrix Market file.

Parameters:
filename (In) A filename, including path if desired. The matrix to be read should be in this file in Matrix Market coordinate format.
rowMap (In) An Epetra_Map object describing the desired row distribution of the matrix.
A (Out) An Epetra_CrsMatrix object constructed from file contents.
Warning:
User must delete!!.
Returns:
Returns 0 if no error, -1 if any problems with file system.
(See the Matrix Market home page for details.)

Definition at line 52 of file EpetraExt_CrsMatrixIn.cpp.

int EpetraExt::MatrixMarketFileToCrsMatrix const char *  filename,
const Epetra_Map rowMap,
const Epetra_Map colMap,
Epetra_CrsMatrix *&  A
 

Constructs an Epetra_CrsMatrix object from a Matrix Market format file, both row and column map specified; this version is seldom used unless you want explicit control over column map.

This function constructs an Epetra_CrsMatrix object by reading a Matrix Market file.

Parameters:
filename (In) A filename, including path if desired. The matrix to be read should be in this file in Matrix Market coordinate format.
rowMap (In) An Epetra_Map object describing the desired row distribution of the matrix.
colMap (In) An Epetra_Map object describing the desired column distribution of the matrix.
A (Out) An Epetra_CrsMatrix object constructed from file contents.
Warning:
User must delete!!.
Returns:
Returns 0 if no error, -1 if any problems with file system.
(See the Matrix Market home page for details.)

Definition at line 58 of file EpetraExt_CrsMatrixIn.cpp.

int EpetraExt::MatrixMarketFileToCrsMatrix const char *  filename,
const Epetra_Map rowMap,
const Epetra_Map colMap,
const Epetra_Map rangeMap,
const Epetra_Map domainMap,
Epetra_CrsMatrix *&  A
 

Constructs an Epetra_CrsMatrix object from a Matrix Market format file, row, column, range and domain map specified; this version is seldom required unless you want explicit control over column map.

Reads an Epetra_CrsMatrix object from a matrix-market file, but uses the specified maps for constructing and 'FillComplete()'ing the matrix. Successfully creates rectangular matrices.

Parameters:
filename (In) A filename, including path if desired. The matrix to be read should be in this file in Matrix Market coordinate format.
rowMap (In) An Epetra_Map object describing the desired row distribution of the matrix.
colMap (In) An Epetra_Map object describing the desired column distribution of the matrix.
rangeMap (In) An Epetra_Map object describing the distribution of range vectors that will be used with this matrix, must be 1-to-1.
domainMap (In) An Epetra_Map object describing the distribution of domain vectors that will be used with this matrix, must be 1-to-1.
A (Out) An Epetra_CrsMatrix object constructed from file contents.
Warning:
User must delete!!.
Returns:
Returns 0 if no error, -1 if any problems with file system. (See the Matrix Market home page for details.)

Definition at line 64 of file EpetraExt_CrsMatrixIn.cpp.

int EpetraExt::MatrixMarketFileToCrsMatrixHandle const char *  filename,
const Epetra_Comm comm,
Epetra_CrsMatrix *&  A,
const Epetra_Map rowMap = 0,
const Epetra_Map colMap = 0,
const Epetra_Map rangeMap = 0,
const Epetra_Map domainMap = 0
 

Definition at line 70 of file EpetraExt_CrsMatrixIn.cpp.

int EpetraExt::MatlabFileToCrsMatrix const char *  filename,
const Epetra_Comm comm,
Epetra_CrsMatrix *&  A
 

Constructs an Epetra_CrsMatrix object from a Matlab format file, distributes rows evenly across processors.

This function constructs an Epetra_CrsMatrix object by reading a Matlab (i,j,value) format file.

Parameters:
filename (In) A filename, including path if desired. The matrix to be read should be in this file in Matlab coordinate format.
comm (In) An Epetra_Comm object. The matrix will have its rows distributed evenly by row-count across the parallel machine.
A (Out) An Epetra_CrsMatrix object constructed from file contents. The input matrix can be any dimension, square or rectangular.
Warning:
User must delete matrix A!!.
Returns:
Returns 0 if no error, -1 if any problems with file system.
Notes:
  1. The file will be read twice: first to get the maximum row and column dimensions. Next to insert values.
  2. The global row and column dimensions will be determined by the maximum row and column index, respectively, contained in the file. If some rows or columns are empty they will still be present in the matrix.

The format expected for the input file is a list of nonzero entries with one entry per row. Each row will have the row index, column index and value listed with space in between each item. The number of lines in the file should be exactly the number of entries of the matrix. For example, consider the following matrix where only the nonzero values are stored:

\[ \left[\begin{array}{cccc} 5 & 7 & 0 & 0 \\ 3 & 2 & 0 & 1 \\ 0 & 0 & 0 & 4 \\ \end{array}\right]. \]

A Matlab format file for this matrix would be:

1 1 5.0
1 2 7.0
2 1 3.0
2 2 2.0
2 4 1.0
4 4 4.0

Note that the entries can be listed in any order and that the matrix does not need to be square. Values in the first and second columns must be integer values and in those in the third column must be floating point format.

(See the Matlab home page for details.)

Definition at line 168 of file EpetraExt_CrsMatrixIn.cpp.


Generated on Thu Sep 18 12:31:45 2008 for EpetraExt by doxygen 1.3.9.1