Skip to main content
`Ctrl`+`K`

# MatCompositeMerge

Given a composite matrix, replaces it with a “regular” matrix by summing or computing the product of all the matrices inside the composite matrix.

## Synopsis

    #include "petscmat.h"
    PetscErrorCode MatCompositeMerge(Mat mat)

Collective

## Input Parameter

- mat - the composite matrix

## Options Database Keys

- -mat_composite_merge - merge in `MatAssemblyEnd()`

- -mat_composite_merge_type - set merge direction

## Note

The `MatType` of the resulting matrix will be the same as the `MatType` of the FIRST matrix in the composite matrix.

## See Also

Matrices, `Mat`, `MatDestroy()`, `MatMult()`, `MatCompositeAddMat()`, `MatCreateComposite()`, `MatCompositeSetMatStructure()`, `MatCompositeSetMergeType()`, `MATCOMPOSITE`

## Level

advanced

## Location

src/mat/impls/composite/mcomposite.c

## Examples

src/mat/tutorials/ex9.c

## Implementations

MatCompositeMerge_Composite() in src/mat/impls/composite/mcomposite.c

Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages