1#ifndef included_AMP_MatrixBuider
2#define included_AMP_MatrixBuider
4#include "AMP/matrices/Matrix.h"
5#include "AMP/utils/Utilities.h"
6#include "AMP/vectors/Vector.h"
13typedef struct _p_Mat *
Mat;
40std::shared_ptr<Matrix>
43 const std::string &type =
"auto",
44 std::function<std::vector<size_t>(
size_t row )> getColumnIDs =
45 std::function<std::vector<size_t>(
size_t )>() );
64std::shared_ptr<Matrix>
68 std::string type =
"auto",
69 std::function<std::vector<size_t>(
size_t row )> getColumnIDs =
70 std::function<std::vector<size_t>(
size_t )>() );
72template<
typename ConfigOut>
73std::shared_ptr<AMP::LinearAlgebra::Matrix>
76template<
typename ConfigOut>
77std::shared_ptr<AMP::LinearAlgebra::Matrix>
81std::shared_ptr<AMP::LinearAlgebra::Matrix>
85std::shared_ptr<AMP::LinearAlgebra::Matrix>
90#if defined( AMP_USE_PETSC )
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
std::string getDefaultMatrixType()
Return the default matrix type.
std::shared_ptr< Matrix > createMatrix(AMP::LinearAlgebra::Vector::shared_ptr right, AMP::LinearAlgebra::Vector::shared_ptr left, const std::string &type="auto", std::function< std::vector< size_t >(size_t row)> getColumnIDs=std::function< std::vector< size_t >(size_t)>())
This function will create a matrix from two vectors.
Backend
Enum to store the backend used for gpu acceleration.
MemoryType
Enum to store pointer type.