Trilinos icon indicating copy to clipboard operation
Trilinos copied to clipboard

Tpetra: CsrMatrix structure cannot be changed after first call to fillComplete()

Open kyrillh opened this issue 1 year ago • 7 comments

cc: @csiefer2 @searhein

The Tpetra::CrsMatrix documentation says here regarding resumeFill() that it "Resume operations that may change the values or structure of the matrix."

Accordingly, I assumed that e.g. insertLocalValues() could be used after calling resumeFill(), provided the matrix was not created with a const CrsGraph. However, this is not the case as I found out through multiple error messages. As mentioned in this issue, after the first call to fillComplete() the matrix structure cannot be changed anymore.

It would be great if the documentation clarified that structure-changing functions (e.g. insertLocalValues(), doImport() etc.) can only be used before first calling fillComplete() and that resumeFill() must be used to change matrix entries but not its structure.

kyrillh avatar Sep 06 '23 15:09 kyrillh