mantis-rtm 0.1.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. mantis_rtm-0.1.1/.github/workflows/publish-pypi.yml +47 -0
  2. mantis_rtm-0.1.1/.github/workflows/tests.yml +35 -0
  3. mantis_rtm-0.1.1/.gitignore +35 -0
  4. mantis_rtm-0.1.1/.python-version +1 -0
  5. mantis_rtm-0.1.1/LICENSE +661 -0
  6. mantis_rtm-0.1.1/PKG-INFO +175 -0
  7. mantis_rtm-0.1.1/README.md +134 -0
  8. mantis_rtm-0.1.1/changelog.md +55 -0
  9. mantis_rtm-0.1.1/docs/tutorial.md +707 -0
  10. mantis_rtm-0.1.1/docs/tutorial.org +651 -0
  11. mantis_rtm-0.1.1/examples/velde_et_al_2016/00readme.md +1 -0
  12. mantis_rtm-0.1.1/examples/velde_et_al_2016/fes_reactions.py +140 -0
  13. mantis_rtm-0.1.1/examples/velde_et_al_2016/kinetic_constants_fast.py +108 -0
  14. mantis_rtm-0.1.1/examples/velde_et_al_2016/kinetic_constants_slow.py +108 -0
  15. mantis_rtm-0.1.1/examples/velde_et_al_2016/plot_layout.py +175 -0
  16. mantis_rtm-0.1.1/examples/velde_et_al_2016/run_velde_fast.py +75 -0
  17. mantis_rtm-0.1.1/examples/velde_et_al_2016/run_velde_slow.py +73 -0
  18. mantis_rtm-0.1.1/examples/velde_et_al_2016/species.py +221 -0
  19. mantis_rtm-0.1.1/pyproject.toml +148 -0
  20. mantis_rtm-0.1.1/pyrightconfig.json +13 -0
  21. mantis_rtm-0.1.1/requirements.txt +6 -0
  22. mantis_rtm-0.1.1/setup.cfg +4 -0
  23. mantis_rtm-0.1.1/src/.vscode/settings.json +4 -0
  24. mantis_rtm-0.1.1/src/mantis/__init__.py +5 -0
  25. mantis_rtm-0.1.1/src/mantis/_version.py +24 -0
  26. mantis_rtm-0.1.1/src/mantis/diff_lib.py +1983 -0
  27. mantis_rtm-0.1.1/src/mantis/generate_equation_system.py +1988 -0
  28. mantis_rtm-0.1.1/src/mantis/live_plot_lib.py +623 -0
  29. mantis_rtm-0.1.1/src/mantis/model.py +965 -0
  30. mantis_rtm-0.1.1/src/mantis/monitor_plots.py +171 -0
  31. mantis_rtm-0.1.1/src/mantis/monolithic_solver.py +920 -0
  32. mantis_rtm-0.1.1/src/mantis/parallel_video.py +523 -0
  33. mantis_rtm-0.1.1/src/mantis/plot_data_new.py +1363 -0
  34. mantis_rtm-0.1.1/src/mantis/solvers_numba.py +219 -0
  35. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/PKG-INFO +175 -0
  36. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/SOURCES.txt +56 -0
  37. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/dependency_links.txt +1 -0
  38. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/entry_points.txt +6 -0
  39. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/requires.txt +19 -0
  40. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/scm_file_list.json +51 -0
  41. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/scm_version.json +8 -0
  42. mantis_rtm-0.1.1/src/mantis_rtm.egg-info/top_level.txt +1 -0
  43. mantis_rtm-0.1.1/tests/test_diagenetic_model.py +65 -0
  44. mantis_rtm-0.1.1/tests/test_direct_solver_numpy.py +119 -0
  45. mantis_rtm-0.1.1/tests/test_equivalence.py +224 -0
  46. mantis_rtm-0.1.1/tests/test_fes_flux_limited.py +199 -0
  47. mantis_rtm-0.1.1/tests/test_fes_predictor_corrector.py +165 -0
  48. mantis_rtm-0.1.1/tests/test_fes_smooth_transition.py +168 -0
  49. mantis_rtm-0.1.1/tests/test_fes_symmetrical_picard.py +408 -0
  50. mantis_rtm-0.1.1/tests/test_generate_equation_system.py +366 -0
  51. mantis_rtm-0.1.1/tests/test_log_compression.py +159 -0
  52. mantis_rtm-0.1.1/tests/test_monod_linearization.py +220 -0
  53. mantis_rtm-0.1.1/tests/test_parallel_video.py +156 -0
  54. mantis_rtm-0.1.1/tests/test_plot_data_options.py +246 -0
  55. mantis_rtm-0.1.1/tests/test_reactant_coexistence.py +74 -0
  56. mantis_rtm-0.1.1/tests/test_s0_disproportionation.py +145 -0
  57. mantis_rtm-0.1.1/tests/test_solvers_numba.py +125 -0
  58. mantis_rtm-0.1.1/tests/test_video_queue_and_logging.py +156 -0
@@ -0,0 +1,47 @@
1
+ name: Build and Publish to PyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+ workflow_dispatch:
7
+
8
+ jobs:
9
+ build-and-publish:
10
+ name: Build distribution and publish to PyPI
11
+ runs-on: ubuntu-latest
12
+ environment:
13
+ name: pypi
14
+ url: https://pypi.org/p/mantis-rtm
15
+ permissions:
16
+ id-token: write # Required for PyPI Trusted Publishing (OIDC)
17
+ contents: read # Required to checkout repository
18
+
19
+ steps:
20
+ - name: Check out repository
21
+ uses: actions/checkout@v4
22
+ with:
23
+ fetch-depth: 0 # Required for setuptools_scm to extract version from tags
24
+
25
+ - name: Set up Python
26
+ uses: actions/setup-python@v5
27
+ with:
28
+ python-version: "3.12"
29
+
30
+ - name: Install build tools
31
+ run: |
32
+ python -m pip install --upgrade pip
33
+ python -m pip install build twine
34
+
35
+ - name: Build source distribution and wheel
36
+ run: python -m build
37
+
38
+ - name: Verify distribution archives
39
+ run: twine check dist/*
40
+
41
+ - name: Publish to PyPI
42
+ uses: pypa/gh-action-pypi-publish@release/v1
43
+ # PyPI Trusted Publishing (OIDC) is used automatically when permissions.id-token is set.
44
+ # If you prefer using a classic PyPI API token instead of Trusted Publishing,
45
+ # add a repository secret named PYPI_API_TOKEN and uncomment the line below:
46
+ # with:
47
+ # password: ${{ secrets.PYPI_API_TOKEN }}
@@ -0,0 +1,35 @@
1
+ name: Tests
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ test:
11
+ name: Run test suite (${{ matrix.python-version }})
12
+ runs-on: ubuntu-latest
13
+ strategy:
14
+ fail-fast: false
15
+ matrix:
16
+ python-version: ["3.12", "3.13"]
17
+
18
+ steps:
19
+ - name: Check out repository
20
+ uses: actions/checkout@v4
21
+ with:
22
+ fetch-depth: 0
23
+
24
+ - name: Set up Python ${{ matrix.python-version }}
25
+ uses: actions/setup-python@v5
26
+ with:
27
+ python-version: ${{ matrix.python-version }}
28
+
29
+ - name: Install dependencies
30
+ run: |
31
+ python -m pip install --upgrade pip
32
+ python -m pip install -e ".[test]"
33
+
34
+ - name: Run pytest
35
+ run: pytest
@@ -0,0 +1,35 @@
1
+ # Python-generated files
2
+ __pycache__/
3
+ *.py[oc]
4
+ build/
5
+ ltximg/
6
+ notes/
7
+ dist/
8
+ nbk/
9
+ wheels/
10
+ *.egg-info
11
+ src/*.egg-info
12
+ src/**/_version.py
13
+ _version.py
14
+ TAGS
15
+ *.pdf
16
+ *.csv
17
+ *.egg
18
+ *.py[cod]
19
+ *.pyo
20
+ *.pyd
21
+ *.code-workspace
22
+ *.npz
23
+ *.npz-old
24
+ *.mp4
25
+ CLAUDE.md
26
+ *.log
27
+ *.gz
28
+ .unison*
29
+
30
+
31
+
32
+ # Virtual environments
33
+ .venv
34
+ env/
35
+ venv/
@@ -0,0 +1 @@
1
+ 3.14