gpt4 book ai didi

c++ - 如何从 EigenBase 构建动态数组?

转载 作者:行者123 更新时间:2023-11-28 06:48:11 26 4
gpt4 key购买 nike

我想构造一个 Eigen::Array<double,Dynamic,Dynamic>EigenBase 输入类型。根据文档,我应该能够使用另一个数组来使用复制构造函数,例如:

http://eigen.tuxfamily.org/dox/classEigen_1_1Array.html#a0b2d2aba2e64b58c980399838f60205c

所以我尝试了以下方法:

#include <iostream>
#include <Eigen/Dense>
int main()
{
Eigen::Array<double,2,2> a(1,2,3,4);
Eigen::Array<double,Eigen::Dynamic,Eigen::Dynamic> b(a);
return 0;
}

但是我得到了这个错误:

error: static assertion failed: THIS_METHOD_IS_ONLY_FOR_VECTORS_OF_A_SPECIFIC_SIZE

我的意思是,消息很清楚,但我的问题是如何实现这种功能,而不是手动调整数组大小并逐个填充它?

最佳答案

如您之前的问题所示:What do the initialized Array constructors do?

你不能像这样初始化一个 4 长的数组:

Eigen::Array<double,2,2> a(1,2,3,4);

您的选择是:

Eigen::Array<double,1,4> a(1,2,3,4);
Eigen::Array<double,4,1> a(1,2,3,4);

同样,您最好像这样初始化数组:

Eigen::Array<double,2,2> a;
a << 1, 2, 3, 4;

关于c++ - 如何从 EigenBase 构建动态数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24543252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com