On 7/30/20 10:11 AM, Jimmy Ho wrote:

As a follow-up question, upon calling compress(), will the local copy of the system matrix on a specific processor get updated to contain information from all other processors? In other words, if I print out the system matrix from a particular processor after calling compress(), is that the same global system matrix that the linear solver is solving?

Each processor only stores a subset of the rows of the matrix. During assembly, each processor computes a number of matrix entries, but it can not compute all entries for the rows of the matrix it owns -- some need contributions from other processes. The call to compress() makes sure the contributions from these other processes are sent to the one that owns these rows of the matrix.

In any case, after compress(), the rows each processor owns are correct -- but each processor doesn't know anything about the rows of the matrix it doesn't own.


Wolfgang Bangerth          email:                 bange...@colostate.edu
                           www: http://www.math.colostate.edu/~bangerth/

The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
--- You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 

Reply via email to