![](/img/trans.png)
[英]Eigen::Map'd matrix from raw buffer gives OBJECT_ALLOCATED_ON_STACK_IS_TOO_BIG
[英]Error using large Eigen matrix: " OBJECT_ALLOCATED_ON_STACK_IS_TOO_BIG"
我一直在使用 Eigen 矩陣來測試我編寫的新代碼,我只是第一次遇到這個問題。 我剛開始閱讀本征矩陣中的“固定與動態大小”,我以為我正在使用“動態”矩陣來處理大尺寸,但是當我嘗試使用更多的網格時,我得到了錯誤:
static assertion failed: OBJECT_ALLOCATED_ON_STACK_IS_TOO_BIG
示例代碼:
static const int nx = 128;
static const int ny = 128;
using namespace std;
using namespace Eigen;
int main(){
Eigen::Matrix<double, (ny+1), nx> X; //ERROR HERE
X.setZero();
//other similar initializations
}
此代碼對於較小尺寸的nx; ny;
nx; ny;
但不是我展示的情況。 理想情況下,我想運行像nx=1024;
這樣大的東西。 並且ny=1024;
這不可能使用特征矩陣嗎? 謝謝。
正如人們在評論中指出的那樣,使用以下方法可以解決問題:
Eigen::MatrixXd
或者
Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.