Controllers to create and modify Plaxis 2D and 3D models with enhanced functionalities.
This repository is created by CEMS BV.
To install a package in this repository run:
$ pip install plxcontroller
We recommend developing in Python3.9 with a clean virtual environment (using virtualenv
or conda
), installing the requirements from the requirements.txt file:
Example using virtualenv
and pip
to install the dependencies in a new environment .env on Linux:
python -m venv .env
source .env/bin/activate
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install -e .
We format our code with black and isort.
black --config "pyproject.toml" src/plxcontroller tests notebooks
isort --settings-path "pyproject.toml" src/plxcontroller tests notebooks
To maintain code quality we use the GitHub super-linter.
To run the linters locally, run the run_super_linter.sh
bash script from the root directory.
Test the software with the use of coverage:
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install -e .
coverage run -m pytest
Requirements are autogenerated by the pip-compile
command with python 3.9
Install pip-tools with:
pip install pip-tools
Generate requirements.txt file with:
pip-compile --extra=test --extra=lint --output-file=requirements.txt pyproject.toml
Update the requirements within the defined ranges with:
pip-compile --upgrade --extra=test --extra=lint --output-file=requirements.txt pyproject.toml