Наиболее эффективный вариант для построения трехмерных структур с использованием собственных матриц
Мне нужна 3D матрица / структура массива в моем коде, и сейчас я полагаюсь на Eigen как для моих матриц, так и для векторов.
Прямо сейчас я создаю 3D-структуру, используяnew
:
MatrixXd* cube= new MatrixXd[60];
for (int i; i<60; i++) cube[i]=MatrixXd(60,60);
и для доступа к значениям:
double val;
MatrixXd pos;
for (int i; i<60; i++){
pos=cube[i];
for (int j; j<60; j++){
for (int k; k<60; k++){
val=pos(j,k);
//...
}
}
}
Тем не менее, сейчас это очень медленно в этой части кода, что заставляет меня поверить, что это может быть не самый эффективный способ. Есть ли альтернативы?