Возврат разреженной матрицы в Eigen 3.1.0-alpha1 - PullRequest
0 голосов
/ 20 декабря 2011

Я использую eigen 3.1.0-alpha1 в качестве решателя для моего первого небольшого программного обеспечения. Мне нужно вернуть разреженную матрицу из метода класса:

SparseMatrix KMDMatrix::Assembly(double ***p_objs){
SparseMatrix <double> Kglobal(15,15); 
        for (int i = 0; i < N_POINTS; ++i){
            for (int j = 0; j < 10; ++j){
                for (int h = 0; h < 10; ++h){
                    Kglobal.coeffRef(i*5+j,i*5+h)+=p_objs[i][j][h];
                }
            }
        }

return Kglobal;

но это не работает. Одна из ошибок: ошибка C2955: «Eigen :: SparseMatrix»: использование шаблона класса требует списка аргументов шаблона

Я объявил это:

SparseMatrix Assembly(double ***p_objs);

У меня есть некоторые трудности с использованием Eigen, ссылка мне не ясна. Спасибо, что помогли мне

1 Ответ

1 голос
/ 20 декабря 2011

Согласно вашему коду вы должны использовать

SparseMatrix<double> KMDMatrix::Assembly(double ***p_objs){

в спецификаторе типа возврата

...