4-х мерная матрица в броненосце

Я начал использовать Armadillo сравнительно недавно, и хотя он мне очень нравится, было бы полезно, если бы у него были способы хранения 4D матриц. Есть что-то, что я пропускаю, или обходной путь для этого?

Последнее измерение будет иметь размер три, поэтому теоретически я мог бы иметь что-то вроде:

std::vector<arma::cube> 4Dmatrix(3);
for (int index=0; index<3; index++)
4Dmatrix[index] = cube(size1, size2, size3);

Тем не менее, кажется, что должен быть лучший путь.

Заранее спасибо!

4

Решение

Вы могли бы потенциально использовать field класс, который хранит произвольные объекты как элементы в структуре вектора, матрицы или куба. Например. (из документации), чтобы создать field содержащий vec векторов:

// create a field containing vectors
field<vec> F(3,2);
1

Другие решения

Нет, встроенного способа нет. Если вы посмотрите на источник, вы увидите, что существуют отдельные реализации для векторов, матриц и кубов.

Может быть Увеличить мульти массив может быть полезным для вас.

0

По вопросам рекламы [email protected]