Developments on the pySDC
code use the classical approach of forks and pull requests.
You can look at extended GitHub documentation for more details (skip this if you are already used to it). Furthermore, branches on pySDC
follow a pre-defined structure. To contribute to any of them, please look at the pull request recommendations.
Additionally, a few rules are set to enforce code readability, consistency and reliability. Some of them are automatically tested with each commit, and summarized in the page on continuous integration (CI). Others are specific conventions chosen for the pySDC library, that may follow Python standards (or not ...), detailed in the naming conventions page.
Finally, while pySDC
provides many base functionalities that implement classical flavors of SDC, it also allows problem-specific applications through Object-Oriented Programming (OOP) and the implementation of custom inherited classes.
This follows a specific OOP framework, you can look at the page on custom implementations for more details. Additional guideline are also given on how to document the code in pySDC
.