Skip to content

A Block-Jacobi implementation for PETSc and Firedrake focussed on efficiently inverting and then applying small dense matrices.

Notifications You must be signed in to change notification settings

florianwechsung/TinyASM

Repository files navigation

TinyASM

<florianwechsung>

A simple implementation of PETSc's ASM preconditioner that is focussed on the case of small matrices. We avoid the overhead of KSP and PC objects for each block and just use the dense inverse.

Installation

You need a recent firedrake install

curl -O https://raw.githubusercontent.com/firedrakeproject/firedrake/master/scripts/firedrake-install
python3 firedrake-install

Then there are two variants:

A) Simply run

pip install git+https://github.com/florianwechsung/TinyASM

B) clone the repo including submodules:

git clone --recursive [email protected]:florianwechsung/TinyASM.git

and then

cd TinyASM
pip3 install -e .

About

A Block-Jacobi implementation for PETSc and Firedrake focussed on efficiently inverting and then applying small dense matrices.

Resources

Stars

Watchers

Forks

Packages

No packages published