Coverage for src/proximal_lq/__init__.py: 100%
5 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-25 05:26 +0000
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-25 05:26 +0000
1"""Proximal optimization library for simplex-constrained least squares.
3This package provides efficient solvers for optimization problems of the form:
5 minimize 0.5 ||mat @ x - vec||^2
6 subject to x >= 0, sum(x) = 1
8These problems arise in portfolio optimization, machine learning, and signal processing.
10Functions
11---------
12proj_simplex
13 Project a vector onto the probability simplex.
14prox_gradient
15 Solve simplex-constrained least squares via proximal gradient descent.
17Examples:
18--------
19>>> import numpy as np
20>>> from proximal_lq import prox_gradient
21>>> mat = np.array([[1.0, 0.5], [0.5, 1.0]])
22>>> vec = np.ones(2)
23>>> result = prox_gradient(mat, vec)
24>>> print(np.round(result, 4))
25[0.5 0.5]
27"""
29import importlib.metadata
31__version__ = importlib.metadata.version("proximal-lq")
32__all__ = ["__version__", "proj_simplex", "prox_gradient"]
34from .proximal import proj_simplex as proj_simplex
35from .proximal import prox_gradient as prox_gradient