35#ifndef NEKTAR_LIBUTILITIES_PYTHON_LINEARALGERBA_NEKMATRIX_HPP
36#define NEKTAR_LIBUTILITIES_PYTHON_LINEARALGERBA_NEKMATRIX_HPP
51 bool load(handle src,
bool)
54 if (!array_t<T>::check_(src))
60 auto buf = array_t<T, array::c_style | array::forcecast>::ensure(src);
67 auto dims = buf.ndim();
74 std::vector<size_t> shape = {buf.shape()[0], buf.shape()[1]};
84 return_value_policy, handle)
91 capsule c(
new NMat(src.GetRows(), src.GetColumns(), src.GetPtr(),
94 NMat *mat = (NMat *)ptr;
101 array a({src.GetRows(), src.GetColumns()},
102 {
sizeof(T), src.GetRows() *
sizeof(T)}, src.GetRawPtr(), c);
111template <
typename Type>
112struct type_caster<
Nektar::NekMatrix<Type, Nektar::StandardMatrixTag>>
114 Nektar::NekMatrix<Type, Nektar::StandardMatrixTag>, Type>
PYBIND11_TYPE_CASTER(Type, const_name("NekMatrix<T>"))
static handle cast(const Nektar::NekMatrix< T, Nektar::StandardMatrixTag > &src, return_value_policy, handle)
bool load(handle src, bool)