From 8d8ad724281331839478340d414042ca969cd1f6 Mon Sep 17 00:00:00 2001 From: Pauli Virtanen <pauli.t.virtanen@jyu.fi> Date: Tue, 2 Aug 2022 17:46:26 +0300 Subject: [PATCH] array: adjust eigen conversions --- src/array.hpp | 8 ++++---- src/main.cpp | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/array.hpp b/src/array.hpp index c5c3a9f..e1f00eb 100644 --- a/src/array.hpp +++ b/src/array.hpp @@ -152,12 +152,12 @@ public: typedef Eigen::Matrix<Scalar,Eigen::Dynamic,Eigen::Dynamic> EigenMatrix; typedef Eigen::Map<EigenMatrix, 0, Eigen::Stride<Eigen::Dynamic,Eigen::Dynamic> > EigenMap; - operator EigenMap() const + EigenMap to_matrix() const { static_assert(NDim == 2, "matrixes must be two-dimensional"); - return EigenMap((Scalar *)data_.data() + offset_, - shape_[0], shape_[1], - {(long)stride_[1], (long)stride_[0]}); + return {(Scalar *)data_.data() + offset_, + shape_[0], shape_[1], + {(long)stride_[1], (long)stride_[0]}}; } }; diff --git a/src/main.cpp b/src/main.cpp index f4aaac3..70ec82c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -31,7 +31,7 @@ int main() std::cout << Q.index(0u,0u) << std::endl; - Array<ADComplex,3>::EigenMap mat(Q); + auto mat = Q.to_matrix(); mat(1,1) = 123; -- GitLab