From 57f2b7ea74d2d3fd68667b653c9a6a10d946582e Mon Sep 17 00:00:00 2001
From: Cristian C Lalescu <Cristian.Lalescu@ds.mpg.de>
Date: Sun, 10 May 2020 12:12:26 +0200
Subject: [PATCH] moves more particle files to own subfolder

also add easier control of template double for if.
this way i can compile faster if i need to
---
 CMakeLists.txt                                | 22 +++++++++----------
 cpp/full_code/NSVE_Stokes_particles.cpp       |  6 ++---
 cpp/full_code/NSVEcomplex_particles.cpp       |  6 ++---
 .../{ => inner}/particles_inner_computer.cpp  |  4 ++--
 .../{ => inner}/particles_inner_computer.hpp  |  0
 .../particles_inner_computer_2nd_order.hpp    |  0
 .../particles_inner_computer_empty.hpp        |  0
 cpp/particles/{ => p2p}/p2p_computer.hpp      |  0
 .../{ => p2p}/p2p_computer_empty.hpp          |  0
 .../{ => p2p}/p2p_cylinder_collisions.hpp     |  0
 cpp/particles/{ => p2p}/p2p_distr_mpi.hpp     |  6 ++---
 .../{ => p2p}/p2p_ghost_collision_base.hpp    |  0
 .../{ => p2p}/p2p_ghost_collisions.hpp        |  2 +-
 .../{ => p2p}/p2p_merge_collisions.hpp        |  0
 cpp/particles/{ => p2p}/p2p_tree.hpp          |  0
 cpp/particles/particles_system.hpp            |  2 +-
 cpp/particles/particles_system_builder.hpp    | 15 +++++++------
 17 files changed, 32 insertions(+), 31 deletions(-)
 rename cpp/particles/{ => inner}/particles_inner_computer.cpp (99%)
 rename cpp/particles/{ => inner}/particles_inner_computer.hpp (100%)
 rename cpp/particles/{ => inner}/particles_inner_computer_2nd_order.hpp (100%)
 rename cpp/particles/{ => inner}/particles_inner_computer_empty.hpp (100%)
 rename cpp/particles/{ => p2p}/p2p_computer.hpp (100%)
 rename cpp/particles/{ => p2p}/p2p_computer_empty.hpp (100%)
 rename cpp/particles/{ => p2p}/p2p_cylinder_collisions.hpp (100%)
 rename cpp/particles/{ => p2p}/p2p_distr_mpi.hpp (99%)
 rename cpp/particles/{ => p2p}/p2p_ghost_collision_base.hpp (100%)
 rename cpp/particles/{ => p2p}/p2p_ghost_collisions.hpp (98%)
 rename cpp/particles/{ => p2p}/p2p_merge_collisions.hpp (100%)
 rename cpp/particles/{ => p2p}/p2p_tree.hpp (100%)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 006d985a..17f55ec8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -303,7 +303,7 @@ set(cpp_for_lib
     ${PROJECT_SOURCE_DIR}/cpp/full_code/NSVEcomplex_particles.cpp
     ${PROJECT_SOURCE_DIR}/cpp/full_code/NSVE_Stokes_particles.cpp
     ${PROJECT_SOURCE_DIR}/cpp/full_code/NSVEp_extra_sampling.cpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/particles_inner_computer.cpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/inner/particles_inner_computer.cpp
     ${PROJECT_SOURCE_DIR}/cpp/full_code/ornstein_uhlenbeck_process.cpp
     ${PROJECT_SOURCE_DIR}/cpp/full_code/ou_vorticity_equation.cpp)
 
@@ -354,22 +354,22 @@ set(hpp_for_lib
     ${PROJECT_SOURCE_DIR}/cpp/full_code/NSVEcomplex_particles.hpp
     ${PROJECT_SOURCE_DIR}/cpp/full_code/NSVE_Stokes_particles.hpp
     ${PROJECT_SOURCE_DIR}/cpp/full_code/NSVEp_extra_sampling.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/particles_inner_computer.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/particles_inner_computer_2nd_order.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/particles_inner_computer_empty.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/inner/particles_inner_computer.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/inner/particles_inner_computer_2nd_order.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/inner/particles_inner_computer_empty.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/abstract_particles_input.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/abstract_particles_output.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/abstract_particles_system.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/abstract_particles_system_with_p2p.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/alltoall_exchanger.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/lock_free_bool_array.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p_computer_empty.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p_computer.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p_ghost_collision_base.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p_ghost_collisions.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p_cylinder_collisions.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p_distr_mpi.hpp
-    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p_tree.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p/p2p_computer_empty.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p/p2p_computer.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p/p2p_ghost_collision_base.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p/p2p_ghost_collisions.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p/p2p_cylinder_collisions.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p/p2p_distr_mpi.hpp
+    ${PROJECT_SOURCE_DIR}/cpp/particles/p2p/p2p_tree.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/particles_adams_bashforth.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/particles_distr_mpi.hpp
     ${PROJECT_SOURCE_DIR}/cpp/particles/interpolation/particles_field_computer.hpp
diff --git a/cpp/full_code/NSVE_Stokes_particles.cpp b/cpp/full_code/NSVE_Stokes_particles.cpp
index a4b3c41e..a3e4dd38 100644
--- a/cpp/full_code/NSVE_Stokes_particles.cpp
+++ b/cpp/full_code/NSVE_Stokes_particles.cpp
@@ -26,11 +26,11 @@
 
 #include <string>
 #include <cmath>
-#include "NSVE_Stokes_particles.hpp"
+#include "full_code/NSVE_Stokes_particles.hpp"
 #include "scope_timer.hpp"
 #include "particles/particles_sampling.hpp"
-#include "particles/p2p_ghost_collisions.hpp"
-#include "particles/particles_inner_computer_2nd_order.hpp"
+#include "particles/p2p/p2p_ghost_collisions.hpp"
+#include "particles/inner/particles_inner_computer_2nd_order.hpp"
 
 template <typename rnumber>
 int NSVE_Stokes_particles<rnumber>::initialize(void)
diff --git a/cpp/full_code/NSVEcomplex_particles.cpp b/cpp/full_code/NSVEcomplex_particles.cpp
index d7e50092..e82f1054 100644
--- a/cpp/full_code/NSVEcomplex_particles.cpp
+++ b/cpp/full_code/NSVEcomplex_particles.cpp
@@ -26,11 +26,11 @@
 
 #include <string>
 #include <cmath>
-#include "NSVEcomplex_particles.hpp"
+#include "full_code/NSVEcomplex_particles.hpp"
 #include "scope_timer.hpp"
 #include "particles/particles_sampling.hpp"
-#include "particles/p2p_computer.hpp"
-#include "particles/particles_inner_computer.hpp"
+#include "particles/p2p/p2p_computer.hpp"
+#include "particles/inner/particles_inner_computer.hpp"
 
 template <typename rnumber>
 int NSVEcomplex_particles<rnumber>::initialize(void)
diff --git a/cpp/particles/particles_inner_computer.cpp b/cpp/particles/inner/particles_inner_computer.cpp
similarity index 99%
rename from cpp/particles/particles_inner_computer.cpp
rename to cpp/particles/inner/particles_inner_computer.cpp
index d1e346c8..2a8ac8da 100644
--- a/cpp/particles/particles_inner_computer.cpp
+++ b/cpp/particles/inner/particles_inner_computer.cpp
@@ -24,8 +24,8 @@
 
 
 #include "base.hpp"
-#include "particles_utils.hpp"
-#include "particles_inner_computer.hpp"
+#include "particles/particles_utils.hpp"
+#include "particles/inner/particles_inner_computer.hpp"
 
 #include <cmath>
 
diff --git a/cpp/particles/particles_inner_computer.hpp b/cpp/particles/inner/particles_inner_computer.hpp
similarity index 100%
rename from cpp/particles/particles_inner_computer.hpp
rename to cpp/particles/inner/particles_inner_computer.hpp
diff --git a/cpp/particles/particles_inner_computer_2nd_order.hpp b/cpp/particles/inner/particles_inner_computer_2nd_order.hpp
similarity index 100%
rename from cpp/particles/particles_inner_computer_2nd_order.hpp
rename to cpp/particles/inner/particles_inner_computer_2nd_order.hpp
diff --git a/cpp/particles/particles_inner_computer_empty.hpp b/cpp/particles/inner/particles_inner_computer_empty.hpp
similarity index 100%
rename from cpp/particles/particles_inner_computer_empty.hpp
rename to cpp/particles/inner/particles_inner_computer_empty.hpp
diff --git a/cpp/particles/p2p_computer.hpp b/cpp/particles/p2p/p2p_computer.hpp
similarity index 100%
rename from cpp/particles/p2p_computer.hpp
rename to cpp/particles/p2p/p2p_computer.hpp
diff --git a/cpp/particles/p2p_computer_empty.hpp b/cpp/particles/p2p/p2p_computer_empty.hpp
similarity index 100%
rename from cpp/particles/p2p_computer_empty.hpp
rename to cpp/particles/p2p/p2p_computer_empty.hpp
diff --git a/cpp/particles/p2p_cylinder_collisions.hpp b/cpp/particles/p2p/p2p_cylinder_collisions.hpp
similarity index 100%
rename from cpp/particles/p2p_cylinder_collisions.hpp
rename to cpp/particles/p2p/p2p_cylinder_collisions.hpp
diff --git a/cpp/particles/p2p_distr_mpi.hpp b/cpp/particles/p2p/p2p_distr_mpi.hpp
similarity index 99%
rename from cpp/particles/p2p_distr_mpi.hpp
rename to cpp/particles/p2p/p2p_distr_mpi.hpp
index 69995c9e..a525d154 100644
--- a/cpp/particles/p2p_distr_mpi.hpp
+++ b/cpp/particles/p2p/p2p_distr_mpi.hpp
@@ -37,9 +37,9 @@
 #include <algorithm>
 
 #include "scope_timer.hpp"
-#include "particles_utils.hpp"
-#include "p2p_tree.hpp"
-#include "lock_free_bool_array.hpp"
+#include "particles/particles_utils.hpp"
+#include "particles/p2p/p2p_tree.hpp"
+#include "particles/lock_free_bool_array.hpp"
 
 template <class partsize_t, class real_number>
 class p2p_distr_mpi {
diff --git a/cpp/particles/p2p_ghost_collision_base.hpp b/cpp/particles/p2p/p2p_ghost_collision_base.hpp
similarity index 100%
rename from cpp/particles/p2p_ghost_collision_base.hpp
rename to cpp/particles/p2p/p2p_ghost_collision_base.hpp
diff --git a/cpp/particles/p2p_ghost_collisions.hpp b/cpp/particles/p2p/p2p_ghost_collisions.hpp
similarity index 98%
rename from cpp/particles/p2p_ghost_collisions.hpp
rename to cpp/particles/p2p/p2p_ghost_collisions.hpp
index 82662695..dd9dd222 100644
--- a/cpp/particles/p2p_ghost_collisions.hpp
+++ b/cpp/particles/p2p/p2p_ghost_collisions.hpp
@@ -27,7 +27,7 @@
 #include <set>
 #include <utility>
 #include <vector>
-#include "particles/p2p_ghost_collision_base.hpp"
+#include "particles/p2p/p2p_ghost_collision_base.hpp"
 
 
 template <class real_number, class partsize_t>
diff --git a/cpp/particles/p2p_merge_collisions.hpp b/cpp/particles/p2p/p2p_merge_collisions.hpp
similarity index 100%
rename from cpp/particles/p2p_merge_collisions.hpp
rename to cpp/particles/p2p/p2p_merge_collisions.hpp
diff --git a/cpp/particles/p2p_tree.hpp b/cpp/particles/p2p/p2p_tree.hpp
similarity index 100%
rename from cpp/particles/p2p_tree.hpp
rename to cpp/particles/p2p/p2p_tree.hpp
diff --git a/cpp/particles/particles_system.hpp b/cpp/particles/particles_system.hpp
index 8e27fef0..6ed1a890 100644
--- a/cpp/particles/particles_system.hpp
+++ b/cpp/particles/particles_system.hpp
@@ -40,7 +40,7 @@
 #include "particles/particles_adams_bashforth.hpp"
 #include "scope_timer.hpp"
 
-#include "particles/p2p_distr_mpi.hpp"
+#include "particles/p2p/p2p_distr_mpi.hpp"
 
 template <class partsize_t, class real_number, class field_rnumber, class field_class, class interpolator_class, int interp_neighbours,
           int size_particle_positions, int size_particle_rhs, class p2p_computer_class, class particles_inner_computer_class>
diff --git a/cpp/particles/particles_system_builder.hpp b/cpp/particles/particles_system_builder.hpp
index dbf6ace3..2e3b9fa9 100644
--- a/cpp/particles/particles_system_builder.hpp
+++ b/cpp/particles/particles_system_builder.hpp
@@ -33,13 +33,14 @@
 #include "particles/particles_system.hpp"
 #include "particles/particles_input_hdf5.hpp"
 #include "particles/interpolation/particles_generic_interp.hpp"
-#include "particles/p2p_computer_empty.hpp"
-#include "particles/particles_inner_computer_empty.hpp"
+#include "particles/p2p/p2p_computer_empty.hpp"
+#include "particles/inner/particles_inner_computer_empty.hpp"
 
 #include "field.hpp"
 #include "kspace.hpp"
 
-
+const int MAX_INTERPOLATION_NEIGHBOURS=5;
+const int MAX_INTERPOLATION_SMOOTHNESS=2;
 
 //////////////////////////////////////////////////////////////////////////////
 ///
@@ -297,8 +298,8 @@ inline std::unique_ptr<abstract_particles_system<partsize_t, particles_rnumber>>
         MPI_Comm mpi_comm,
         const int in_current_iteration){
     return Template_double_for_if::evaluate<std::unique_ptr<abstract_particles_system<partsize_t, particles_rnumber>>,
-                       int, 1, 11, 1, // interpolation_size
-                       int, 0, 5, 1, // spline_mode
+                       int, 1, MAX_INTERPOLATION_NEIGHBOURS, 1, // interpolation_size
+                       int, 0, MAX_INTERPOLATION_SMOOTHNESS, 1, // spline_mode
                        particles_system_build_container<partsize_t, field_rnumber,be,fc,particles_rnumber,
                                                         p2p_computer_empty<particles_rnumber,partsize_t>,
                                                         particles_inner_computer_empty<particles_rnumber,partsize_t>,
@@ -327,8 +328,8 @@ inline std::unique_ptr<abstract_particles_system_with_p2p<partsize_t, particles_
         particles_inner_computer_class inner_computer,
         const particles_rnumber cutoff){
     return Template_double_for_if::evaluate<std::unique_ptr<abstract_particles_system_with_p2p<partsize_t, particles_rnumber, p2p_computer_class>>,
-                       int, 1, 11, 1, // interpolation_size
-                       int, 0, 5, 1, // spline_mode
+                       int, 1, MAX_INTERPOLATION_NEIGHBOURS, 1, // interpolation_size
+                       int, 0, MAX_INTERPOLATION_SMOOTHNESS, 1, // spline_mode
                        particles_system_build_container<partsize_t, field_rnumber,be,fc,particles_rnumber,
                                                         p2p_computer_class,
                                                         particles_inner_computer_class,
-- 
GitLab