Revision 29266fbb59c33c72e1fb2a0616fe98aae19b5d8f authored by Marios Papachristou on 20 July 2020, 06:44:53 UTC, committed by GitHub on 20 July 2020, 06:44:53 UTC
* Initialize report * Add solvers file * WIP: Add Euler ODE Solver * WIP: Add Euler Method * Add boundary reflections to Euler * Fix boundary reflections * Add test for ODE dx/dt = -x for Euler Method * Add test for dx/dt = x in [0, 1] * Add is_in for multiple reflections * Add normalize flag to get_direction * Minor modifications * WIP: Add HMC for log-concave densities * Add tests for HMC * Add details to README * Add tests for leapfrog method * Add leapfrog method * Add HMC and HMC tests * Separate Euler and Leapfrog * Remove ode_solvers.h * Refactor solver implementations 1. Move solvers to separate file 2. Fix includes. The ode_solvers.h base file includes the rest of the solvers and is respon- sible for doing the correct includes. * Add RK methods header file * WIP: Add generic RK methods * Implement RK methods with testing * Add collocation method header files * Fix bug in RK methods * WIP: Collocation method constructors * WIP: Implement collocation method * Add root_finders header file * Add CHECK() statements and fix minor bugs * Bug fix for boundary oracle * Add CHEK() for constrained leapfrog * Add Newton-Raphson method for root finding * Add return statement * Add notice * Add regularization (smoothing) and max_iters * Add const where needed * Add BS method * Add Bulirsch-Stoer implementation * Add Bulirsch-Stoer implementation * Add constrained BS method * WIP: Debug collocation method * WIP: Debug collocation method * Add rational fcn and grad of rational fcn functors * WIP: Add testcase for collocation methods * Fix BS method * Minor changes * Add resources to ODE solvers * Initialize curve_intersect for Hpoly * WIP: Boundary oracles * WIP: Boundary oracles * WIP: Boundary oracles * WIP: Boundary oracles * WIP: Boundary oracles * WIP: Add isinf for well-posedness of denominator in NR * Move func template one level above (for ULD to work later) * Initialize boundary oracles test * Add boundary oracle test CMake targets * Initialize boundary oracles tests * Working boundary oracle for H-polytope 1. Uses Newton-Raphson for solving transcendental equations 2. Can find multiple/one root 3. Tests are implemented for the curves (t, t) and (t, 2t^2) * Initialize NLP oracles (general curve w/ polytope) * Finish boundary oracle tests for H-polytope * Add ifopt and ipopt to CMakeLists.txt * Add wrapper function for nlp oracles * Working nlp H-polyoracle * Rename nlp polyoracles to avoid confusion with lp oracles * Remove old polyoracles file * Document NLP hpolyoracles * Minor refactoring * Add wrapper function * WIP: Initialize NLP oracle for V-polytope * Update readme with GSoC information * Add benchmarks with random polynomials * Modify membership condition * Restrain test to t only * Bug fixes * Code cleanup * Move to old commit (before merge) * Merge ode solvers * Rename testcases * Merge root finders test * Move hmc to sampling/ directory * Partial fix for V polyoracles with ipopt * Fix linear collocation method * Fix collocation with approximate computation * Improve README file * Add precomputation flag * Improve NR solver * Add central method for curve_intersect * Change return type of nlp vpolyoracle to return dummy facet * WIP: Integrate boundary oracles to collocation * Fix collocation method boundary oracles (w/ tests) * Bug fixes * Add mpsolve and gmp to CMakeLists.txt * Implement mpsolve wrapper * WIP: Integrate mpsolve * Fix preprocessor directives * Add boundary oracle with mpsolve * Fix minor issues * Fix existing working tests * Add min_pos optimization problem * WIP: Minor changes in way of reflection * Remove hmc sampler temporarily (move it to temp branch) * Fix reflections * Add dependencies(mpsolve, ipopt/ifopt) to CircleCI * Fix config * Fix config * Fix config * Add dependency at circleci config * Add dependency at circleci config * Add dependency at circleci config * Add dependency at circleci config * Add dependency at circleci config * Add root finders test * Minor fixes in boundary oracles * Fix bounded collocation * Typo fix * Add missing test to cmakelists * Add #undef where it is needed * Remove extraneous dynamic linking * Fix erroneous flag * Remove hmc tests (moved to other branch) * Update clang and g++ workflows * Fix failing R tests * Fix failing R tests * Split checking for ubuntu/macOS * Remove misplaced if statement * Add CMAKE_CXX_COMPILER flag to ifopt * Correct test name * Remove sudo in front of brew cmd * Add automake dependency * Change error_on from "warning" to "error" * Add preprocessor directive to disable NLP oracles * Add flag for disabling oracles * Add macro definitions for disabling oracles * Add windows workflow * Modify windows workflow * Change Makevars.win * Change Makevars.win * Change Makevars.win * Disable NLP oracles to all tests * Modify circleci build * Modify circleci build * Add preprocessor directive * Remove report * Remove GSoC details * Move macro * Remove unused typedefs * Modify copyright notices * Fix typo * Rename rk.h to runge_kutta.hpp * Minor correction * Rename .h to .hpp in ODE solvers * Rename nlp oracles from .h to .hpp * Rename root finders * Remove duplicate include * Reorder #include directives * Refactoring * Rename file * Add velocity reflections * Remove extraneous constructors * Add general docs for solvers * Temp refactoring * Fix minor bugs * Remove flag from richardson implementation * Add facet ignore * Finish oracles refactoring * Consistent copyright notices * Add accidentally removed templates * Consistent copyright notices * Add nlp_oracles.hpp main header file * Minor modifications * Change variable name from oracle to intersection_oracle * Remove unused file * Add higher-order reflections * Add missing ignore_facet * Wrap long lines * Remove print statement * Impose sticky boundary conditions for collocation * Impose sticky boundary conditions for collocation * WIP: Add integral collocation method class prototype * Delete integral_collocation.hpp * Modifications to collocation method * Iteratively solve non-linear equations * Fix bugs * Minor modifications to test routines * Optimize function oracles * Comment for future work * Minor changes * Remove comments from yaml * Restore README * Restore README * Remove unecessary comments * Remove comments * Add 3 badges
1 parent b2470c5
File | Mode | Size |
---|---|---|
.circleci | ||
.github | ||
R-proj | ||
cran_gen | ||
doc | ||
examples | ||
external | ||
include | ||
test | ||
volestipy | ||
.gitignore | -rw-r--r-- | 1 byte |
CODE_OF_CONDUCT.md | -rw-r--r-- | 3.3 KB |
CONTRIBUTING.md | -rw-r--r-- | 7.9 KB |
LICENSE | -rw-r--r-- | 7.5 KB |
README.md | -rw-r--r-- | 3.0 KB |
Computing file changes ...