From a8e821cff01dd39434b7e32495dbbe4b4544e013 Mon Sep 17 00:00:00 2001 From: Pietro Incardona <incardon@mpi-cbg.de> Date: Sun, 17 Dec 2017 12:29:09 +0100 Subject: [PATCH] Eliminating scalar data_type --- src/FiniteDifference/FDScheme.hpp | 3 +-- src/FiniteDifference/FDScheme_unit_tests.hpp | 8 ++++---- src/FiniteDifference/eq.hpp | 1 - src/FiniteDifference/eq_unit_test.hpp | 1 - src/FiniteDifference/eq_unit_test_3d.hpp | 1 - src/FiniteDifference/mul.hpp | 6 +++--- src/Vector/Vector_eigen.hpp | 10 ++++++++++ src/Vector/Vector_petsc.hpp | 10 ++++++++++ src/util/grid_dist_testing.hpp | 3 +-- src/util/util_num.hpp | 2 +- src/util/util_num_unit_tests.hpp | 2 +- 11 files changed, 31 insertions(+), 16 deletions(-) diff --git a/src/FiniteDifference/FDScheme.hpp b/src/FiniteDifference/FDScheme.hpp index 9f50ef2..7571826 100644 --- a/src/FiniteDifference/FDScheme.hpp +++ b/src/FiniteDifference/FDScheme.hpp @@ -12,7 +12,6 @@ #include "Grid/grid_dist_id.hpp" #include "Grid/Iterators/grid_dist_id_iterator_sub.hpp" #include "eq.hpp" -#include "data_type/scalar.hpp" #include "NN/CellList/CellDecomposer.hpp" #include "Grid/staggered_dist_grid_util.hpp" #include "Grid/grid_dist_id.hpp" @@ -127,7 +126,7 @@ class FDScheme public: //! Distributed grid map - typedef grid_dist_id<Sys_eqs::dims,typename Sys_eqs::stype,scalar<size_t>,typename Sys_eqs::b_grid::decomposition::extended_type> g_map_type; + typedef grid_dist_id<Sys_eqs::dims,typename Sys_eqs::stype,aggregate<size_t>,typename Sys_eqs::b_grid::decomposition::extended_type> g_map_type; //! Type that specify the properties of the system of equations typedef Sys_eqs Sys_eqs_typ; diff --git a/src/FiniteDifference/FDScheme_unit_tests.hpp b/src/FiniteDifference/FDScheme_unit_tests.hpp index 83dd6f9..43cc916 100644 --- a/src/FiniteDifference/FDScheme_unit_tests.hpp +++ b/src/FiniteDifference/FDScheme_unit_tests.hpp @@ -37,7 +37,7 @@ struct sys_nn typedef float stype; //! Base grid - typedef grid_dist_id<dims,stype,scalar<float>,CartDecomposition<2,stype> > b_grid; + typedef grid_dist_id<dims,stype,aggregate<float>,CartDecomposition<2,stype> > b_grid; //! specify that we are on testing typedef void testing; @@ -60,7 +60,7 @@ struct sys_pp typedef float stype; //! Base grid - typedef grid_dist_id<dims,stype,scalar<float>,CartDecomposition<2,stype> > b_grid; + typedef grid_dist_id<dims,stype,aggregate<float>,CartDecomposition<2,stype> > b_grid; //! Indicate we are on testing typedef void testing; @@ -89,7 +89,7 @@ struct syss_nn typedef float stype; //! Base grid - typedef grid_dist_id<dims,stype,scalar<float>,CartDecomposition<2,stype> > b_grid; + typedef grid_dist_id<dims,stype,aggregate<float>,CartDecomposition<2,stype> > b_grid; //! Indicate we are on testing typedef void testing; @@ -115,7 +115,7 @@ struct syss_pp typedef float stype; //! Base grid - typedef grid_dist_id<dims,stype,scalar<float>,CartDecomposition<2,stype> > b_grid; + typedef grid_dist_id<dims,stype,aggregate<float>,CartDecomposition<2,stype> > b_grid; //! Indicate we are on testing typedef void testing; diff --git a/src/FiniteDifference/eq.hpp b/src/FiniteDifference/eq.hpp index 183437e..e141751 100644 --- a/src/FiniteDifference/eq.hpp +++ b/src/FiniteDifference/eq.hpp @@ -14,7 +14,6 @@ //#define PERIODIC true //#define NON_PERIODIC false -#include "data_type/scalar.hpp" #include "util/util_num.hpp" /*! \brief Equation diff --git a/src/FiniteDifference/eq_unit_test.hpp b/src/FiniteDifference/eq_unit_test.hpp index 97af130..099c3da 100644 --- a/src/FiniteDifference/eq_unit_test.hpp +++ b/src/FiniteDifference/eq_unit_test.hpp @@ -13,7 +13,6 @@ #include "FiniteDifference/sum.hpp" #include "FiniteDifference/mul.hpp" #include "Grid/grid_dist_id.hpp" -#include "data_type/scalar.hpp" #include "Decomposition/CartDecomposition.hpp" #include "Vector/Vector.hpp" #include "Solvers/umfpack_solver.hpp" diff --git a/src/FiniteDifference/eq_unit_test_3d.hpp b/src/FiniteDifference/eq_unit_test_3d.hpp index 368483b..26f6ad2 100644 --- a/src/FiniteDifference/eq_unit_test_3d.hpp +++ b/src/FiniteDifference/eq_unit_test_3d.hpp @@ -14,7 +14,6 @@ #include "FiniteDifference/sum.hpp" #include "FiniteDifference/mul.hpp" #include "Grid/grid_dist_id.hpp" -#include "data_type/scalar.hpp" #include "Decomposition/CartDecomposition.hpp" #include "Vector/Vector.hpp" #include "Solvers/umfpack_solver.hpp" diff --git a/src/FiniteDifference/mul.hpp b/src/FiniteDifference/mul.hpp index 84d481b..84e57f6 100644 --- a/src/FiniteDifference/mul.hpp +++ b/src/FiniteDifference/mul.hpp @@ -55,7 +55,7 @@ struct const_mul_functor_value const grid_sm<last::dims,void> & gs; //! grid mapping - const grid_dist_id<last::dims,typename last::stype,scalar<size_t>,typename last::b_grid::decomposition::extended_type> & g_map; + const grid_dist_id<last::dims,typename last::stype,aggregate<size_t>,typename last::b_grid::decomposition::extended_type> & g_map; //! grid position grid_dist_key_dx<last::dims> & kmap; @@ -76,7 +76,7 @@ struct const_mul_functor_value * \param coeff multiplication coefficent * */ - const_mul_functor_value(const grid_dist_id<last::dims,typename last::stype,scalar<size_t>,typename last::b_grid::decomposition::extended_type> & g_map, + const_mul_functor_value(const grid_dist_id<last::dims,typename last::stype,aggregate<size_t>,typename last::b_grid::decomposition::extended_type> & g_map, grid_dist_key_dx<last::dims> & kmap, const grid_sm<last::dims,void> & gs, typename last::stype (& spacing)[last::dims], @@ -137,7 +137,7 @@ struct mul * \param coeff coefficent (constant in front of the derivative) * */ - inline static void value(const grid_dist_id<Sys_eqs::dims,typename Sys_eqs::stype,scalar<size_t>,typename Sys_eqs::b_grid::decomposition::extended_type> & g_map, + inline static void value(const grid_dist_id<Sys_eqs::dims,typename Sys_eqs::stype,aggregate<size_t>,typename Sys_eqs::b_grid::decomposition::extended_type> & g_map, grid_dist_key_dx<Sys_eqs::dims> & kmap, const grid_sm<Sys_eqs::dims,void> & gs, typename Sys_eqs::stype (& spacing )[Sys_eqs::dims], diff --git a/src/Vector/Vector_eigen.hpp b/src/Vector/Vector_eigen.hpp index 243ef5c..55751fc 100644 --- a/src/Vector/Vector_eigen.hpp +++ b/src/Vector/Vector_eigen.hpp @@ -75,6 +75,16 @@ public: row() = i; value() = val; } + + /*! \brief Indicate that the structure has no pointer + * + * \return true + * + */ + static inline bool noPointers() + { + return true; + } }; template<typename T> diff --git a/src/Vector/Vector_petsc.hpp b/src/Vector/Vector_petsc.hpp index 5e2c829..68735ae 100644 --- a/src/Vector/Vector_petsc.hpp +++ b/src/Vector/Vector_petsc.hpp @@ -78,6 +78,16 @@ public: rw() = i; val() = val; } + + /*! \brief Indicate that the structure has no pointer + * + * \return true + * + */ + static inline bool noPointers() + { + return true; + } }; constexpr unsigned int row_id = 0; diff --git a/src/util/grid_dist_testing.hpp b/src/util/grid_dist_testing.hpp index 13db514..cba4505 100644 --- a/src/util/grid_dist_testing.hpp +++ b/src/util/grid_dist_testing.hpp @@ -8,13 +8,12 @@ #ifndef OPENFPM_NUMERICS_SRC_UTIL_GRID_DIST_TESTING_HPP_ #define OPENFPM_NUMERICS_SRC_UTIL_GRID_DIST_TESTING_HPP_ -#include "data_type/scalar.hpp" #include "Grid/grid_dist_key.hpp" template<unsigned int dim> class grid_dist_testing { - grid_cpu<dim,scalar<size_t>> grid_test; + grid_cpu<dim,aggregate<size_t>> grid_test; public: diff --git a/src/util/util_num.hpp b/src/util/util_num.hpp index 2e3bbec..783f380 100644 --- a/src/util/util_num.hpp +++ b/src/util/util_num.hpp @@ -91,7 +91,7 @@ template<typename T, unsigned int dims, typename stype, typename decomposition> struct stub_or_real<T,dims,stype,decomposition,false> { //! switch type if we are on testing or not - typedef grid_dist_id<dims,stype,scalar<size_t>,decomposition> type; + typedef grid_dist_id<dims,stype,aggregate<size_t>,decomposition> type; }; #endif /* OPENFPM_NUMERICS_SRC_UTIL_UTIL_NUM_HPP_ */ diff --git a/src/util/util_num_unit_tests.hpp b/src/util/util_num_unit_tests.hpp index 27a305a..986cc5e 100644 --- a/src/util/util_num_unit_tests.hpp +++ b/src/util/util_num_unit_tests.hpp @@ -97,7 +97,7 @@ BOOST_AUTO_TEST_CASE( util_num ) ret = std::is_same<stub_or_real<on_test,2,float,CartDecomposition<2,float>>::type, grid_dist_testing<2>>::value ; BOOST_REQUIRE_EQUAL(ret,true); - ret = std::is_same<stub_or_real<not_on_test,2,float,CartDecomposition<2,float>>::type, grid_dist_id<2,float,scalar<size_t>,CartDecomposition<2,float>> >::value; + ret = std::is_same<stub_or_real<not_on_test,2,float,CartDecomposition<2,float>>::type, grid_dist_id<2,float,aggregate<size_t>,CartDecomposition<2,float>> >::value; BOOST_REQUIRE_EQUAL(ret,true); //! [Usage of stub_or_real] -- GitLab