Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
c9a968b
feat: support [email protected] headers
sbstndb Apr 15, 2025
f9e75ee
feat: adapt to xtensor026 folders
sbstndb Apr 15, 2025
f4f6b28
fix: macro for backward compatibility
sbstndb Apr 15, 2025
be3a79a
fix: adapt to new xtensor folders
sbstndb Apr 15, 2025
ea77a7b
fix: adapt to new xtensor folders
sbstndb Apr 15, 2025
923a212
fix: adapt to new xtensor folders
sbstndb Apr 15, 2025
8b94ce4
fix: adapt to new xtensor folders
sbstndb Apr 15, 2025
abf859e
fix: adapt to new xtensor folders
sbstndb Apr 15, 2025
72a564d
fix: disable xtensor for highfive
sbstndb Apr 15, 2025
1fdef76
fix: add xtensor namespace
sbstndb Apr 15, 2025
7a95a0d
fix: modification for [email protected]
sbstndb Apr 15, 2025
d0ed4e2
fix: use macro to ensure backward xtensor compat
sbstndb Apr 15, 2025
497551a
fix: ensure xtensor compatibility
sbstndb Apr 15, 2025
ec46dd8
fix: ensure xtensor compat
sbstndb Apr 15, 2025
649c3dd
fix: do not change old xtensor behavior
sbstndb Apr 15, 2025
e320080
fix: ensure xtensor compat
sbstndb Apr 15, 2025
a9a572b
fix: ensure xtensor compat
sbstndb Apr 15, 2025
9b72928
ficx: preserve the same code as before
sbstndb Apr 15, 2025
22af9da
fix: typo
sbstndb Apr 15, 2025
7f689ea
fix: typo
sbstndb Apr 15, 2025
1c95ced
fix: fix CI MPI
sbstndb Apr 15, 2025
a76b316
fix: try find MPI CI
sbstndb Apr 15, 2025
a18626f
fix: ensure compatility
sbstndb Apr 15, 2025
6bd7dd9
fix: is XTENSOR_MINOR_VERSIOn WORK ????????
sbstndb Apr 15, 2025
5affe0b
fix: delete line
sbstndb Apr 15, 2025
5f16fd2
fix: try to resolve the macro issue
sbstndb Apr 15, 2025
b6f32f9
fix: remove path
sbstndb Apr 15, 2025
d5ae8d0
fix: now the macro works !!!
sbstndb Apr 15, 2025
e685a82
fix: try to solve issue
sbstndb Apr 15, 2025
4511127
fix: add print to delete
sbstndb Apr 15, 2025
4b9a99c
fix: try 1
sbstndb Apr 15, 2025
8da25a9
fix: try 2
sbstndb Apr 15, 2025
3aceda5
fix: try to resolve cppcheck issue
sbstndb Apr 16, 2025
8f88b4b
fix: add xtensor compat
sbstndb Apr 16, 2025
70b90bb
fix: add xtensor compat
sbstndb Apr 16, 2025
bf7279a
fix: typo
sbstndb Apr 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,9 @@ endif()

# Force HIGHFIVE_USE_INSTALL_DEPS option to be true
option(HIGHFIVE_USE_INSTALL_DEPS "End applications by default use detected dependencies here" OFF)
option(H5_USE_XTENSOR OFF)
option(HIGHFIVE_USE_XTENSOR OFF)


foreach(DEPENDENCY ${DEPENDENCIES_CONFIGURED})
find_package(${DEPENDENCY} CONFIG REQUIRED)
Expand All @@ -129,12 +132,29 @@ if(SAMURAI_FIELD_CONTAINER MATCHES xtensor)
message(STATUS "Using xtensor as field container")
list(APPEND DEPENDENCIES_CONFIGURED xtensor)
find_package(xtensor CONFIG REQUIRED)

# if(DEFINED xtensor_VERSION_MINOR)
message(STATUS "xtensor version detected by find_package: ${xtensor_VERSION}")
message(STATUS "xtensor minor version: ${xtensor_VERSION_MINOR}")

# Add the definitions to the samurai target
target_compile_definitions(samurai INTERFACE
XTENSOR_VERSION_MAJOR=${xtensor_VERSION_MAJOR}
XTENSOR_VERSION_MINOR=${xtensor_VERSION_MINOR}
XTENSOR_VERSION_PATCH=${xtensor_VERSION_PATCH}
)

# endif()

target_link_system_libraries(
samurai
INTERFACE
xtensor
)

endif()


if(SAMURAI_FIELD_CONTAINER MATCHES eigen3)
message(STATUS "Using Eigen3 as field container")
endif()
Expand Down
6 changes: 4 additions & 2 deletions benchmark/benchmark_search.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@
#include <benchmark/benchmark.h>
#include <experimental/random>

#include <xtensor/xfixed.hpp>
#include <xtensor/xrandom.hpp>
// #include <xtensor/xfixed.hpp>
// #include <xtensor/xrandom.hpp>
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/generators/xrandom.hpp>

#include <samurai/algorithm.hpp>
#include <samurai/cell_array.hpp>
Expand Down
5 changes: 5 additions & 0 deletions demos/FiniteVolume/advection_1d.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
// Copyright 2018-2025 the samurai's authors
// SPDX-License-Identifier: BSD-3-Clause

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#endif

#include <samurai/algorithm.hpp>
#include <samurai/bc.hpp>
Expand Down
4 changes: 4 additions & 0 deletions demos/FiniteVolume/advection_2d.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,11 @@

#include <array>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#endif

#include <samurai/algorithm.hpp>
#include <samurai/bc.hpp>
Expand Down
4 changes: 4 additions & 0 deletions demos/FiniteVolume/advection_2d_user_bc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,11 @@
// SPDX-License-Identifier: BSD-3-Clause
#include <array>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#endif

// -----------------------------

Expand Down
4 changes: 4 additions & 0 deletions demos/tutorial/AMR_1D_Burgers/step_5/make_graduation.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,11 @@

#include <array>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xmasked_view.hpp>
#else
#include <xtensor/views/xmasked_view.hpp>
#endif

#include <samurai/algorithm.hpp>
#include <samurai/cell_flag.hpp>
Expand Down
7 changes: 7 additions & 0 deletions demos/tutorial/graduation_case_1.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,17 @@

#include <filesystem>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#include <xtensor/xmasked_view.hpp>
#include <xtensor/xrandom.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xfixed/hpp>
#include <xtensor/generators/xrandom.hpp>
#include <xtensor/views/xmasked_view.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include <samurai/box.hpp>
#include <samurai/cell_array.hpp>
Expand Down
7 changes: 7 additions & 0 deletions demos/tutorial/graduation_case_2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,17 @@

#include <filesystem>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#include <xtensor/xmasked_view.hpp>
#include <xtensor/xrandom.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/generators/xrandom.hpp>
#include <xtensor/views/xmasked_view.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include <samurai/box.hpp>
#include <samurai/cell_array.hpp>
Expand Down
4 changes: 4 additions & 0 deletions demos/tutorial/graduation_case_3.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,11 @@

#include <filesystem>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xmasked_view.hpp>
#else
#include <xtensor/views/xmasked_view.hpp>
#endif

#include <samurai/box.hpp>
#include <samurai/cell_array.hpp>
Expand Down
7 changes: 5 additions & 2 deletions include/samurai/algorithm.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,13 @@
#include <omp.h>
#endif
#include <type_traits>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#include <xtensor/xview.hpp>

#else
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/views/xview.hpp>
#endif
#include "cell.hpp"
#include "mesh_holder.hpp"

Expand Down
5 changes: 5 additions & 0 deletions include/samurai/algorithm/graduation.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,13 @@

#pragma once

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xmasked_view.hpp>
#include <xtensor/xtensor.hpp>
#else
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xmasked_view.hpp>
#endif

#include "../array_of_interval_and_point.hpp"
#include "../cell_flag.hpp"
Expand Down
8 changes: 8 additions & 0 deletions include/samurai/algorithm/update.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,11 @@

#include <algorithm>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#endif

#include "../algorithm.hpp"
#include "../bc.hpp"
Expand All @@ -21,7 +25,11 @@ using namespace xt::placeholders;

#ifdef SAMURAI_WITH_MPI
#include <boost/mpi.hpp>
#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xmasked_view.hpp>
#else
#include <xtensor/views/xmasked_view.hpp>
#endif
namespace mpi = boost::mpi;
#endif

Expand Down
5 changes: 5 additions & 0 deletions include/samurai/box.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,13 @@

#pragma once

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#include <xtensor/xio.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/io/xio.hpp>
#endif

namespace samurai
{
Expand Down
7 changes: 6 additions & 1 deletion include/samurai/cell.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,15 @@

#include <array>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#include <xtensor/xio.hpp>
#include <xtensor/xview.hpp>

#else
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/io/xio.hpp>
#include <xtensor/views/xview.hpp>
#endif
namespace samurai
{
template <typename LevelType, std::enable_if_t<std::is_integral<LevelType>::value, bool> = true>
Expand Down
5 changes: 5 additions & 0 deletions include/samurai/field.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,13 @@ namespace fs = std::filesystem;

#include <fmt/format.h>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include "algorithm.hpp"
#include "bc.hpp"
Expand Down
10 changes: 9 additions & 1 deletion include/samurai/field_expression.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,13 @@

#include <xtl/xtype_traits.hpp>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xexpression.hpp>
#include <xtensor/xmath.hpp>

#else
#include <xtensor/core/xexpression.hpp>
#include <xtensor/core/xmath.hpp>
#endif
#include "cell.hpp"
#include "interval.hpp"
#include "samurai_config.hpp"
Expand All @@ -26,7 +30,11 @@ namespace samurai
};

template <class... E>
#if XTENSOR_VERSION_MINOR < 26
struct field_comparable : xtl::conjunction<is_field_expression<E>...>
#else
struct field_comparable : std::conjunction<is_field_expression<E>...>
#endif
{
};

Expand Down
4 changes: 4 additions & 0 deletions include/samurai/io/cgal.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,11 @@
#include <CGAL/box_intersection_d.h>
#include <CGAL/optimal_bounding_box.h>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#endif

#include "../box.hpp"
#include "../cell_array.hpp"
Expand Down
7 changes: 7 additions & 0 deletions include/samurai/io/hdf5.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,16 @@ namespace fs = std::filesystem;
#include <highfive/H5Easy.hpp>
#include <highfive/H5PropertyList.hpp>
#include <pugixml.hpp>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xadapt.hpp>
#include <xtensor/xarray.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xadapt.hpp>
#include <xtensor/containers/xarray.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include <fmt/core.h>

Expand Down
5 changes: 5 additions & 0 deletions include/samurai/level_cell_list.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,13 @@
#include <map>
#include <type_traits>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include "cell.hpp"
#include "list_of_intervals.hpp"
Expand Down
6 changes: 6 additions & 0 deletions include/samurai/mesh_interval.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
#pragma once

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/views/xview.hpp>
#endif

using namespace xt::placeholders;

Expand Down
5 changes: 5 additions & 0 deletions include/samurai/mr/mesh.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,13 @@

#include <fmt/format.h>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include "../box.hpp"
#include "../mesh.hpp"
Expand Down
4 changes: 4 additions & 0 deletions include/samurai/mr/mesh_with_overleaves.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,11 @@

#include <fmt/format.h>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xtensor.hpp>
#else
#include <xtensor/containers/xtensor.hpp>
#endif

#include "../box.hpp"
#include "../mesh.hpp"
Expand Down
6 changes: 6 additions & 0 deletions include/samurai/mr/operators.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,15 @@

#pragma once

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xmasked_view.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xmasked_view.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include "../cell_flag.hpp"
#include "../field.hpp"
Expand Down
5 changes: 5 additions & 0 deletions include/samurai/numeric/prediction.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,13 @@
#include <array>
#include <type_traits>

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xadapt.hpp>
#include <xtensor/xview.hpp>
#else
#include <xtensor/containers/xadapt.hpp>
#include <xtensor/views/xview.hpp>
#endif

#include "../operators_base.hpp"
#include "../storage/utils.hpp"
Expand Down
4 changes: 4 additions & 0 deletions include/samurai/operators_base.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,11 @@

#pragma once

#if XTENSOR_VERSION_MINOR < 26
#include <xtensor/xfixed.hpp>
#else
#include <xtensor/containers/xfixed.hpp>
#endif

#include "field_expression.hpp"
#include "utils.hpp"
Expand Down
Loading
Loading