-
Notifications
You must be signed in to change notification settings - Fork 22
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Here are some notes on the issue:
- In some specific scenarios (which are not as rare), owned rows of the matrix contain column identifiers from dofs which are NOT available in the local FESpaces. This means that we will never be able to 100% match the PRanges from the PSparseMatrix and the DistributedFESpace. (See Alberto's note)
- Moreover, when we assemble ghost rows we also include some column ids which are NOT needed to multiply the matrix by a column vector. We need this extra rows as cache for in-place assembly, but these extra ghosts should not be included when communicating during matrix-vector product.
- On top of this, it would be advantageous to reorder the dofs in the local FESpaces so that the dof layout contains owned ids first, then ghost ids. This is how we do things in the linear system, and would bring us on par with other softwares like PETSc.
Given these observations, we concluded the following:
- We need to re-order the ids in the local FESpaces. Hopefully, after doing so,
LocalView
type wont be needed anymore. - We need to create a new type
FECompatiblePSparseMatrix
, that contains- The usual matrix
- Caches for the ghosts values that the matrix column PRange needs
- Separate PRanges for matrix-vector multiplication and for assembly
amartinhuertas and santiagobadia
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request