Contribution guide¶
Minor Contribution¶
Testing, issue reporting, new feature request are welcome (via the github repository).
Make¶
a makefile is provided, and
- make env install the requirement for triflow and triflow itself
- make init install the developpement requirement
- make clean remove all the build artefacts
- make test launch the test (doctest + pytest, with coverage)
- make doc build the documentation
Testing¶
- the master branch require 100% coverage (or good reason to ignore part of the code)
- the doctest needs to pass the test too, making sure the examples are consistants
- if the API change, the test will move to a file deprecated.py in tests folder, a warning will be raised and the deprecated API will be removed at the next major version (after the 1.0), or after 2 minor version (before the 1.0)
Style guide¶
The code is pep8 complient, and the tests is running with pytest-pep8 and pylama. the #noqa flag is allowed, but the reason has to be written.
Docstring for public API and main methods are mandatory.
Roadmap¶
go to continous integration via travis (or other?)
include t as symbolic variable to allow time dependent functions (non-autonomous dynamical systems)
test different model against analytical solutions or reference library
benchmark the solver
drop the 1D limitation with
- 2D
- ND with arbitrary independant variable
implement various finite different scheme (as upwind), or better, an easy way to add new spatial scheme
give the ability to use mixed scheme