lincon
a quadratic programming solver with support for linear equality and inequality constraints
Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: sciencedirect.com -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (5.2%) to scientific vocabulary
Repository
a quadratic programming solver with support for linear equality and inequality constraints
Basic Info
- Host: GitHub
- Owner: mirca
- License: mit
- Language: C++
- Default Branch: master
- Homepage: https://mirca.github.io/lincon
- Size: 2.37 MB
Statistics
- Stars: 6
- Watchers: 3
- Forks: 2
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
lincon
a quadratic programming solver with support for linear equality and inequality constraints, i.e.
minimize (1/2)x^TQx + q^Tx
subject to Cx = c, Dx <= d
convergence rate: O (1/k^2)
references
documentation: https://mirca.github.io/lincon
Instalation
C++
just copy the file lincon/src/solver.h =)
Python
pip install lincon
Basic usage
C++
```{c++}
include "solver.h"
include
using namespace Eigen; using namespace std;
int main() { Eigen::MatrixXd Qmat(2, 2), Dmat(2, 2); Eigen::MatrixXd Cmat(1, 2); Eigen::VectorXd qvec(2), cvec(1), dvec(2), w0(2); Qmat << 2.,.5, .5,1.; w0 << .5, .5; qvec << 1.,1.; Cmat << 1.,1.; Dmat << -1.,0., 0.,-1.; cvec << 1.; dvec << 0.,0.; qpsolver* mysolver = new qpsolver(Qmat, qvec, Cmat, cvec, Dmat, dvec, w0); std::cout << mysolver->solve() << std::endl; } ```
Python
```{python} import numpy as np from lincon import qp
Qmat = np.array([[2., .5], [.5, 1]], dtype=np.float64) w0 = .5 * np.ones(2, dtype=np.float64) qvec = np.ones(2, dtype=np.float64) Cmat = np.atleast_2d(np.ones(2, dtype=np.float64)) Dmat = np.array([[-1, 0], [0, -1]], dtype=np.float64) cvec = np.ones(1, dtype=np.float64) dvec = np.zeros(2, dtype=np.float64)
x = qp.solve(Qmat=Qmat, qvec=qvec, Cmat=Cmat, cvec=cvec, Dmat=Dmat, dvec=dvec, w0=w0) ```
License
Copyright 2019 Ze Vinicius
This project is licensed under the terms of the MIT License.
Owner
- Name: Zé Vinícius
- Login: mirca
- Kind: user
- Location: Clear Water Bay, Hong Kong
- Company: Morgan Stanley
- Website: https://mirca.github.io
- Twitter: mircaze
- Repositories: 305
- Profile: https://github.com/mirca
GitHub Events
Total
- Fork event: 1
Last Year
- Fork event: 1
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 6 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 1
- Total maintainers: 1
pypi.org: lincon
a QP solver with support for general linear equality and inequality constraints
- Homepage: https://mirca.github.io/lincon
- Documentation: https://lincon.readthedocs.io/
- License: MIT License
-
Latest release: 0.0.4.dev0
published over 5 years ago
Rankings
Maintainers (1)
Dependencies
- numpy *
- pybind11 >=2.2
- numpy *
- pybind11 >=2.2
- actions/checkout v1 composite
- actions/setup-python v1 composite