[Trilinos-Users] Exporting rectangular CrsGraph / CrsMatrix

Brian Granzow brian.granzow at gmail.com
Sun Oct 1 11:57:12 EDT 2017


Hi there.

I am currently using Tpetra to store linear algebra objects that arise
during finite element assembly. For example, from a high level, the
procedure I use to compute a Jacobian matrix is as follows:

a. Build an 'overlapped' or 'ghosted' Tpetra CrsMatrix : 'ghost_J'
b. Build an 'owned' Tpetra CrsMatrix : 'owned_J'
c. Perform finite element assembly, and sum values into 'ghost_J'
d. Call fillComplete() on 'ghost_J'
e. Construct a Tpetra Export object : 'exporter'
f. Call owned_J->doExport( *ghost_J, exporter, Tpetra::ADD) to reduce
values that are shared across partition boundaries.

Recently, I've been attempting this same process to explicitly assemble a
2x2 blocked matrix, where I store the blocks as separate CrsMatrices, and
the off-diagonal matrices are not square. I believe am able to correctly
construct the ghosted CrsGraphs that are needed for the off-diagonal
blocks, but I am having trouble figuring out how to export to an owned data
structure.

Is there an example of reducing a rectangular CrsMatrix or CrsGraph from an
overlapped object to an owned object?

Cheers,
Brian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20171001/f89918d9/attachment.html>


More information about the Trilinos-Users mailing list