Skip to main content

Core engine for cellpy: fast, thread-safe step and cycle summarization of battery-cycling raw data

Project description

cellpy-core

The core engine of cellpy: fast, thread-safe processing of battery-cycling raw data. Given a raw data frame (polars, native schema — or pandas via the legacy bridge), it finds all steps and cycles and builds per-step and per-cycle summary tables. It is designed to be small, schema-injected, and easy for cellpy developers to build on and extend; instrument loaders, file IO, and unit handling stay out of the core.

import polars as pl
from cellpycore import Data, make_step_table, make_summary

data = Data.from_raw_frame(pl.read_parquet("my_native_raw.parquet"))
make_step_table(data, nom_cap=1.0)
make_summary(data)
print(data.steps, data.summary)

Installing

Available on PyPI as cellpycore:

pip install cellpycore

Source: https://github.com/cellpy/cellpy-core

Documentation

Full documentation (built with Zensical, hosted on Read the Docs): https://cellpy-core.readthedocs.io/

Key pages:

Build the docs locally with uv run --group docs zensical serve (config in zensical.toml; notebook-regeneration instructions in docs/examples/index.md).

Developing

This project uses uv as the package manager and build tool. uv is a fast Python package installer and resolver, written in Rust.

Prerequisites

  1. Install uv:
pip install uv

Development Workflow

  1. Install all dependencies (creates .venv automatically):
uv sync
  1. Adding new dependencies:
# Add a new package
uv add <package-name>

# Add a new development package
uv add --dev <package-name>
  1. Running tests:
uv run pytest

Common Commands

  • Reinstall dependencies from the lock file: uv sync
  • Remove a package: uv remove <package-name>
  • Upgrade all packages within constraints: uv sync --upgrade
  • Show the dependency tree: uv tree

For more information about uv, visit the official documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cellpycore-0.1.4.tar.gz (611.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cellpycore-0.1.4-py3-none-any.whl (70.5 kB view details)

Uploaded Python 3

File details

Details for the file cellpycore-0.1.4.tar.gz.

File metadata

  • Download URL: cellpycore-0.1.4.tar.gz
  • Upload date:
  • Size: 611.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cellpycore-0.1.4.tar.gz
Algorithm Hash digest
SHA256 e7b19202febd8fdb0bcc7f2f8dab03707a3eb9ab4efb819eceeb745c9d3e8989
MD5 5e616b55e610a16752a2b73aab7df980
BLAKE2b-256 e7f9e5fa27d05c4f9fbc6d4aea4b34e21725d451aaaf3dc0372e77fb118e9681

See more details on using hashes here.

Provenance

The following attestation bundles were made for cellpycore-0.1.4.tar.gz:

Publisher: release.yml on cellpy/cellpy-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cellpycore-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: cellpycore-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 70.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cellpycore-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 30707c3ce6d23dbe9dc6b6508a5400a1c2f9597d2f400fba75df15688eb6fc95
MD5 2d304a7b68233827a45abf6441d1e4cf
BLAKE2b-256 29f527a903e26a33ed38027940c819be13099ba783a0966174b75497117d2a2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cellpycore-0.1.4-py3-none-any.whl:

Publisher: release.yml on cellpy/cellpy-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page