#include "slepcsys.h" PetscErrorCode MatCreateTile(PetscScalar a,Mat A,PetscScalar b,Mat B,PetscScalar c,Mat C,PetscScalar d,Mat D,Mat *G)Collective
A | - matrix for top-left block | |
a | - scaling factor for block A | |
B | - matrix for top-right block | |
b | - scaling factor for block B | |
C | - matrix for bottom-left block | |
c | - scaling factor for block C | |
D | - matrix for bottom-right block | |
d | - scaling factor for block D |
G | - the resulting matrix |
Matrix G must be destroyed by the user.
The blocks can be of different type. They can be either ConstantDiagonal, or a standard type such as AIJ, or any other type provided that it supports the MatGetRow operation. The type of the output matrix will be the same as the first block that is not ConstantDiagonal (checked in the A,B,C,D order).