Skip to content

Commit

Permalink
add readme
Browse files Browse the repository at this point in the history
  • Loading branch information
xunzheng committed Nov 16, 2018
1 parent 3f965c5 commit e443dfd
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions cppext/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# cppext

This is a Python C++ extension that implements ProxQN and various
related functions for NOTEARS.
The implementation of ProxQN was made possible by generous help of
the authors of [ProxQN](http:https://users.ices.utexas.edu/~zhongkai/ProxQN/).


## Contents

- `eigen/` - [Eigen 3.3.5](http:https://eigen.tuxfamily.org/index.php?title=Main_Page)
as git submodule
- `setup.py` - standard python script for package installation
- `src/cppextmodule.cpp` - Python interface of C++ functions
- `src/proxqn.h` - ProxQN algorithm
- `src/problem.h` - class of problems that define zeroth and first order oracle
- `src/notears_problem.h` - function and gradient of augmented lagrangian
- `src/lasso_problem.h` - function and gradient of lasso, for sanity check


## Eigen with BLAS/LAPACK

If you have BLAS/LAPACK installed, please uncomment corresponding lines
in [`setup.py`](setup.py), [`proxqn.h`](src/proxqn.h),
[`notears_problem.h`](src/notears_problem.h).

0 comments on commit e443dfd

Please sign in to comment.