Revision 05bc31e3ea12e9934437c4ed70cca9d3b42b7736 authored by Marios Papachristou on 13 November 2020, 16:08:15 UTC, committed by GitHub on 13 November 2020, 16:08:15 UTC
* fix example errors and logical checks in sample_points(). Fix errors in InnerBall tests. * add Hpolytope converter from Rcpp::Reference. * comment out te converter in Rvolume.cpp * Reduce if statements in Rvolume to one and fix bug in generate points on sphere function * Add an example of volume computation * Update README.md * Update README.md * Update README.md * return 2d facets for inner ball in zonotopes. Shift polytope in SOB algo to origin, improve ball membership and boundary oracles. * Rvolume: define the input variables, add wrappers to Rvolume function. Add modules for H,V-polytopes and zonotopes. All the exported classes have a field int 'type' in order to declare the representation of the polytope. * modify the generators R functions. Create rcpp function sample_points. * modify sample_points. * add innerball.cpp, sample_points.cpp * create rcpp funtions for exact volume computations, copulas, sliceofsimplex. Modify R functions for rounding, and random rotate. * create rd files for all the rcpp functions and the polytopes modules as well. Delete temp folder. * write the roxygen comments for the documentation. Change inputs for both R and rcpp internal functions of rounding and rotating. Change the roxygen comments accordingly. * create the updated .Rd files and the pdf of the documentation * add generators for H and V random polytopes. Update the documentation and fix bugs in sample_points and exact_vol functions. Make adjustments in the test functions. * add boundary oracles for V-polytopes and zonotopes that use the feasible basis from the first LP for the second one in each HnR step. * fix bug in rounding.cpp. Add Rd files by hand for polytope classes. Fix bugs from devtools::check(). * use switch instead of if-else if. Enable the c++ tests. * use std::numeric_limits::max() and lowest(). * create Rd files for the exposed c++ classes. Use switch in poly_gen. Use break inside case: * update the Rd files of the C++ classes and of the exposed classes through modules. Fix bugs in arbitrary simplex sampler. Fix bugs in examples, and in the SOB function in volume.h in cran header. * update the roxygen comments for the documentation. * use walk_step instead of walk_length.Update the documentation. * use var.cdhr_walk and var.rdhr_walk for the type of HnR. * include volume.h * solve a Note from the devtools::build_win(). Update the cran-comments.md in cran_gen folder. * disable skinny_cube_20 for rounding test * fix rounding test * fix rounding test * change the cran-comments.md file and add the correct date to description file. * update the cran version readme and add the cran-comments.md file into inst folder in cran package. Update fileToMatrix documentation. * update the cran version readme. * modify description and update documentation * fix urls in cran readme.md and remove cran-comments from the inst folder. * fix c++ tests for cg algo. * fix c++ tests * update the documentation and the description file. * fix tests for CG algo in H-rep. * fix c++ tests * Add pararellism to CI * relax V-poly tests * Update config.yml to execute tests in parallel * Fix problem with parallel build * fix cg test for zonotopes * replace Eigen::Random() in rotating.cpp. Modify the return value of rotating and rand_rotate() in order to return the matrix of the linear map as well. Use wrappers in ExtractMatPoly.h and modigy poly_gen.cpp and R generator functions accordingly. Update the documentation and add ' in mis-spells in description file to avoid the cran Notes. * fix namespace and add innerball implementation for the intersection of two V-polytopes and modify InnerBall.cpp, sample_points.cpp and volume.cpp accordingly. Add operater == to point.h. * remove single quotes from description and change the varsion to 1.0.0 * change description. * edit description file to declare contributors. Change \dontrun{} with \donttest{} in Rd files and modify polytope_modules.cpp to declare copyrights. * add COPYRIGHTS file, add copyright and modification declarations in external/minimum_ellipsoid header files. * move lp_solve to externals and modify makevars and lpsolve makefile accordingly, as well as the R script grcran.R * Fixing references in description file * generate new documentation. * add AUTHORS file in inst folder and a reference in description files. This file contains the contributors of other packages. We update the documentation * improve AUTHORS file, update documentation pdf, fix a bug in lp_solve.h for the membership of zonotope * new header file for rotating and fix bugs of solaris building in minimum_ellipsoid in external. * fix non-external bugs from solaris * remove .Rhistory file * Change \` with \' in COPYRIGHTS * commit the version 1.0.2 with ficed bugs and cran violations. * update NEWS file for version 1.0.2 * Update NEWS.md * Delete R documentation pdf * fix bug foe ine files, when the coefficients are seperated by tab. * fix point == operator. * remove unused flags from makevars, fix error in lp_MPS.c, set version 1.0.3 * fix cran warning in lpkit.h * modify NEWS.md file * change date in description file * fix cg algo's c++ tests * add new computation of V-polytope inscribed ball, by coomputing an inscribed cube first. * implement functions is_feasible() and ComputeInnerBall() in intersection of VP class. Use them in Rcpp functions. * remove unused comments and add a reference in point.h * python wrapper for volesti (volestipy) * added short readme * use liblpsolve55.so (somwhere on machine) + clean setup.py * nothing really * updated readme * updated readme * updated readme * some small cleanup, nothing substantial. * removed dead code * Update README.md * Fix some pass by value parameters and useless imports and README in python interface * Passing volume constants by reference (#50) Passing volume constants by reference * removed some typos form readme, added sequence of balls volume, bumped minor release (#52) * Create CONTRIBUTING.md * Create CODE_OF_CONDUCT.md (#53) * Update issue templates * split polytope classes and lp oracles functions in differetnt header files. Use pre-malloc in lp oracles. * add new algo * change the names of functions and inputs * remove printing and fix includes of header files in cran version * add boost header files for the new algo and fix the c++ interface * improve the R documentation * fix the R tests and improve R documentation * fix R tests and bugs in examples of R functions. Fix a bug in c++ tests. * update description, README.md, NEWS.md files for the new version and input variables' names in round_polytope R function. * fix c++ tests * change version and improve c++ code in new volume functions. * implement the PR comments: declare const, improve names of functions and geeral coding * define constants and add max number of iterations to check if the annealing fails. Update sample_points rd file. Fix bug in c++ generator. * update description file and fix windows bug in ball_annealing.h * fix template declarations and minor improvements in ratio_estimation.h * minor improvments in exact_vol.h * implment acceleration of rdhr for both volume and sampling. * resolve PR in ball anealing and increase cdhr sliding window * add billiard walk for volume * add billiard to sample_points interface and fix documentation of R function of volume. * improve rounding in R interface and documentation for sample_points and volume R functions. * fix c++ interface and c++ tests * update descriion file in R-proj * update rd files * fix bugs in Rd files and update the NEWS.md file * improve the initialization of delta (ball_walk) and diameter. fix errors in doxumentation and update Rd files * improve initialization of diameter for billiard walk. Fix C++ tests' bugs. * remove volume.h file from cran version. * use const variables and remove useless comments. * reduce c++ cg volume test * improve c++ interface and fix c++ tests * Merge copula functions and new compute indicators R function (#56) * merge two copulas functions into one. * add compute_indicators R function. * develop compute_indicator R function and copula.cpp in R-proj * improve roxygen comments in compute_indicator R function and copula.cpp in R-proj * fix bugs in copulas.cpp * fix bugs in compute_indicators.R * fix R tests for copulas and set to lowercase the inputvariables in the new functions * improve compute_indicators.R * Exact volume (#57) * merge two copulas functions into one. * add compute_indicators R function. * develop compute_indicator R function and copula.cpp in R-proj * improve roxygen comments in compute_indicator R function and copula.cpp in R-proj * fix bugs in copulas.cpp * fix bugs in compute_indicators.R * fix R tests for copulas and set to lowercase the inputvariables in the new functions * improve compute_indicators.R * add volume field in R module polytope classes * add volume declaration for known polytopes in R interface * modify exact_vol.cpp in R interface * set NaN the volume initialization in Rcpp modules of polytopes, update NEWS.md file * modify namespace * Improve interfaces, generators and bug fixes (#58) * use cdhr in rounding, improve t-test iterations, change diameter of H-polytopes, minor modifications in both interfaces. * improve c++ interface, add c++ test for cooling bodies with billiard walk * improve new c++ test * add random generators * update R random generators * update Rd files * update R volume interface * fix generators in both c++ and R interfaces, improve exact_volume check in c++ interface * fix bug in hpoly zonotope volume approximation * improve c++ documentation (help command) * fix c++ tests * fix c++ tests * improve cpp generator interface * improve cpp generator interface * Zonotope approximation (#59) * use cdhr in rounding, improve t-test iterations, change diameter of H-polytopes, minor mpdifications in both interfaces. * improve c++ interface, add c++ test for cooling bodies with billiard walk * improve new c++ test * add random generators * update R random generators * update Rd files * update R volume interface * fix generators in both c++ and R interfaces, improve exact_volume check in c++ interface * fix bug in hpoly zonotope volume approximation * improve c++ documentation (help command) * add zonotope_approximation in R interface. improve R volume and sample_points documentation * fix c++ tests * fix bug in zonotope approximation Co-authored-by: Vissarion Fisikopoulos <fisikop@gmail.com> * Fix tests and issue #8 (#60) * modify c++ tests * improve input variable names in R functions * check for negative error parameter in both interfaces * update Rd files * Update README.md * Various improvements (tests, documentation, names) (#61) * modify c++ tests * improve input variable names in R functions * check for negative error parameter in both interfaces * update Rd files * update compute_indicators * update rotating R functions * update sample_points.cpp * update volume.cpp and Rd files * update zonotope_approximation functons and the Rd files * fix examples, tests, documentation errors * update rounding and fix a bug in sample_points gaussian sampling, update Rd files, fix cran errors * add the option to set seed for the random polytope generator * fix cran check errors * add boundary sampling in R interface * add references in rounding functions and fix bug in vol.cpp * README: folder name changed from R-prog to R-proj (#63) * Folder name changed from R-prog to R-proj * Delete .Rhistory * Delete .Rhistory * Delete RcppExports.cpp * Readme correction and -help error in generator (#64) * add mode and starting point as inputs in samlpe_points() * fix #65 * add direct_sampling R function * improve comp_diam() function in polytopes * Update README.md Closes #67 * Update README.md * Fix bug in hpolytope print function (#68) * Update readme, add `doc` directory and tutorials (#70) * Use eigen types as internal structures (#29) * Changed class point to store coefficients to Eigen vector instead of std::vector. Made required code updates in polytopes.h, rounding.h,ballintersectconvex.h and updated CMakeLists.txt to include the directory with Eigen. * fixed bug * fix for quicker access to data When accessing the data of class Point don't copy the whole vector, but use the [] operator (changes requested during the pull request). * Eigen clean existing code, make changes in leftover files with previous implementation * Optimizations - avoid creating copies - code cleanup - more coherent coding, using Eigen and eradicating std::vector * Optimizations - Vectorize when possible the operations in line_intersect functions - Change the matrix in HPolytope to be RowMajor * Major - change uses of std::vector to Eigen vector - Change the matrix in HPolytope NOT to be RowMajor (seemed slower, needs more testing) - enabled no debug macro for Eigen in /test/CmakeList - added 2 tests, to compute volume with rdhr and with BiW * Bug Error in creating Point * bug * use cooling balls in test * edit initialization * edit /test/CMakeLists.txt * Optimizations - Use eigen function noalias() to avoid creating temporary copies when multiplying matrices - in getDirection() (samplers.h) don't use std::vector, only Eigen::Vector - fix bug in point.h, in constructor * leftovers from merge - make changes in code from last merge - delete tests I had previously added * cleanup - requested changes * update copyrights * bug * bug * requested changes * use += *= operators with points * use += *= operators with points * Fix non const parameters in rand_exp_range (#71) Remove const from function parameter * update input variable names in sample_points(), direct_sampling() and vpolytope-intersection R class * change 'algo' to 'settings' in volume function. remove unused methods in c++ polytope classes * update R tests and NEWS.md file * update zonotope_approximation input variables * delete cran package files * Fix seed in gen_rand_hpoly (#74) * update input variable names in sample_points(), direct_sampling() and vpolytope-intersection R class * change 'algo' to 'settings' in volume function. remove unused methods in c++ polytope classes * update R tests and NEWS.md file * update zonotope_approximation input variables * delete cran package files * fix seed in rand_hpoly_generator * new volume structure SoB plus random walks * Use billiard walk in SOB algorithm (#75) * fix seed in rand_hpoly_generator * enable SOB algorithm with billiard walk * enable SOB algorithm with billiard walk in c++ interface * correct input list algo in Rcpp volume.cpp * Update readme, add `doc` directory and tutorials (#70) * Cleanup SoB volume algorithm * New volume function example * Optimization: move random generators creation outside of random walk helpers * Expose rnd seed in highest level * Random number generator struct * RNG interface with fixed seed * Design simpler Walk interface * Ball walk for GC algorithm * RDHR walk for GC algorithm * CDHR walk for GC algorithm * Update delta for ball walk and removing unused paremeter passing in gaussing cooling algorithm * Fixing the scope of several variables in gaussian cooling * Fixing the scope of variables and using const where possible in gausian annealing * New design for cooling balls algorithm * Improvements in rounding and rotating R functions (#76) * add seed in rotate_polytope and update Rd files * update R rounding function to return the linear map * fix rounding in V-poly * overloading rotating() function and remove unused comments * Fix line_intersect function * Add const refs, missing includes, const vars for tolerance, fix some code styling * Remove unnecessary constructors in random walks, put const refs * Fix non const parameters in rand_exp_range (#71) Remove const from function parameter * update input variable names in sample_points(), direct_sampling() and vpolytope-intersection R class * change 'algo' to 'settings' in volume function. remove unused methods in c++ polytope classes * update R tests and NEWS.md file * update zonotope_approximation input variables * delete cran package files * Fix seed in gen_rand_hpoly (#74) * update input variable names in sample_points(), direct_sampling() and vpolytope-intersection R class * change 'algo' to 'settings' in volume function. remove unused methods in c++ polytope classes * update R tests and NEWS.md file * update zonotope_approximation input variables * delete cran package files * fix seed in rand_hpoly_generator * Use billiard walk in SOB algorithm (#75) * fix seed in rand_hpoly_generator * enable SOB algorithm with billiard walk * enable SOB algorithm with billiard walk in c++ interface * Const references and styling for cooling balls algorithm * Tests for sob algo using hpoly * Benchmarks and tests (sob and gc algorithms) * Tests for CB algorithms and various walks (expect to fail at this stage) * Fix walk initialization for CB algorithm * Fix tests for CB algorithm and hpolytopes * Fixes in cooling gaussian algorithm and tests * Fix accuracy of CDHR in CG * Update delta after walk construction * Tests for CG/vpolytopes * Implementation of cb algorithm with H-polytopes in MMC for zonotopes (#1) * correct input list algo in Rcpp volume.cpp * Improvements in rounding and rotating R functions (#76) * add seed in rotate_polytope and update Rd files * update R rounding function to return the linear map * fix rounding in V-poly * overloading rotating() function and remove unused comments * implement zonotope volume computation with cb algorithm and hpoly in MMC * fix all bugs in new cooling_hpoly algorithm and improve test function * all tests for zonotopes with c algortihm passed successfully * Fixing tests * Passing walks as objects to volume with runtime arguments * New rounding implementation ans volume approximation for V-poytopes intersection (#2) * correct input list algo in Rcpp volume.cpp * Improvements in rounding and rotating R functions (#76) * add seed in rotate_polytope and update Rd files * update R rounding function to return the linear map * fix rounding in V-poly * overloading rotating() function and remove unused comments * implement zonotope volume computation with cb algorithm and hpoly in MMC * fix all bugs in new cooling_hpoly algorithm and improve test function * all tests for zonotopes with c algortihm passed successfully * implmentation of diameter computation of all convex bodies except Vpoly-intersection * add Vpolyintersection diameter computation and volume approximation * new implmentation of rounding * add rounding in zonotope volume approximation with Hpoly in MMC * dispatching in ratio estimation * update ratio estimation functions * implmemrnt dispatching for diameter computation * improve ratio estimation code structure * Rcpp functions with the new structure (#3) * correct input list algo in Rcpp volume.cpp * Improvements in rounding and rotating R functions (#76) * add seed in rotate_polytope and update Rd files * update R rounding function to return the linear map * fix rounding in V-poly * overloading rotating() function and remove unused comments * implement zonotope volume computation with cb algorithm and hpoly in MMC * fix all bugs in new cooling_hpoly algorithm and improve test function * all tests for zonotopes with c algortihm passed successfully * implmentation of diameter computation of all convex bodies except Vpoly-intersection * add Vpolyintersection diameter computation and volume approximation * new implmentation of rounding * add rounding in zonotope volume approximation with Hpoly in MMC * dispatching in ratio estimation * update ratio estimation functions * implmemrnt dispatching for diameter computation * improve ratio estimation code structure * update declaration of parameters in random walks * update parameter declaretion for both ball and billiard walks * modify Rcpp expose for volume and sampling C++ functions * modify Rcpp rounding function * update rounding, sampling, volume rcpp dunctions: typedefs and includes * modify zonotope approximation Rcpp function. minor changes to Rcpp volume and sampling functions * fix compiler errors * update d files * fix compiler errors in c++ tests * add seed in rounding and direct_sampling Rcpp functions * add a second volume function to use fixed seed in Rcpp interface * Restructuring volume algorithms and random walks * Improvements and corrections in Rcpp functions (#4) * correct input list algo in Rcpp volume.cpp * Improvements in rounding and rotating R functions (#76) * add seed in rotate_polytope and update Rd files * update R rounding function to return the linear map * fix rounding in V-poly * overloading rotating() function and remove unused comments * implement zonotope volume computation with cb algorithm and hpoly in MMC * fix all bugs in new cooling_hpoly algorithm and improve test function * all tests for zonotopes with c algortihm passed successfully * implmentation of diameter computation of all convex bodies except Vpoly-intersection * add Vpolyintersection diameter computation and volume approximation * new implmentation of rounding * add rounding in zonotope volume approximation with Hpoly in MMC * dispatching in ratio estimation * update ratio estimation functions * implmemrnt dispatching for diameter computation * improve ratio estimation code structure * update declaration of parameters in random walks * update parameter declaretion for both ball and billiard walks * modify Rcpp expose for volume and sampling C++ functions * modify Rcpp rounding function * update rounding, sampling, volume rcpp dunctions: typedefs and includes * modify zonotope approximation Rcpp function. minor changes to Rcpp volume and sampling functions * fix compiler errors * update d files * fix compiler errors in c++ tests * add seed in rounding and direct_sampling Rcpp functions * add a second volume function to use fixed seed in Rcpp interface * fix rcpp interface * Removing old implementation files and renaming * Improvements in rounding and rotating R functions (#76) * add seed in rotate_polytope and update Rd files * update R rounding function to return the linear map * fix rounding in V-poly * Remove duplicate seed from rcpp * Enable tests for CB algorithm with V-cubes * Removing unused variables, setting const refs where needed * Add simple github actions CI for gcc and clang (#80) * Fix CRAN interface (#81) * pass cran check * fix billiard initialization, rounding shifting and seeding * add seed to copula computations * cran actions * Improvements on cran tests and R interface (#83) * fix windows errors in cran checks * update Rd files, fix bugs in direct_sampling and boundary sampling * improve R tests, update description file and fix seeding in cooling hpoly * re order template classes in volume functions * remove skiping for 32-bit in R tests * fix declaration of random walks for uniform sampling * fix the default value of the ball walk radius, fix zonotope c++ test * fix c++ tests * fix c++ tests * fix memory leak in cg algorithm. update R examples and tests * remove unused comments * update dicumentation and Rd files * fix error in lpsolve, seeding in vpolytopeintersection and c++ tests * fix vpolytope-intersection c++ test * Update/restructure Readme (#84) * Update README * Update README * Sdpa format (#36) * expose Spectrahedron interface to R - create class spectrahedron - expose function to write sdpa format files in R * expose read_sdpa function to R and documentation * R documentation and examples - fix examples - add data for example - add roxygen comments * tests for sdpa format manager - add copyrights headers - add test that writes and reads a sdpa format file - add the test in test/CMakeLists.txt * add example code for sdpa files - create folder examples in root - add an example main to read / write sdpa format files * fix file format * fix file encoding * use soft wrap with lines * create folder spectrahedra - move in new folder spectrahedron.h, LMI.h - update CMakeLists.txt in folder examples, tests - update Makevars in R-prog/src and in cran_gen - add documentation for sdpa file example * examples/spectrahedra documentation * examples/spectrahedra documentation fix headers * rename R modules - rename module in polytopes_modules.cpp to "polytopes" - rename module in spectrahedron_module.cpp to "spectrahedron" - fix dates in copyrights headers in files - add a newline in end of file spectrahedron.h * make LMI::getMatrices() return std::vector const & Also fix parameters documentation in R for functions - readSDPAFormatFile - loadSDPAFormatFile - writeSDPAFormatFile * rename typedefs in spectrahedron.cpp - rename SPECTRAHEDRON typedef to Spectrahedron - remove unneeded class _Spectrahedron in spectrahedron.cpp * Activate tests in github actions (and clang sanitizer) (#85) * Use actions with -fsanitize=memory * Use actions with -fsanitize=memory * Use actions with -fsanitize=memory * actions for R * fix clang++ segmentation fault (#87) * fix clang++ segmentation fault There was a problem with clang when accessing elements of vector spectrahedron.getLMI().getMatrices() - getMatrices() returns std::vector const &. The fix was to make Spectrahedron class method getLMI() return LMI const & - also make LMI constructor take parameter const &, not just & * fix #include paths * Fix deprecated ftime in lpsolve and update README (#89) * CRAN version 1.1.2 (#118) * fix review comments on R package * update R interface in volume and sample_points * update Rcpp modules and S4 classes * replace modules with R classes * update R documentation * fix R tests * fix R bugs * add hpoly new generator, fix bugs in rounding with biw * update the Rd files * fix c++ tests and a bug in volume.coo * fix c++ test * update polytope random generators in R, update rd files * fix bugs in R interface * seperate sdp functions * Squash commits into one * Revert "Max ball param in generate_samples and rounding (#115)" This reverts commit 1bd54f22a81c869b2054ac91ad45c3fef42bd539. * Remove std::cout * Max ball param in generate_samples and rounding (#115) * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Update setup.py * Update bindings.h * Update setup.py * Update setup_old.py * Update bindings.cpp * Update setup.py * Update setup.py * Update volestipy.pyx * Update test1.py * Create test1_old.py * Update test1.py * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Update bindings.h * Update bindings.cpp * Update bindings.h * Update bindings.cpp * Update volestipy.pyx * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Update bindings.h * Update bindings.cpp * Update volestipy.pyx * Update bindings.h * Update bindings.cpp * Update bindings.h * Update setup.py * Update bindings.cpp * Update bindings.h * Update bindings.cpp * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Update bindings.cpp * Update volestipy.pyx * Update volume_cb_hpolytope.cpp * Update test1.py * Update bindings.cpp * Update test1.py * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Update bindings.cpp * Update volestipy.pyx * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Create .gitignore * Delete test1_old.py * Delete setup_old.py * Delete bindings_old.h * Delete bindings_old.cpp * Delete volestipy_old.pyx * Update volestipy.pyx * Update bindings.cpp * Update bindings.h * Update .gitignore * Update volume_cb_hpolytope.cpp * Update test1.py * Update test2.py * Update bindings.h * Update setup.py * Update credits.md * on .gitignore: files on test/Testing/Temporary/ were removed from the .gitignore file * first attempt - not working - for rounding * rounding function: does not work; trying to figure it out * round_val now works; still new_A and new_b need to be included * Create metabolic_net_pipeline.ipynb * Update metabolic_net_pipeline.ipynb * Update metabolic_net_pipeline.ipynb * Update metabolic_net_pipeline.ipynb * Update metabolic_net_pipeline.ipynb * Update metabolic_net_pipeline.ipynb * Update volestipy.pyx * Update bindings.cpp * Create test_rounding.py * Create test1.py * Create test2.py * Delete test2.py * Update test1.py * Create metabolic_net_pipeline-checkpoint.ipynb * Update setup.py * Update .gitignore * Delete test1.py git rm test1.py * Delete test2.py git rm test2.py * Update bindings.h new class for the preprocessing and the get_full_dimensional_polytope() function in the bindings.h * Update bindings.cpp new class for the preprocessing and the get_full_dimensional_polytope() function in the bindings.cpp * Update volestipy.pyx new class for the preprocessing and the get_full_dimensional_polytope() function in the volestipy.pyx * Update bindings.h working on the lowDimHPolytopeCPP class - just a draft with the main ideas, not a stable version * Update bindings.cpp working on the lowDimHPolytopeCPP class - just a draft with the main ideas, not a stable version * Update volestipy.pyx working on the lowDimHPolytopeCPP class - just a draft with the main ideas, not a stable version * Update bindings.h set member variables for lowDimHPolytopeCPP class * Update bindings.cpp remove unessecary vars * Update volestipy.pyx remove unecessary vars in self.full_dim_polytope * Update bindings.h build the instructor for the full_dimensional_polytope() function * Update bindings.cpp 1st draft for the get_full_dimensional_polytope() function * Update volestipy.pyx 1st draft for the python interface of the get_full_dimensional_polytope() function * Update bindings.h using transpose matrices for N and A_full removing the "extra" from the shift and b_full vectors as it is not needed * Update bindings.cpp 2nd draft for the lowDimHPolytopeCPP class. we changed the N and A_full matrices to transpose to feed them in the cpp file like this. we removed the _extra from the vectors * Update volestipy.pyx 2nd draft for the lowDimHPolytopeCPP class. changed "_extra" vectors when needed. first draft that actually compiles * Create test_get_full_dim_polytope.py test file for the get_full_dimensional_polytope function not ready yet * Update test_get_full_dim_polytope.py changed the Aeq * Update test_get_full_dim_polytope.py final test for the get_full_dimensional_polytope() function * Update bindings.cpp print the N transpose and the full A transpose matrices from the C++ code * Update volestipy.pyx Attention! What C++ returns is the transpose matrix. Thus, the [i,j] element of the full A is the [j,i] of what C++ returns. That is what we fixed here * Update test_get_full_dim_polytope.py print all the outputs of the get_full_dimensional_polytope() function * Update bindings.cpp remove test prints * Update volestipy.pyx remove test printing statements add all the output in the return statement on the get_full_dim_polytope() improved comments * Delete metabolic_net_pipeline.ipynb remove the jupyter notebook * Delete metabolic_net_pipeline-checkpoint.ipynb remove the hidden directory for the jupyter notebook * Update volestipy.pyx Exceptions for the low_dim_polytope_cpp constructor added. Deletion of the A_full and the b_full variables after the initialization of the object. * Update bindings.h CheBall was removed from the case of the lowDimHPolytopeCPP * Update volestipy.pyx just some functions of gurobipy * Update volestipy.pyx first draft for the pre_process() python function * Create test_preprocess.py a test file for the pre_process() function * Update volestipy.pyx correct obj function. Aeq line was replaced by a such from A. * Update volestipy.pyx make dependencies more readable * Update volestipy.pyx test sparse function * Update test_preprocess.py change dimensions * Update volestipy.pyx loop for all the lines of A and models for each of those and its minus * Update test_preprocess.py change the dimensions * Update volestipy.pyx draft to check whether it works fine! * Update volestipy.pyx change name in model.addConstr from "c2" to "c" in all the constraints described, fixed the solutions remove unecessary print statements * Update test_preprocess.py add print statement for the results of the pre_process() function * Update test_preprocess.py build Aeq in a way to be more like to a stoichiometric matrix * Update volestipy.pyx add model.update() and model.display() function every time we add constraints or change the objective function * Update volestipy.pyx correct typo in comment * Update volestipy.pyx add model.update() after the obj function for the minus A[i,] * Update volestipy.pyx add print statements * Update volestipy.pyx attempt to solve the issue with the solutions * Update volestipy.pyx addMConstrs * Update volestipy.pyx setMObjective() * Update volestipy.pyx correct objectives() * Update volestipy.pyx make minus obj function as it should be * Update volestipy.pyx remove print not needed statements make code more readable * Update test_preprocess.py change permission in test * Update test_preprocess.py add import volestipy in test_preprocess.py * Update volestipy.pyx remove solutions and their corresponding print statements add new line in the end of the file * Update volestipy.pyx correct comment * add bigg file of e.coli in .mat format * add a BIGG file in .json format * add function to read bigg files in .json format; keep the Aeq * develop the read json format bigg file function * add test file for reading json bigg files * add function for reading json bigg files * new directory for the bigg example files * improved function for reading json bigg files; Aeq is now m*n * print metabolites and reaction in the test for json * add function to read .mat bigg files * one test file for reading both json and mat bigg files * remove unecessary print statements * comment in the head of the file describing its purpose * update documentation on how to install volestipy * improved documentation for the dependencies * remember to explain how to get lpsolve * remember to explain how to get lpsolve * remember to explain how to get lpsolve * remember to explain how to get lpsolve * test with RECON1 for the pre-processing step were performed successfully * export .npy files with the outcome of the pre_process function so the user can load them any time * change the input file to e_coli_core * print files with the output of get_full_dim() and rounding() ; start function for inner ball * small changes to check data types * convertions to numpy arrays * complete read-preprocess-get_full_dim steps * add data types in .gitignore file * add a test with all the steps of the pipeline * draft for max ball * test for computing max ball * include get_max_ball() function * remove last empty lines * add emppty last line * lp_solve replaced by lpsolve * rounding step included in the full pipeline test * add comput_max_ball in the pipeline * fixed type for the r variable; sre_parse related issue * remove unecessary library * clean up a bit * Update volestipy.pyx empty last line * Update bindings.cpp add empty last line * improve rounding * fix svd rounding * add max_ball arguments in the rounding function * add max_ball if statement in rounding funcion * fix cheball in rounding * change variable name * add max ball in rounding function * add semicolomn * add extra variable inner_point_for_c to feed the .cpp with the inner point * change test file to include the max ball output as parameter to the rounding function * replace integer zero values in the bydefault inner point list, with fload zeros; this way we fixed bug according to which the inner_point_for_c was waiting for double but got long * replace if statement for max ball in rounding * add arguments in generate_samples() for the case that max_ball has been included * add cases for running generate_samples depending max ball input * feed sampling with max_ball params * add part for generate samples * change sampling function to support max ball and L params * change the way set_L and max_ball bool vars are set * python interface initialization * add accelerated_billiard variable * remove wrong '=' sign * remove const from end of void set_InnerBall functions * include sampling on rounded polytope using max ball function * max ball on rounded polytope * change by default number_of_points_to_burn * complete test pipeline * function for mapping sampled points to the initial polytope added * remove blank lines * remove blank line * clean code; split long lines * add blank last line * add features till get full dimensional polytope * before plotiing * plol it * histogram added * reaction 35 for plotting * add print statement for dimension * testing recon1 * testing for recon1 * notebook checkpoints * add returning min and max fluxes vectors in pre-processing * ignore png files * return float numpy types from read function * add tests for e coli and plot samples * e coli full example * further chechpoints Co-authored-by: Tolis <tolis.chal@gmail.com> * Regenerate R docs * Update date field and add redirection to examples * Reorder initializations * Correct example * Add high dimensional test * Add high-dimensional example * Add example for random H-polytope with Gaussian centered at the Chebyshev center Co-authored-by: tolischal <tolis.chal@gmail.com> Co-authored-by: Vissarion Fysikopoulos <vissarion.fysikopoulos@oracle.com> Co-authored-by: Vissarion Fisikopoulos <fisikop@gmail.com> Co-authored-by: pedrozudo <pedrozuidbergdosmartires@gmail.com> Co-authored-by: Sharat-Bhat <45495724+Sharat-Bhat@users.noreply.github.com> Co-authored-by: KunalKatiyar <katiyarkunal2011@gmail.com> Co-authored-by: Vaibhav Thakkar <vaibhav.thakkar.22.12.99@gmail.com> Co-authored-by: Panagiotis Repouskos <panagiotisrep@gmail.com> Co-authored-by: hariszaf <haris-zaf@hcmr.gr>
1 parent 1bd54f2
File | Mode | Size |
---|---|---|
.circleci | ||
.github | ||
R-proj | ||
cran_gen | ||
doc | ||
examples | ||
external | ||
include | ||
test | ||
volestipy | ||
.gitignore | -rw-r--r-- | 66 bytes |
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.1 KB |
Computing file changes ...