MatPtAP#

Creates the matrix product \(C = P^T * A * P\)

Synopsis#

#include "petscmat.h" 
PetscErrorCode MatPtAP(Mat A, Mat P, MatReuse scall, PetscReal fill, Mat *C)

Neighbor-wise Collective

Input Parameters#

Output Parameter#

  • C - the product matrix

Notes#

C will be created and must be destroyed by the user with MatDestroy().

An alternative approach to this function is to use MatProductCreate() and set the desired options before the computation is done

The deprecated PETSC_DEFAULT in fill also means use the current value

Developer Note#

For matrix types without special implementation the function fallbacks to MatMatMult() followed by MatTransposeMatMult().

See Also#

Matrices, Mat, MatProductCreate(), MatMatMult(), MatRARt()

Level#

intermediate

Location#

src/mat/interface/matrix.c

Examples#

src/tao/pde_constrained/tutorials/elliptic.c
src/ksp/ksp/tutorials/ex76.c


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