PETSc version 3.17.0
Fix/Edit manual page

# DMSwarmCreateMassMatrixSquare

Creates the block-diagonal of the square, M^T_p M_p, of the particle mass matrix M_p

### Synopsis

    #include "petscdmswarm.h"
    PetscErrorCode DMSwarmCreateMassMatrixSquare(DM dmCoarse, DM dmFine, Mat *mass)

Collective on dmCoarse

### Input parameters

| dmCoarse | - a DMSwarm
| dmFine | - a DMPlex

### Output parameter

| mass | - the square of the particle mass matrix

### Notes

We only compute the block diagonal since this provides a good preconditioner and is completely local. It would be possible in the future to compute the full normal equations.

### See Also

DMCreateMassMatrix()

### Level

advanced

### Location

src/dm/impls/swarm/swarm.c
Index of all DMSWARM routines
Table of Contents for all manual pages
Index of all manual pages