Skip to content

Commit

Permalink
Merge branch 'GUDHI:master' into persistence_matrix
Browse files Browse the repository at this point in the history
  • Loading branch information
hschreiber authored Jun 17, 2024
2 parents d802887 + b15c964 commit 8d77ab7
Show file tree
Hide file tree
Showing 97 changed files with 589 additions and 1,167 deletions.
30 changes: 15 additions & 15 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ jobs:
examples:
docker:
# cf. https://github.com/GUDHI/gudhi-deploy/blob/main/Dockerfile_for_circleci_image
- image: gudhi/ci_for_gudhi:latest
- image: gudhi/ci_for_gudhi:2024.06.01
steps:
- checkout
- run:
Expand All @@ -25,7 +25,7 @@ jobs:
tests:
docker:
- image: gudhi/ci_for_gudhi:latest
- image: gudhi/ci_for_gudhi:2024.06.01
steps:
- checkout
- run:
Expand All @@ -44,7 +44,7 @@ jobs:
debug_tests:
docker:
- image: gudhi/ci_for_gudhi:latest
- image: gudhi/ci_for_gudhi:2024.06.01
steps:
- checkout
- run:
Expand All @@ -63,7 +63,7 @@ jobs:
utils:
docker:
- image: gudhi/ci_for_gudhi:latest
- image: gudhi/ci_for_gudhi:2024.06.01
steps:
- checkout
- run:
Expand All @@ -82,7 +82,7 @@ jobs:
python:
docker:
- image: gudhi/ci_for_gudhi:latest
- image: gudhi/ci_for_gudhi:2024.06.01
steps:
- checkout
- run:
Expand Down Expand Up @@ -118,7 +118,7 @@ jobs:

doxygen:
docker:
- image: gudhi/doxygen_for_gudhi:latest
- image: gudhi/doxygen_for_gudhi:2024.06.01
steps:
- checkout
- run:
Expand Down Expand Up @@ -148,7 +148,7 @@ jobs:

bibliography:
docker:
- image: gudhi/doxygen_for_gudhi:latest
- image: gudhi/doxygen_for_gudhi:2024.06.01
steps:
- checkout
- run:
Expand All @@ -172,7 +172,7 @@ jobs:
examples_without_cgal_eigen:
docker:
# cf. https://github.com/GUDHI/gudhi-deploy/blob/main/Dockerfile_for_circleci_image_without_cgal
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand All @@ -191,7 +191,7 @@ jobs:
tests_without_cgal_eigen:
docker:
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand All @@ -210,7 +210,7 @@ jobs:
utils_without_cgal_eigen:
docker:
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand All @@ -229,7 +229,7 @@ jobs:
python_without_cgal_eigen:
docker:
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand All @@ -252,7 +252,7 @@ jobs:

examples_without_cgal:
docker:
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand All @@ -271,7 +271,7 @@ jobs:
tests_without_cgal:
docker:
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand All @@ -290,7 +290,7 @@ jobs:
utils_without_cgal:
docker:
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand All @@ -309,7 +309,7 @@ jobs:
python_without_cgal:
docker:
- image: gudhi/ci_for_gudhi_wo_cgal:latest
- image: gudhi/ci_for_gudhi_wo_cgal:2024.06.01
steps:
- checkout
- run:
Expand Down
1 change: 0 additions & 1 deletion .github/code_conventions.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
* Example files should be called `example_[what_it_is].cpp`. E.g. `example_sparsify_point_set.cpp`

### In CMakeLists.txt files:
* The name of the "project" should be in this form: `Package_[tests|examples|…]`. E.g. `project(Simplex_tree_examples)`.
* The name if each "target" (first parameter of add_executable) should be in this form: `Package_{name of the cpp file without extension}`. E.g `add_executable(Subsampling_test_sparsify_point_set test_sparsify_point_set.cpp)`.

### Code style
Expand Down
4 changes: 4 additions & 0 deletions .github/next_release.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ Below is a list of changes made since GUDHI 3.9.0:
- [Rips complex](https://gudhi.inria.fr/python/latest/rips_complex_sklearn_itf_ref.html)
- Rips complex persistence scikit-learn like interface

- Installation
- CGAL ≥ 5.1.0 is now required (was ≥ 4.11.0).
- Eigen3 ≥ 3.3.0 is now required (was ≥ 3.1.0).

- [Module](link)
- **...**

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pip-build-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
name: build pip wheel
runs-on: ubuntu-latest
# cf. https://github.com/GUDHI/gudhi-deploy/blob/main/Dockerfile_for_pip
container: gudhi/pip_for_gudhi:2023.12.01
container: gudhi/pip_for_gudhi:2024.06.01
steps:
# Should use actions/checkout@v4, but requires node20, not available for quay.io/pypa/manylinux2014_x86_64
- uses: actions/checkout@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pip-packaging-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
name: build pip wheel
runs-on: ubuntu-latest
# cf. https://github.com/GUDHI/gudhi-deploy/blob/main/Dockerfile_for_pip
container: gudhi/pip_for_gudhi:2023.12.01
container: gudhi/pip_for_gudhi:2024.06.01
steps:
# Should use actions/checkout@v4, but requires node20, not available for quay.io/pypa/manylinux2014_x86_64
- uses: actions/checkout@v3
Expand Down
2 changes: 2 additions & 0 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ jobs:
python -m pip install --user -r ext/gudhi-deploy/build-requirements.txt
# No PyKeOps on windows, let's workaround this one.
for /F "tokens=*" %%A in (ext\gudhi-deploy\test-requirements.txt) do python -m pip install %%A
# Only vcpkg release libs for CI
echo.set(VCPKG_BUILD_TYPE release)>> C:\vcpkg\triplets\x64-windows.cmake
vcpkg install boost-filesystem:x64-windows boost-test:x64-windows boost-program-options:x64-windows tbb:x64-windows eigen3:x64-windows cgal:x64-windows
choco install -y ninja --force --force-dependencies
displayName: 'Install build dependencies'
Expand Down
10 changes: 1 addition & 9 deletions src/Alpha_complex/benchmark/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,9 +1 @@
project(Alpha_complex_benchmark)

if (NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.11.0)
add_executable(Alpha_complex_3d_benchmark Alpha_complex_3d_benchmark.cpp)
target_link_libraries(Alpha_complex_3d_benchmark ${CGAL_LIBRARY})
if(TARGET TBB::tbb)
target_link_libraries(Alpha_complex_3d_benchmark TBB::tbb)
endif()
endif ()
add_executable_with_targets(Alpha_complex_3d_benchmark Alpha_complex_3d_benchmark.cpp CGAL::CGAL Eigen3::Eigen TBB::tbb)
1 change: 0 additions & 1 deletion src/Alpha_complex/doc/Intro_alpha_complex.h
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,6 @@ Table of Contents
* In the following example, the value is given by the user as argument of the program.
*
* \section weightedversion Weighted specific version
* <b>Requires:</b> \ref eigen &ge; 3.1.0 and \ref cgal &ge; 5.1.0.
*
* A weighted version for Alpha complex is available (cf. Alpha_complex). It is like a usual Alpha complex, but based
* on a <a href="https://doc.cgal.org/latest/Triangulation/index.html#TriangulationSecRT">CGAL regular triangulation</a> instead
Expand Down
49 changes: 12 additions & 37 deletions src/Alpha_complex/example/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,18 +1,9 @@
project(Alpha_complex_examples)

if (NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.11.0)
add_executable ( Alpha_complex_example_from_points Alpha_complex_from_points.cpp )
target_link_libraries(Alpha_complex_example_from_points ${CGAL_LIBRARY})
add_executable ( Alpha_complex_example_from_off Alpha_complex_from_off.cpp )
target_link_libraries(Alpha_complex_example_from_off ${CGAL_LIBRARY})
add_executable ( Alpha_complex_example_fast_from_off Fast_alpha_complex_from_off.cpp )
target_link_libraries(Alpha_complex_example_fast_from_off ${CGAL_LIBRARY})
if(TARGET TBB::tbb)
target_link_libraries(Alpha_complex_example_from_points TBB::tbb)
target_link_libraries(Alpha_complex_example_from_off TBB::tbb)
target_link_libraries(Alpha_complex_example_fast_from_off TBB::tbb)
endif()
add_executable_with_targets(Alpha_complex_example_from_points Alpha_complex_from_points.cpp CGAL::CGAL Eigen3::Eigen TBB::tbb)
add_executable_with_targets(Alpha_complex_example_from_off Alpha_complex_from_off.cpp CGAL::CGAL Eigen3::Eigen TBB::tbb)
add_executable_with_targets(Alpha_complex_example_fast_from_off Fast_alpha_complex_from_off.cpp CGAL::CGAL Eigen3::Eigen TBB::tbb)
add_executable_with_targets(Weighted_alpha_complex_example_from_points Weighted_alpha_complex_from_points.cpp CGAL::CGAL Eigen3::Eigen TBB::tbb)

if (TARGET CGAL::CGAL AND TARGET Eigen3::Eigen)
add_test(NAME Alpha_complex_example_from_points COMMAND $<TARGET_FILE:Alpha_complex_example_from_points>)

add_test(NAME Alpha_complex_example_from_off_60 COMMAND $<TARGET_FILE:Alpha_complex_example_from_off>
Expand Down Expand Up @@ -44,32 +35,16 @@ if (NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.11.0)
${CMAKE_CURRENT_BINARY_DIR}/fastalphaoffreader_result_32.txt ${CMAKE_CURRENT_BINARY_DIR}/alphaoffreader_for_doc_32.txt)
set_tests_properties(Alpha_complex_example_fast_from_off_32_diff_files PROPERTIES DEPENDS Alpha_complex_example_fast_from_off_32)
endif()
endif(NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.11.0)
add_test(NAME Weighted_alpha_complex_example_from_points COMMAND $<TARGET_FILE:Weighted_alpha_complex_example_from_points>)
endif()

if (NOT CGAL_VERSION VERSION_LESS 4.11.0)
add_executable ( Alpha_complex_example_weighted_3d_from_points Weighted_alpha_complex_3d_from_points.cpp )
target_link_libraries(Alpha_complex_example_weighted_3d_from_points ${CGAL_LIBRARY})
if(TARGET TBB::tbb)
target_link_libraries(Alpha_complex_example_weighted_3d_from_points TBB::tbb)
endif()
add_executable_with_targets(Alpha_complex_example_weighted_3d_from_points Weighted_alpha_complex_3d_from_points.cpp CGAL::CGAL TBB::tbb)
add_executable_with_targets(Alpha_complex_example_3d_from_points Alpha_complex_3d_from_points.cpp CGAL::CGAL TBB::tbb)

if (TARGET CGAL::CGAL)
add_test(NAME Alpha_complex_example_weighted_3d_from_points
COMMAND $<TARGET_FILE:Alpha_complex_example_weighted_3d_from_points>)

add_executable ( Alpha_complex_example_3d_from_points Alpha_complex_3d_from_points.cpp )
target_link_libraries(Alpha_complex_example_3d_from_points ${CGAL_LIBRARY})
if(TARGET TBB::tbb)
target_link_libraries(Alpha_complex_example_3d_from_points TBB::tbb)
endif()
add_test(NAME Alpha_complex_example_3d_from_points
COMMAND $<TARGET_FILE:Alpha_complex_example_3d_from_points>)

endif(NOT CGAL_VERSION VERSION_LESS 4.11.0)

if (NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 5.1.0)
add_executable ( Weighted_alpha_complex_example_from_points Weighted_alpha_complex_from_points.cpp )
target_link_libraries(Weighted_alpha_complex_example_from_points ${CGAL_LIBRARY})
if(TARGET TBB::tbb)
target_link_libraries(Weighted_alpha_complex_example_from_points TBB::tbb)
endif()
add_test(NAME Weighted_alpha_complex_example_from_points COMMAND $<TARGET_FILE:Weighted_alpha_complex_example_from_points>)
endif(NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 5.1.0)
endif()
5 changes: 2 additions & 3 deletions src/Alpha_complex/include/gudhi/Alpha_complex.h
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,6 @@ template<typename D> struct Is_Epeck_D<CGAL::Epeck_d<D>> { static const bool val
* [10^12,10^12+10^6]. Using `CGAL::Epick_d` makes the computations slightly faster, and the combinatorics are still
* exact, but the computation of filtration values can exceptionally be arbitrarily bad. In all cases, we still
* guarantee that the output is a valid filtration (faces have a filtration value no larger than their cofaces).
* - For performances reasons, it is advised to use `Alpha_complex` with \ref cgal &ge; 5.0.0.
*/
template<class Kernel = CGAL::Epeck_d<CGAL::Dynamic_dimension_tag>, bool Weighted = false>
class Alpha_complex {
Expand Down Expand Up @@ -256,8 +255,8 @@ class Alpha_complex {
#endif

#if CGAL_VERSION_NR < 1050101000
// Make compilation fail if weighted and CGAL < 5.1
static_assert(!Weighted, "Weighted Alpha_complex is only available for CGAL >= 5.1");
// Make compilation fail if weighted and CGAL < 5.1.0
static_assert(!Weighted, "Weighted Alpha_complex is only available for CGAL >= 5.1.0");
#endif

auto first = std::begin(points);
Expand Down
Loading

0 comments on commit 8d77ab7

Please sign in to comment.