qmat
is a python package to generate matrix coefficients related to Collocation methods, Spectral Deferred Corrections (SDC),
and more general multi-stages time-integration methods (like Runge-Kutta, etc ...).
It allows to generate
and many different lower-triangular approximations of the
pip install qmat
๐ See more detailed instructions for conda environment, development, ...
๐ If you are already familiar with those concepts, you can use this package like this :
from qmat import genQCoeffs, genQDeltaCoeffs
# Coefficients or specific collocation method
nodes, weights, Q = genQCoeffs(
"Collocation", nNodes=4, nodeType="LEGENDRE", quadType="RADAU-RIGHT")
# QDelta matrix from Implicit-Euler based SDC
QDelta = genQDeltaCoeffs("IE", nodes=nodes)
# Butcher table of the classical explicit RK4 method
c, b, A = genQCoeffs("ERK4")
๐ If you are not familiar with SDC or related methods, and want to learn more about it, checkout the latest documentation build and in particular the step by step tutorials
For any contribution, please checkout out (very cool) Contribution Guidelines and the current Development Roadmap.
- pySDC : Python implementation of the spectral deferred correction (SDC) approach and its flavors, esp. the multilevel extension MLSDC and PFASST.
- Documentation : https://qmat.readthedocs.io/
- Issues Tracker : https://github.com/Parallel-in-Time/qmat/issues
- Q&A : https://github.com/Parallel-in-Time/qmat/discussions/categories/q-a
- Project Proposals : https://github.com/Parallel-in-Time/qmat/discussions/categories/project-proposals