[petsc-users] How to use MAT_SCHUR_COMPLEMENT_AINV_BLOCK_DIAG

Barry Smith bsmith at petsc.dev
Thu Apr 21 21:46:11 CDT 2022


  It seems like it could be feasible. Say you are approximating the matrix with its 3by3 block diagonal. One can compute its inverse efficiently by simply inverting all the 3by3 blocks on the diagonal and forming a new sparse matrix with this.  See, for example, MatInvertBlockDiagonal_SeqAIJ() likely if the performance really mattered for the routine further optimizations such as using AVX512 could be done to make the inversion faster.



> On Apr 21, 2022, at 8:37 PM, Tang, Qi <tangqi at msu.edu> wrote:
> 
> Hi,
> What’s the meaning of MAT_SCHUR_COMPLEMENT_AINV_BLOCK_DIAG?
> 
> Form the inversion of diagonal blocks first and then do matrix multiplication to get a Schur complement? Is that a feasible option in practice?
> 
> Qi
> 
> 



More information about the petsc-users mailing list