:orphan: # MATH2OPUS "h2opus" - A matrix type for hierarchical matrices using the H2Opus package. ## Options Database Key - ***-mat_type h2opus -*** matrix type to "h2opus" ## Notes H2Opus implements hierarchical matrices in the H^2 flavour. It supports CPU or NVIDIA GPUs. For CPU only builds, use `./configure --download-h2opus --download-thrust` to install PETSc to use H2Opus. In order to run on NVIDIA GPUs, use `./configure --download-h2opus --download-magma --download-kblas`. ## Reference - **** -*** "H2Opus: A distributed-memory multi-GPU software package for non-local operators", https://arxiv.org/abs/2109.05451 ## See Also [](ch_matrices), `Mat`, `MATH2OPUS`, `MATHTOOL`, `MATDENSE`, `MatCreateH2OpusFromKernel()`, `MatCreateH2OpusFromMat()` ## Level beginner ## Location src/mat/impls/h2opus/cuda/math2opus.cu --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/mat/impls/h2opus/cuda/math2opus.cu) [Index of all Mat routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)