Algebraic modelling
laboratory in Python#


  • Define models using symbolic expressions and YAML or Excel settings.

  • Manage data in SQLite, keeping model structure separate from numerical data.

  • Solve models through a CVXPY-based numerical engine.

  • Connect models with managed data exchange in parallel, sequential, and integrated solution modes.


Version: 1.1.0 | Date: Nov 11, 2026

PyPI | Source code | Issue tracker | GitHub discussions

Get Started

Set up your environment with the installation guide, then build, solve, and inspect your first model in the quick start.

User Guide

Follow the full modeling workflow, from conceptual definition to results export.

Read the user guide
API Reference

Look up cvxlab.Model, utility functions, symbolic operators, constants, and defaults.

Browse the API reference
Resources

Learn through tutorials, explore published models, and find related research.

Explore tutorials and resources
Project

Explore release changes in the changelog, or help improve CVXlab through the contributing guide.

Explore the project
Cite CVXlab

If you use CVXlab in your work, cite the software version you used through the Zenodo record.

BibTeX
@software{rocco_cvxlab_2026,
  author    = {Rocco, Matteo V.},
  title     = {{CVXlab}},
  version   = {1.1.0},
  year      = {2026},
  publisher = {Zenodo},
  doi       = {10.5281/zenodo.20644006},
  url       = {https://doi.org/10.5281/zenodo.20644006}
}
About CVXlab

Developed by Matteo V. Rocco, Associate Professor at SESAM group, Department of Energy, Politecnico di Milano.

Released under the Apache License 2.0.