AnomalousLib
AnomalousLib is a Python library designed for the study of anomalous diffusion.
It supports dataset generation, statistical analysis, model inference, and integrated result visualization.
The library is published on PyPI under the name AnomalousLib and uses Python version 3.12.10 or later.
Repository Structure
The following diagram shows the structure of the repository:
AnomalousLib
│ # Package builds
├───dist
│ # Source code
├───src
│ └───anomalouslib
│ │ # Analytical tools and metrics
│ ├───analysis
│ │ # Dataset handling and generation
│ ├───data
│ │ # Model definitions and inference
│ ├───models
│ │ # Output handling and reporting
│ ├───results
│ │ # Utility functions and helpers
│ └───utils
│ # QA and testing
└───tests
Development Setup
To test the library locally, follow these steps. All commands should be run from the root of the project, where the pyproject.toml file is located.
1. Set Up the Virtual Environment
First, create a virtual environment:
python -m venv venv
Then activate it:
- On Linux/macOS:
source venv/bin/activate
- On Windows:
.\venv\Scripts\Activate.ps1
💡 Note: To deactivate the environment at any time (on both Linux and Windows), use:
deactivate
2. Install Dependencies
Install the required libraries listed in requirements.txt:
pip install -r requirements.txt
To verify the installation, you can regenerate the requirements.txt and check for any differences:
- On Linux/macOS:
pip freeze | grep -vE "^-e |@ file://" > requirements.txt
- On Windows:
pip freeze | Select-String -NotMatch '^-e |@ file://' > requirements.txt
💡 Note: This filtering step avoids including the local installation of the library itself.
If no changes appear in the file, the setup is correct.
Local Build & Installation
1. Build the Library
Generate the distribution packages:
python -m build
2. Install the Library Locally
- First-time installation (or to force reinstall):
pip install ./dist/anomalouslib-{lib_version}-py3-none-any.whl --force-reinstall
- Subsequent updates (faster and applies only changes):
pip install --upgrade ./dist/anomalouslib-{lib_version}-py3-none-any.whl
💡 Note: Replace
{lib_version}with the actual library version, e.g.:pip install --upgrade ./dist/anomalouslib-0.1.0-py3-none-any.whl
Publishing to PyPI
To publish the package to PyPI, run:
twine upload ./dist/*
⚠️ Important: Make sure no version in the
./dist/folder has already been uploaded to PyPI.
As stated on the PyPI page, to install AnomalousLib on other environments:
pip install anomalouslib
💡 It is strongly recommended not to install the public PyPI version in the same local environment to avoid confusion with the local development version.
Metadata
Release files for AnomalousLib 0.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| anomalouslib-0.2.3.tar.gz | 16.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| anomalouslib-0.2.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.1 kB
Release files / anomalouslib-0.2.3.tar.gz
| Download URL | anomalouslib-0.2.3.tar.gz |
|---|---|
| Size | 16.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9f19d80317714c48dc1597463361e225da530294bd32aadd14dbae2e6e2a5176
|
|
BLAKE2b-256 checksum How to use checksums |
f88206a9c3538321f9c8595caa715a2a8db699ad77b9d19e7a0097134b757855
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.10
|
Release files / anomalouslib-0.2.3-py3-none-any.whl
| Download URL | anomalouslib-0.2.3-py3-none-any.whl |
|---|---|
| Size | 16.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
440a290b64fa744f83276227842b4685bf815a183c00766dc501f42791ae874d
|
|
BLAKE2b-256 checksum How to use checksums |
4ac603015ff2abda72a026a59693f2fa66bb056b02e672548763a1d784fdb5d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.10
|