Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for pyproject.toml #3301

Merged
Merged
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
7d4c8cf
#3049 initial draft: metadata, dependencies, extras, entry points
agriyakhetarpal Aug 30, 2023
aca9a6a
#3049 Fix LICENSE spelling
agriyakhetarpal Aug 30, 2023
3af5092
#3049 Temporarily build wheels on pull requests
agriyakhetarpal Aug 30, 2023
8768ed7
#3049 Add CMakeBuild steps to `setup.py` instead of importing it
agriyakhetarpal Aug 30, 2023
66e9302
#3049 Temporarily install `casadi` before installing editable
agriyakhetarpal Aug 30, 2023
8b6a184
#3049 Better error message if `casadi` path is not found
agriyakhetarpal Aug 30, 2023
3bec0ba
#3049 Rename wheel build workflow name
agriyakhetarpal Aug 30, 2023
bfafc75
#3049 Temporarily use `--no-build-isolation` in CI
agriyakhetarpal Aug 30, 2023
f4d148a
#3049 add `cmake` to build-system requirements
agriyakhetarpal Aug 30, 2023
60caf0b
Revert "#3049 add `cmake` to build-system requirements"
agriyakhetarpal Aug 30, 2023
d8d6194
#3049 Clarify author emails
agriyakhetarpal Aug 31, 2023
bdd191e
#3049 clarify idaklu attributes (`setuptools` API)
agriyakhetarpal Aug 31, 2023
9f0f250
#3049 Specify `casadi` as a build-time dependency to overcome venv is…
agriyakhetarpal Aug 31, 2023
1e480ee
Revert "#3049 Temporarily use `--no-build-isolation` in CI"
agriyakhetarpal Aug 31, 2023
c2e2734
#3049 Remove `casadi` installation prior to editable
agriyakhetarpal Aug 31, 2023
2cd36af
#3049 specify `cmake`, fix `casadi` build-time requirements
agriyakhetarpal Aug 31, 2023
0cdfd5a
#3049 Fix doctests, trigger example notebook tests
agriyakhetarpal Aug 31, 2023
fc222ca
#3049 Remove non-colour `nox` output in the CI
agriyakhetarpal Aug 31, 2023
5cfc07a
#3049 Force colour output on GitHub Actions
agriyakhetarpal Aug 31, 2023
82197eb
#3049 Remove inessential editable install job in favour of `nox`
agriyakhetarpal Aug 31, 2023
13ed52d
#3049 Remove improper CMake message, add for macOS
agriyakhetarpal Sep 1, 2023
24fbb8f
#3049 Fix installation link
agriyakhetarpal Sep 2, 2023
2561a6e
#3049 Remove casadi rpath fix because its shared object cannot be found
agriyakhetarpal Sep 2, 2023
921010e
#3049 Remove `cmake` from macOS in CI
agriyakhetarpal Sep 2, 2023
1ee48c1
Revert "#3049 Remove casadi rpath fix because its shared object canno…
agriyakhetarpal Sep 3, 2023
e4ea199
#3049 Fix macOS universal ABI and platform wheels creation bug
agriyakhetarpal Sep 3, 2023
a91885a
#3049 Add a Fortran compiler via Homebrew
agriyakhetarpal Sep 3, 2023
ab246c6
#3049 Install optional solvers for macOS `nox` sessions
agriyakhetarpal Sep 3, 2023
60ac7bf
#3049 Add remaining `pybamm-requires` caches
agriyakhetarpal Sep 3, 2023
95d72e5
#3049 Fix failing doctests
agriyakhetarpal Sep 3, 2023
5dae55f
#3049 Speed up solvers installation without extras
agriyakhetarpal Sep 3, 2023
4c53cc5
#3049 Cleanup scheduled tests workflow
agriyakhetarpal Sep 3, 2023
0c611d9
#3049 Remove dependence on deprecated `pkg_resources`
agriyakhetarpal Sep 3, 2023
82082f2
#3049 Improvements to scheduled test workflow
agriyakhetarpal Sep 3, 2023
ee4080f
#3049 Remove separate CMakeBuild file
agriyakhetarpal Sep 3, 2023
f2a8724
#3049 Add configuration for package data files
agriyakhetarpal Sep 3, 2023
4a3a03c
#3049 Check links in `toml`, `yaml`, and `json` files
agriyakhetarpal Sep 4, 2023
7c64841
#3049 clean up some project configuration options
agriyakhetarpal Sep 4, 2023
2e332b5
#3049, #3249, #2881 Update version in `pyproject.toml`
agriyakhetarpal Sep 4, 2023
b51bea7
Clean up PyPI publishing workflow jobs
agriyakhetarpal Sep 6, 2023
378eed1
Add rpath config for `casadi` directory
agriyakhetarpal Sep 6, 2023
324c316
#3049 Add gcc reinstall step again otherwise Fortran compiler is not …
agriyakhetarpal Sep 6, 2023
5976ec3
#3049 Fix cibuildwheel job
agriyakhetarpal Sep 7, 2023
8d88f5b
#3049 Revert "Add rpath config for `casadi` directory"
agriyakhetarpal Sep 7, 2023
91efeab
#3049 Fix `gcc`/`gfortran` installation (Homebrew)
agriyakhetarpal Sep 7, 2023
fd0c1a5
#3049 Copy `libcasadi.3.7.dylib` to `LD_LIBRARY_PATH`
agriyakhetarpal Sep 11, 2023
e7dd32a
#3049 Add `libc++.1.0.dylib` as well
agriyakhetarpal Sep 11, 2023
8388ac6
#3049 Refactor casadi lib rpaths
agriyakhetarpal Sep 11, 2023
cbba6b9
Update link checker with job summary
agriyakhetarpal Sep 11, 2023
9432e61
#3049 Run rpath fixes on macOS and Linux
agriyakhetarpal Sep 12, 2023
c099385
#3049 Add repair script to cibuildwheel
agriyakhetarpal Sep 12, 2023
3502303
#3049 Fix casadi rpath on macOS
agriyakhetarpal Sep 12, 2023
51db35f
#3049 try to move casadi shared objects to local path
agriyakhetarpal Sep 12, 2023
78bff9a
#3049 fix copying script for Linux
agriyakhetarpal Sep 12, 2023
cc07fc4
#3049 fix LD_LIBRARY_PATH for `nox`
agriyakhetarpal Sep 28, 2023
1e164ae
#3049 add custom wheel repair command for Linux
agriyakhetarpal Sep 28, 2023
587c3bd
Merge changes from develop
agriyakhetarpal Sep 28, 2023
f30d372
#3049 remove Linux rpath fix script
agriyakhetarpal Sep 28, 2023
c069e44
#3049 Add MSMR parameters entry point
agriyakhetarpal Sep 28, 2023
4bf4537
Set up MANIFEST.in
agriyakhetarpal Sep 28, 2023
1c20274
#3049 some installation cleanups (`nox`)
agriyakhetarpal Sep 28, 2023
ddac82e
#3049 #3121 sync jax, jaxlib version requirements
agriyakhetarpal Sep 28, 2023
8016c71
#3049 Improve docs about project installation infrastructure
agriyakhetarpal Sep 28, 2023
9307ee4
#3049 Update cache hashes to include `nox` changes
agriyakhetarpal Sep 28, 2023
3720f04
#3049 temporarily skip i686 Linux builds
agriyakhetarpal Sep 28, 2023
aa86d72
#3049 Fix UNKNOWN name error on SDist
agriyakhetarpal Sep 28, 2023
588496f
#3049 keep solvers extras in sync, don't install yanked versions
agriyakhetarpal Oct 1, 2023
d0b425f
Merge branch 'develop' into pyproject-toml-migration
agriyakhetarpal Oct 1, 2023
690b814
#3049 Fix up authors name and email in project
agriyakhetarpal Oct 1, 2023
2d6e302
Merge branch 'develop' into pyproject-toml-migration
agriyakhetarpal Oct 2, 2023
b18d666
Cleanup extras list, resolve conflicts
agriyakhetarpal Oct 2, 2023
a91c87b
#3049 add `pipx` for doctests job
agriyakhetarpal Oct 2, 2023
14c3c61
#3049 try to bump `pybind11`, `vcpkg` versions (Windows)
agriyakhetarpal Oct 5, 2023
df2c212
Merge branch 'develop' into pyproject-toml-migration
agriyakhetarpal Oct 5, 2023
30d76cd
#3049 add OKane2022 parameter entry points
agriyakhetarpal Oct 5, 2023
5c18e22
#3049 correctly specify inclusion of packages
agriyakhetarpal Oct 6, 2023
c016a64
#3049 Remove unneeded files (used for old manylinux)
agriyakhetarpal Oct 7, 2023
b70e0a6
#3049 move SUNDIALS installation to `scripts/`
agriyakhetarpal Oct 7, 2023
5583d01
#3049 delete older SUNDIALS CMake files
agriyakhetarpal Oct 7, 2023
f2c0c64
Merge branch 'develop' into pyproject-toml-migration
agriyakhetarpal Oct 17, 2023
45b85a7
#3049 add `pyproject.toml` to release workflows
agriyakhetarpal Oct 17, 2023
37c991d
#3049 remove `setup.py` as CI cache dependency path
agriyakhetarpal Oct 17, 2023
925d390
#3049 add note about new file to manage deps
agriyakhetarpal Oct 17, 2023
1d16f5d
#3049 clarify usage of `cmake` and `casadi`
agriyakhetarpal Oct 17, 2023
15c4a8b
#3049 update version to 23.9rc0
agriyakhetarpal Oct 17, 2023
39ee77b
#3049 make cmake a bit verbose about sundials and suitesparse
agriyakhetarpal Oct 17, 2023
449bf02
Merge branch 'develop' into pyproject-toml-migration
agriyakhetarpal Oct 21, 2023
62ed4c4
#3049 add suggestions from code review
agriyakhetarpal Oct 21, 2023
db91a88
#3049 clarify extension language
agriyakhetarpal Oct 21, 2023
0768609
#3049 include citation file in source distribution
agriyakhetarpal Oct 21, 2023
f56e366
#3049 remove note about requirements.txt
agriyakhetarpal Oct 21, 2023
e311029
#3049 fix docs indentation
agriyakhetarpal Oct 21, 2023
052a163
#3049 specify lower bounds for `setuptools`
agriyakhetarpal Oct 21, 2023
5e587c0
#3049 cleanup and clarify user installation page
agriyakhetarpal Oct 21, 2023
3b00b18
#3049 fix whitespace in `pybamm-requires` session
agriyakhetarpal Oct 21, 2023
b49b6f3
#3049 code review suggestions from Eric
agriyakhetarpal Oct 21, 2023
e838fb5
Merge branch 'develop' into pyproject-toml-migration
agriyakhetarpal Nov 20, 2023
09c4942
Bump new minimum versions of dependencies
agriyakhetarpal Nov 20, 2023
cfc550b
A sentence about package data and extra files
agriyakhetarpal Nov 20, 2023
7537c73
Merge branch 'develop' into pyproject-toml-migration
agriyakhetarpal Nov 20, 2023
0aa469b
Install `nox` with `pip` instead of `pipx`
agriyakhetarpal Nov 20, 2023
8e91218
Remove `brew update` from wheels and disable wheels on PRs
agriyakhetarpal Nov 20, 2023
f1fd05f
Update version to 23.9
agriyakhetarpal Nov 20, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 41 additions & 38 deletions .github/workflows/publish_pypi.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
name: Build and publish package to PyPI

# name: Build and publish package to PyPI
name: Test building wheels
# Temporarily disable publishing to PyPI and enable
# building wheels on pull requests
on:
agriyakhetarpal marked this conversation as resolved.
Show resolved Hide resolved
push:
branches: main
# push:
# branches: main
pull_request:
workflow_dispatch:
inputs:
target:
description: 'Deployment target. Can be "pypi" or "testpypi"'
default: "pypi"
# target:
# description: 'Deployment target. Can be "pypi" or "testpypi"'
# default: "pypi"
debug_enabled:
agriyakhetarpal marked this conversation as resolved.
Show resolved Hide resolved
type: boolean
description: 'Run the build with tmate debugging enabled (https://github.com/marketplace/actions/debugging-with-tmate)'
Expand Down Expand Up @@ -153,34 +156,34 @@ jobs:
path: ./dist/*.tar.gz
if-no-files-found: error

publish_pypi:
name: Upload package to PyPI
needs: [build_wheels, build_windows_wheels, build_sdist]
runs-on: ubuntu-latest
steps:
- name: Download all artifacts
uses: actions/download-artifact@v3

- name: Move all package files to files/
run: |
mkdir files
mv windows_wheels/* wheels/* sdist/* files/

- name: Publish on PyPI
if: |
github.event.inputs.target == 'pypi' ||
(github.event_name == 'push' && github.ref == 'refs/heads/main')
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_TOKEN }}
packages_dir: files/

- name: Publish on TestPyPI
if: github.event.inputs.target == 'testpypi'
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.TESTPYPI_TOKEN }}
packages_dir: files/
repository_url: https://test.pypi.org/legacy/
# publish_pypi:
# name: Upload package to PyPI
agriyakhetarpal marked this conversation as resolved.
Show resolved Hide resolved
# needs: [build_wheels, build_windows_wheels, build_sdist]
# runs-on: ubuntu-latest
# steps:
# - name: Download all artifacts
# uses: actions/download-artifact@v3

# - name: Move all package files to files/
# run: |
# mkdir files
# mv windows_wheels/* wheels/* sdist/* files/

# - name: Publish on PyPI
# if: |
# github.event.inputs.target == 'pypi' ||
# (github.event_name == 'push' && github.ref == 'refs/heads/main')
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# user: __token__
# password: ${{ secrets.PYPI_TOKEN }}
# packages_dir: files/

# - name: Publish on TestPyPI
# if: github.event.inputs.target == 'testpypi'
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# user: __token__
# password: ${{ secrets.TESTPYPI_TOKEN }}
# packages_dir: files/
# repository_url: https://test.pypi.org/legacy/
18 changes: 8 additions & 10 deletions .github/workflows/test_on_push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ on:
workflow_dispatch:
pull_request:

env:
FORCE_COLOR: 3

concurrency:
# github.workflow: name of the workflow, so that we don't cancel other workflows
# github.event.pull_request.number || github.ref: pull request number or branch name if not a pull request
Expand Down Expand Up @@ -87,10 +90,9 @@ jobs:
cache: 'pip'
cache-dependency-path: setup.py

- name: Install PyBaMM dependencies
- name: Install standard Python dependencies
run: |
pip install --upgrade pip wheel setuptools nox
pip install -e .[all,docs]

- name: Cache pybamm-requires nox environment for GNU/Linux
uses: actions/cache@v3
Expand Down Expand Up @@ -147,10 +149,9 @@ jobs:
cache: 'pip'
cache-dependency-path: setup.py

- name: Install PyBaMM dependencies
- name: Install standard Python dependencies
run: |
pip install --upgrade pip wheel setuptools nox
pip install -e .[all,docs]

- name: Cache pybamm-requires nox environment for GNU/Linux
uses: actions/cache@v3
Expand Down Expand Up @@ -230,10 +231,9 @@ jobs:
cache: 'pip'
cache-dependency-path: setup.py

- name: Install PyBaMM dependencies
- name: Install standard Python dependencies
run: |
pip install --upgrade pip wheel setuptools nox
pip install -e .[all,docs]
agriyakhetarpal marked this conversation as resolved.
Show resolved Hide resolved

- name: Cache pybamm-requires nox environment for GNU/Linux
uses: actions/cache@v3
Expand Down Expand Up @@ -290,10 +290,9 @@ jobs:
cache: 'pip'
cache-dependency-path: setup.py

- name: Install PyBaMM dependencies
- name: Install standard Python dependencies
run: |
pip install --upgrade pip wheel setuptools nox
pip install -e .[all,docs]

- name: Cache pybamm-requires nox environment for GNU/Linux
uses: actions/cache@v3
Expand Down Expand Up @@ -351,10 +350,9 @@ jobs:
cache: 'pip'
cache-dependency-path: setup.py

- name: Install PyBaMM dependencies
- name: Install standard Python dependencies
run: |
pip install --upgrade pip wheel setuptools nox
pip install -e .[all,docs]

- name: Cache pybamm-requires nox environment for GNU/Linux
uses: actions/cache@v3
Expand Down
3 changes: 2 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,9 @@ execute_process(

if (CASADI_DIR)
file(TO_CMAKE_PATH ${CASADI_DIR} CASADI_DIR)
message("Found python casadi path: ${CASADI_DIR}")
endif()
message("Found python casadi path: ${CASADI_DIR}")
message("Could not find python casadi path")

if(${USE_PYTHON_CASADI})
message("Trying to link against python casadi package")
Expand Down
4 changes: 2 additions & 2 deletions docs/source/user_guide/installation/windows-wsl.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,13 @@ Get PyBaMM's Source Code

sudo apt install git-core

3. Clone the PyBaMM repository::
3. Clone the PyBaMM repository:

.. code:: bash

git clone https://github.com/pybamm-team/PyBaMM.git

4. Enter the PyBaMM Directory by running::
4. Enter the PyBaMM Directory by running:

.. code:: bash

Expand Down
2 changes: 0 additions & 2 deletions noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@
"SUNDIALS_INST": f"{homedir}/.local",
"LD_LIBRARY_PATH": f"{homedir}/.local/lib:",
}
# Do not stdout ANSI colours on GitHub Actions
if os.getenv("CI") == "true":
os.environ["NO_COLOR"] = "1"
# The setup-python action installs and caches dependencies by default, so we skip
# installing them again in nox environments. The dev and docs sessions will still
# require a virtual environment, but we don't run them in the CI
Expand Down
180 changes: 180 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
# From the pip documentation:

# Fallback Behaviour
# If a project does not have a pyproject.toml file containing a build-system section,
# it will be assumed to have the following backend settings:

# [build-system]
# requires = ["setuptools>=40.8.0", "wheel"]
# build-backend = "setuptools.build_meta:__legacy__"

# TODO: add appropriate build-system section
[build-system]
# TODO: specify minimum version of setuptools otherwise scikits.odes, NumPy, and others
# will fail to install
requires = [
"setuptools",
agriyakhetarpal marked this conversation as resolved.
Show resolved Hide resolved
"wheel",
"casadi>=3.6.0; platform_system!='Windows'",
"cmake; platform_system=='Linux'",
]
agriyakhetarpal marked this conversation as resolved.
Show resolved Hide resolved
build-backend = "setuptools.build_meta"

[project]
name = "pybamm"
# TODO: try picking up version from the package itself
# dynamic = ["version", "readme"]
# [tool.setuptools.dynamic]
# version = {attr = "my_package.VERSION"}
version = "23.5"
# Unsure: specify BSD-3-Clause?
# license = {text = "BSD-3-Clause"}
license = { file = "LICENSE.txt" }

# TODO: add appropriate long description
description = "Python Battery Mathematical Modelling"

# TODO: correctly specify all authors and maintainers
# Note: these are currently missing when running `pip show pybamm`, so we should add
# them in some form
authors = [{name = "The PyBaMM Team", email = "[email protected]"}]
maintainers = [{name = "The PyBaMM Team", email = "[email protected]"}]
requires-python = ">=3.8, <3.12"
readme = "README.md"

classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: BSD License",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: Scientific/Engineering",
]

dependencies = [
"numpy>=1.16",
"scipy>=1.3",
"casadi>=3.6.0",
"xarray",
]

[project.optional-dependencies]
# For the generation of documentation
docs = [
"sphinx>=6",
"sphinx_rtd_theme>=0.5",
"pydata-sphinx-theme",
"sphinx_design",
"sphinx-copybutton",
"myst-parser",
"sphinx-inline-tabs",
"sphinxcontrib-bibtex",
"sphinx-autobuild",
"sphinx-last-updated-by-git",
"nbsphinx",
"ipykernel",
"ipywidgets",
"sphinx-gallery",
"sphinx-hoverxref",
"sphinx-docsearch",
]
# For example notebooks
examples = [
"jupyter",
]
# Plotting functionality
plot = [
"imageio>=2.9.0",
# Note: Matplotlib is loaded for debug plots, but to ensure pybamm runs
# on systems without an attached display, it should never be imported
# outside of plot() methods.
"matplotlib>=2.0",
]
# For the Citations class
cite = [
"pybtex>=0.24.0",
]
# To generate LaTeX strings
latexify = [
"sympy>=1.8",
]
# Battery Parameter eXchange format
bpx = [
"bpx",
]
# Low-overhead progress bars
tqdm = [
"tqdm",
]
# Dependencies intended for use by developers
dev = [
# For code style checking
"pre-commit",
# For code style auto-formatting
"ruff",
# For running testing sessions
"nox",
]
# Reading CSV files
pandas = [
"pandas>=0.24",
]
# For the Jax solver
jax = [
"jax==0.4.8",
"jaxlib==0.4.7",
]
# For the scikits.odes solver
odes = [
"scikits.odes"
]
# Contains all optional dependencies, except for odes, jax, and dev dependencies
all = [
"anytree>=2.4.3",
"autograd>=1.2",
"pandas>=0.24",
"scikit-fem>=0.2.0",
"imageio>=2.9.0",
"matplotlib>=2.0",
"pybtex>=0.24.0",
"sympy>=1.8",
"bpx",
"tqdm",
"jupyter",
]

# Equivalent to the console scripts in the entry_points section of the setup()
# function in setup.py
[project.scripts]
pybamm_edit_parameter = "pybamm.parameters_cli:edit_parameter"
pybamm_add_parameter = "pybamm.parameters_cli:add_parameter"
pybamm_rm_parameter = "pybamm.parameters_cli:remove_parameter"
pybamm_install_odes = "pybamm.install_odes:main"
pybamm_install_jax = "pybamm.util:install_jax"

# Equivalent to the "pybamm_parameter_sets" entry_points section of the setup()
# function in setup.py
[project.entry-points."pybamm_parameter_sets"]
Sulzer2019 = "pybamm.input.parameters.lead_acid.Sulzer2019:get_parameter_values"
Ai2020 = "pybamm.input.parameters.lithium_ion.Ai2020:get_parameter_values"
Chen2020 = "pybamm.input.parameters.lithium_ion.Chen2020:get_parameter_values"
Chen2020_composite = "pybamm.input.parameters.lithium_ion.Chen2020_composite:get_parameter_values"
Ecker2015 = "pybamm.input.parameters.lithium_ion.Ecker2015:get_parameter_values"
Marquis2019 = "pybamm.input.parameters.lithium_ion.Marquis2019:get_parameter_values"
Mohtat2020 = "pybamm.input.parameters.lithium_ion.Mohtat2020:get_parameter_values"
NCA_Kim2011 = "pybamm.input.parameters.lithium_ion.NCA_Kim2011:get_parameter_values"
OKane2022 = "pybamm.input.parameters.lithium_ion.OKane2022:get_parameter_values"
ORegan2022 = "pybamm.input.parameters.lithium_ion.ORegan2022:get_parameter_values"
Prada2013 = "pybamm.input.parameters.lithium_ion.Prada2013:get_parameter_values"
Ramadass2004 = "pybamm.input.parameters.lithium_ion.Ramadass2004:get_parameter_values"
Xu2019 = "pybamm.input.parameters.lithium_ion.Xu2019:get_parameter_values"
ECM_Example = "pybamm.input.parameters.ecm.example_set:get_parameter_values"

# [tool.setuptools.packages.find]
# include = ["pybamm", "pybamm.*"]
Loading
Loading