PolyFEM
Loading...
Searching...
No Matches
MatrixIO.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <polyfem/Common.hpp>
5
6#include <Eigen/Dense>
7#include <Eigen/Sparse>
8
9namespace polyfem::io
10{
12 template <typename T>
13 bool read_matrix(const std::string &path, Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> &mat);
14
16 template <typename Mat>
17 bool write_matrix(const std::string &path, const Mat &mat);
18
20 template <typename Mat>
21 bool write_matrix(const std::string &path, const std::string &key, const Mat &mat, const bool replace = true);
22
24 template <typename Mat>
25 bool read_matrix(const std::string &path, const std::string &key, Mat &mat);
26
27 template <typename T>
28 bool read_matrix_ascii(const std::string &path, Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> &mat);
29
30 template <typename Mat>
31 bool write_matrix_ascii(const std::string &path, const Mat &mat);
32
33 template <typename T>
34 bool read_matrix_binary(const std::string &path, Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> &mat);
35
36 template <typename Mat>
37 bool write_matrix_binary(const std::string &path, const Mat &mat);
38
39 bool write_sparse_matrix_csv(const std::string &path, const Eigen::SparseMatrix<double> &mat);
40
41 template <typename T>
42 bool import_matrix(const std::string &path, const json &import, Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> &mat);
43} // namespace polyfem::io
bool read_matrix(const std::string &path, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &mat)
Reads a matrix from a file. Determines the file format based on the path's extension.
Definition MatrixIO.cpp:18
bool read_matrix_binary(const std::string &path, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &mat)
Definition MatrixIO.cpp:144
bool import_matrix(const std::string &path, const json &import, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &mat)
Definition MatrixIO.cpp:223
bool write_matrix_binary(const std::string &path, const Mat &mat)
Definition MatrixIO.cpp:169
bool read_matrix_ascii(const std::string &path, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &mat)
Definition MatrixIO.cpp:83
bool write_matrix_ascii(const std::string &path, const Mat &mat)
Definition MatrixIO.cpp:125
bool write_sparse_matrix_csv(const std::string &path, const Eigen::SparseMatrix< double > &mat)
Definition MatrixIO.cpp:192
bool write_matrix(const std::string &path, const Mat &mat)
Writes a matrix to a file. Determines the file format based on the path's extension.
Definition MatrixIO.cpp:42
nlohmann::json json
Definition Common.hpp:9