## Feature #6

### Add support for dense linear algebra (BLAS/LAPACK )

Status: | Closed | Start date: | 09/17/2012 | |
---|---|---|---|---|

Priority: | Normal | Due date: | ||

Assignee: | Niclas Jansson | % Done: | 0% | |

Category: | - | |||

Target version: | - |

**Description**

Older version (and newer version) of DOLFIN had support for some dense linear algebra through uBlas. Mostly used for solving mappings to/from reference elements.

The plan is to add a class for dense linear algebra, which handles call to BLAS/LAPACK instead of uBlas. Add basic LA functionality (BLAS) and also basic solver interfaces (part of LAPACK)

Any thoughts?

### History

#### #1 Updated by Johan Jansson about 5 years ago

Niclas Jansson wrote:

Older version (and newer version) of DOLFIN had support for some dense linear algebra through uBlas. Mostly used for solving mappings to/from reference elements.

The plan is to add a class for dense linear algebra, which handles call to BLAS/LAPACK instead of uBlas. Add basic LA functionality (BLAS) and also basic solver interfaces (part of LAPACK)

Any thoughts?

I think such an interface would be good, since the BLAS/LAPACK interface is too low-level. Aren't there already several such interfaces available though? What about using Armadillo or even dense matrices in PETSc?

#### #2 Updated by Niclas Jansson about 5 years ago

Johan Jansson wrote:

Niclas Jansson wrote:

Older version (and newer version) of DOLFIN had support for some dense linear algebra through uBlas. Mostly used for solving mappings to/from reference elements.

The plan is to add a class for dense linear algebra, which handles call to BLAS/LAPACK instead of uBlas. Add basic LA functionality (BLAS) and also basic solver interfaces (part of LAPACK)

Any thoughts?

I think such an interface would be good, since the BLAS/LAPACK interface is too low-level. Aren't there already several such interfaces available though? What about using Armadillo or even dense matrices in PETSc?

I know that Simula DOLFIN uses Armadillo for dense LA, but my experience is that Armadillo is as unportable as uBlas, hence a big no go for Cray, BlueGene etc. Dense PETSc sounds interesting.

Otherwise, it's quite simply to call BLAS/LAPACK directly. Add a class which handles it seamlessly for the user, lightweight without more dependencies.

#### #3 Updated by Aurélien Larcher almost 3 years ago

Update: I added LAPACK classes back into 0.9.0.

#### #4 Updated by Kaspar Müller over 2 years ago

**Status**changed from*Feedback*to*Closed*