API reference#

Note

CVXlab is currently in beta (1.0.1b1). The package is functional but APIs may change before the stable 1.0.0 release.

CVXlab is designed to be intuitive enough so that it may be used without diving into APIs structures. Reading User Guide, practicing with the tutorial notebook available in the Tutorials section, and looking at existing models in Models gallery will suffice in acquainting you with the package. Nonetheless, API reference are here included for those who are comfortable reading technical documentation.

The classes and functions documented in this section are those imported into the CVXlab namespace. The documentation is grouped the following sections:

  • Model documents the main package class cvxlab.Model, embedding all the main package APIs necessary to generate, handle and solve the numerical model.

  • Utility functions section documents various utility functions available in the package, including functions for initializing model directory and handling model class instances.

  • Symbolic operators documents built-in symbolic operators available in CVXlab, including standard arithmetic operations, matrix operations, and various mathematical functions. Provides guidelines on how to create new or add built-in symbolic operators to the package.

  • Constants documents the various built-in constants data types available in CVXlab, necessary to assign numerical values to constants in numerical problems. Provides guidelines on how to create new or add built-in constant data types to the package.

  • Templates documents the template modules included in the CVXlab package, including user-defined symbolic operators and user-defined constants.

  • Defaults documents the cvxlab.constants module, which includes various default settings used throughout the package that may be customized by the developer.