Skip to content
This repository was archived by the owner on Feb 8, 2024. It is now read-only.
This repository was archived by the owner on Feb 8, 2024. It is now read-only.

outerIndexPtr() missing for SparseBlockMatrix #10

@AlePalu

Description

@AlePalu

SparseBlockMatrix is only partially integrated with the Eigen library. In particular, it is not possible to use SparseBlockMatrix as template parameter of a sparse solver. This means that the following code doesn't compile

SparseBlockMatrix<double,2,2> A;
Eigen::SparseLU<SparseBlockMatrix<double, 2,2>> invA;
invA.compute(A);

In this case the compiler fails because of method outerIndexPtr() not found. Providing this method will solve the issue, neverthless this feature requires an in-depth reogranization of the data type internals.

Currently we can circumvent the problem by using an instance of SparseLU<SpMatrix<double>> to factorize a SparseBlockMatrix. Neverthless this would most likely cause Eigen to perform a costly copy of the matrix into temprary storage because of the type mismatch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    ImprovementSomething that improves an already existing featurefix-neededneed fix (problem already identified)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions