<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
    <maintainer type="person">
        <email>lssndrbarbieri@gmail.com</email>
        <name>Alessandro Barbieri</name>
    </maintainer>
    <upstream>
        <bugs-to>https://github.com/liuyangzhuan/ButterflyPACK/issues</bugs-to>
        <remote-id type="github">liuyangzhuan/ButterflyPACK</remote-id>
    </upstream>
    <longdescription lang="en">ButterflyPACK is a mathematical software for rapidly solving large-scale dense linear systems that exhibit off-diagonal rank-deficiency. These systems arise frequently from boundary element methods, or factorization phases in finite-difference/finite-element methods. ButterflyPACK relies on low-rank or butterfly formats under Hierarchical matrix, HODLR or other hierarchically nested frameworks to compress, factor and solve the linear system in quasi-linear time. The computationally most intensive phase, factorization, is accelerated via randomized linear algebras. The butterfly format, originally inspired by the butterfly data flow in fast Fourier Transform, is a linear algebra tool well-suited for compressing matrices arising from high-frequency wave equations or highly oscillatory integral operators. ButterflyPACK also provides preconditioned TFQMR iterative solvers.
ButterflyPACK is written in Fortran 2003, it also has C++ interfaces. ButterflyPACK supports hybrid MPI/OpenMP programming models. In addition, ButterflyPACK can be readily invoked from the software STRUMPACK for solving dense and sparse linear systems.
    </longdescription>
    <use>
        <flag name="arpack">Use arpack as dependency</flag>
        <flag name="magma">Use magma as dependency</flag>
    </use>
</pkgmetadata>
