Xpetra
Version of the Day
|
Xpetra utility class containing IO routines to read/write vectors, matrices etc... More...
#include <Xpetra_IO.hpp>
Static Public Member Functions | |
static RCP< MultiVector > | ReadMultiVector (const std::string &fileName, const RCP< const Map > &map, const bool binary=false) |
static RCP< const Map > | ReadMap (const std::string &fileName, Xpetra::UnderlyingLib lib, const RCP< const Teuchos::Comm< int >> &comm, const bool binary=false) |
static RCP< const Xpetra::BlockedCrsMatrix < Scalar, LocalOrdinal, GlobalOrdinal, Node > > | ReadBlockedCrsMatrix (const std::string &fileName, Xpetra::UnderlyingLib lib, const RCP< const Teuchos::Comm< int >> &comm) |
Read block matrix from one file per block in Matrix Market format. More... | |
template<class T > | |
static std::string | toString (const T &what) |
Little helper function to convert non-string types to strings. More... | |
static const Epetra_Map & | Map2EpetraMap (const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > &map) |
Helper utility to pull out the underlying Epetra objects from an Xpetra object. More... | |
static const RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | Map2TpetraMap (const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > &map) |
Helper utility to pull out the underlying Tpetra objects from an Xpetra object. More... | |
static void | Write (const std::string &fileName, const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > &M) |
Read/Write methods. More... | |
static void | Write (const std::string &fileName, const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &vec) |
Save vector to file in Matrix Market format. More... | |
static void | Write (const std::string &fileName, const Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Op, const bool &writeAllMaps=false) |
Save matrix to file in Matrix Market format. More... | |
static void | WriteLocal (const std::string &fileName, const Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Op) |
Save local parts of matrix to files in Matrix Market format. More... | |
static void | WriteBlockedCrsMatrix (const std::string &fileName, const Xpetra::BlockedCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Op, const bool &writeAllMaps=false) |
Save block matrix to one file per block in Matrix Market format. More... | |
static Teuchos::RCP < Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | Read (const std::string &fileName, Xpetra::UnderlyingLib lib, const RCP< const Teuchos::Comm< int >> &comm, bool binary=false) |
Read matrix from file in Matrix Market or binary format. More... | |
static Teuchos::RCP < Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | Read (const std::string &filename, const RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> rowMap, RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> colMap=Teuchos::null, const RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> domainMap=Teuchos::null, const RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> rangeMap=Teuchos::null, const bool callFillComplete=true, const bool binary=false, const bool tolerant=false, const bool debug=false) |
Read matrix from file in Matrix Market or binary format. More... | |
static Teuchos::RCP < Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | ReadLocal (const std::string &filename, const RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> rowMap, RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> colMap, const RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> domainMap=Teuchos::null, const RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >> rangeMap=Teuchos::null, const bool callFillComplete=true, const bool binary=false, const bool tolerant=false, const bool debug=false) |
Read matrix from local files in Matrix Market or binary format. More... | |
Xpetra utility class containing IO routines to read/write vectors, matrices etc...
Xpetra utility class containing IO routines to read/write vectors, matrices.
Specialization for LO=GO=int
TODO: do we need specialization for SC=double and std::complex<>??? TODO: need specialization for <int, long long>
Definition at line 160 of file Xpetra_IO.hpp.
|
inlinestatic |
Helper utility to pull out the underlying Epetra objects from an Xpetra object.
Definition at line 181 of file Xpetra_IO.hpp.
|
inlinestatic |
Helper utility to pull out the underlying Tpetra objects from an Xpetra object.
Definition at line 209 of file Xpetra_IO.hpp.
|
inlinestatic |
|
inlinestatic |
Save vector to file in Matrix Market format.
Definition at line 247 of file Xpetra_IO.hpp.
|
inlinestatic |
Save matrix to file in Matrix Market format.
Definition at line 277 of file Xpetra_IO.hpp.
|
inlinestatic |
Save local parts of matrix to files in Matrix Market format.
Definition at line 323 of file Xpetra_IO.hpp.
|
inlinestatic |
Save block matrix to one file per block in Matrix Market format.
We write one MatrixMarket file for each block of the given BlockedCrsMatrix. The block (row,col) indicators are included into the file name, such that filename02.m indicates the block in row = 0 and col = 2, for example.
While the user can enable/disable the output of all maps of each matrix block, we always write the range and domain maps of each block as well of the full blocked operator in order to enable reconstruction of the MapExtractor objects for range and domain maps.
fileName | String to indicate file name of files to be written |
Op | BlockedCrsMatrix to be written |
writeAllMaps | Flag to control output of maps to separate files (defaults to false ) |
Definition at line 363 of file Xpetra_IO.hpp.
|
inlinestatic |
Read matrix from file in Matrix Market or binary format.
Definition at line 396 of file Xpetra_IO.hpp.
|
inlinestatic |
Read matrix from file in Matrix Market or binary format.
If only rowMap is specified, then it is used for the domainMap and rangeMap, as well.
Definition at line 521 of file Xpetra_IO.hpp.
|
inlinestatic |
Read matrix from local files in Matrix Market or binary format.
The file name format is filename.SIZE.RANK, where SIZE is the size of the communicator of the rowMap and RANK is the MPI ranks of the calling process.
If only rowMap is specified, then it is used for the domainMap and rangeMap, as well.
Definition at line 615 of file Xpetra_IO.hpp.
|
inlinestatic |
Definition at line 756 of file Xpetra_IO.hpp.
|
inlinestatic |
Definition at line 785 of file Xpetra_IO.hpp.
|
inlinestatic |
Read block matrix from one file per block in Matrix Market format.
We read one MatrixMarket file for each block of the desired BlockedCrsMatrix. The block (row,col) indicators are included into the file name, such that filename02.m indicates the block in row = 0 and col = 2, for example.
We also read the range and domain maps of each block as well of the full blocked operator in order to enable reconstruction of the MapExtractor objects for range and domain maps.
fileName | String to indicate file name of files to be written |
lib | Underlying type of linear algebra package |
comm | Communicator |
Definition at line 824 of file Xpetra_IO.hpp.
|
inlinestatic |
Little helper function to convert non-string types to strings.
Definition at line 899 of file Xpetra_IO.hpp.