From 5b3fd9bd0e43d99077452e7c48ed150cad795e49 Mon Sep 17 00:00:00 2001
From: Pietro Incardona <incardon@mpi-cbg.de>
Date: Sat, 22 Dec 2018 21:51:29 +0100
Subject: [PATCH] Latest modules

---
 Jenkinsfile_mpi_examples_test                 | 25 +++++++++++++++---
 .../PSE/0_Derivative_approx_1D/main.cpp       |  2 +-
 example/Numerics/PSE/1_Diffusion_1D/main.cpp  |  2 +-
 .../Vortex_in_cell/main_vic_petsc.cpp         |  8 +++---
 .../Vortex_in_cell/main_vic_petsc_opt.cpp     | 26 ++++++++++++++-----
 openfpm_numerics                              |  2 +-
 6 files changed, 47 insertions(+), 18 deletions(-)

diff --git a/Jenkinsfile_mpi_examples_test b/Jenkinsfile_mpi_examples_test
index af3d27888..b282efbaf 100644
--- a/Jenkinsfile_mpi_examples_test
+++ b/Jenkinsfile_mpi_examples_test
@@ -2,22 +2,22 @@
 
 parallel (
 
-"gin" : {node ('gin')
+"cifarm-ubuntu-node" : {node ('cifarm-ubuntu-node')
         {
          deleteDir()
          checkout scm
-         stage ('build_gin')
+         stage ('build ubuntu')
          {
           sh "./build.sh $WORKSPACE $NODE_NAME pdata full  && make install"
          }
 
-         stage ('run_example_gin')
+         stage ('run example ubuntu')
          {
           sh "export PATH=\"/usr/local/binutils/bin/:$PATH\" && source $HOME/openfpm_vars_master && cd example && make"
          }
        }},
 
-"sb15" : {node ('sbalzarini-mac-15')
+"cifarm-mac-node" : {node ('cifarm-mac-node')
          {
           deleteDir()
           checkout scm
@@ -32,6 +32,23 @@ parallel (
            sh "source $HOME/openfpm_vars_master && cd example && make"
 	  }
          }
+         },
+
+"cifarm-centos-node" : {node ('cifarm-centos-node')
+        {
+         deleteDir()
+         checkout scm
+         stage ('build centos')
+         {
+          sh "./build.sh $WORKSPACE $NODE_NAME pdata full  && make install"
          }
+
+         stage ('run example centos')
+         {
+          sh "export PATH=\"/usr/local/binutils/bin/:$PATH\" && source $HOME/openfpm_vars_master && cd example && make"
+         }
+       }},
+
+
 )
 
diff --git a/example/Numerics/PSE/0_Derivative_approx_1D/main.cpp b/example/Numerics/PSE/0_Derivative_approx_1D/main.cpp
index 5471efad4..8d8798e99 100644
--- a/example/Numerics/PSE/0_Derivative_approx_1D/main.cpp
+++ b/example/Numerics/PSE/0_Derivative_approx_1D/main.cpp
@@ -87,7 +87,7 @@ int main(int argc, char* argv[])
 	// and non-periodic boundary conditions
 	//
 	openfpm_init(&argc,&argv);
-	Vcluster & v_cl = create_vcluster();
+	Vcluster<> & v_cl = create_vcluster();
 
     size_t bc[1]={NON_PERIODIC};
 	Ghost<1,double> g(12*eps);
diff --git a/example/Numerics/PSE/1_Diffusion_1D/main.cpp b/example/Numerics/PSE/1_Diffusion_1D/main.cpp
index 32a36ddeb..e518ceaed 100644
--- a/example/Numerics/PSE/1_Diffusion_1D/main.cpp
+++ b/example/Numerics/PSE/1_Diffusion_1D/main.cpp
@@ -210,7 +210,7 @@ int main(int argc, char* argv[])
 	// and non-periodic boundary conditions
 	//
 	openfpm_init(&argc,&argv);
-	Vcluster & v_cl = create_vcluster();
+	Vcluster<> & v_cl = create_vcluster();
 
         size_t bc[1]={NON_PERIODIC};
 	Ghost<1,double> g(12*eps);
diff --git a/example/Numerics/Vortex_in_cell/main_vic_petsc.cpp b/example/Numerics/Vortex_in_cell/main_vic_petsc.cpp
index f9e1de78f..6f27adca9 100644
--- a/example/Numerics/Vortex_in_cell/main_vic_petsc.cpp
+++ b/example/Numerics/Vortex_in_cell/main_vic_petsc.cpp
@@ -189,7 +189,7 @@ template<typename grid> void calc_and_print_max_div_and_int(grid & g_vort)
 		++it5;
 	}
 
-	Vcluster & v_cl = create_vcluster();
+	Vcluster<> & v_cl = create_vcluster();
 	v_cl.max(max_vort);
 	v_cl.sum(int_vort[0]);
 	v_cl.sum(int_vort[1]);
@@ -760,7 +760,7 @@ void comp_vel(Box<3,float> & domain, grid_type & g_vort,grid_type & g_vel, petsc
 		solError serr;
 		serr = solver.get_residual_error(phi_s[i],b);
 
-		Vcluster & v_cl = create_vcluster();
+		Vcluster<> & v_cl = create_vcluster();
 		if (v_cl.getProcessUnitID() == 0)
 		{std::cout << "Solved component " << i << "  Error: " << serr.err_inf << std::endl;}
 
@@ -1117,7 +1117,7 @@ template<typename vector, typename grid> void check_point_and_save(vector & part
 																   grid & g_dvort,
 																   size_t i)
 {
-	Vcluster & v_cl = create_vcluster();
+	Vcluster<> & v_cl = create_vcluster();
 
 	if (v_cl.getProcessingUnits() < 24)
 	{
@@ -1215,7 +1215,7 @@ int main(int argc, char* argv[])
 	Vector<double,PETSC_BASE> x_;
 
 	// Parallel object
-	Vcluster & v_cl = create_vcluster();
+	Vcluster<> & v_cl = create_vcluster();
 
 	// print out the spacing of the grid
 	if (v_cl.getProcessUnitID() == 0)
diff --git a/example/Numerics/Vortex_in_cell/main_vic_petsc_opt.cpp b/example/Numerics/Vortex_in_cell/main_vic_petsc_opt.cpp
index e07edf209..da58194bf 100644
--- a/example/Numerics/Vortex_in_cell/main_vic_petsc_opt.cpp
+++ b/example/Numerics/Vortex_in_cell/main_vic_petsc_opt.cpp
@@ -44,15 +44,27 @@ constexpr int z = 2;
 constexpr unsigned int phi = 0;
 
 // The type of the grids
-typedef grid_dist_id<3,float,aggregate<float[3]>,CartDecomposition<3,float,HeapMemory,SpaceDistribution<3,float>>> grid_type;
+typedef grid_dist_id<3,float,aggregate<float[3]>,CartDecomposition<3,float,HeapMemory,memory_traits_lin,SpaceDistribution<3,float>>> grid_type;
 
 // The type of the grids
-typedef grid_dist_id<3,float,aggregate<float>,CartDecomposition<3,float,HeapMemory,SpaceDistribution<3,float>>> grid_type_s;
+typedef grid_dist_id<3,float,aggregate<float>,CartDecomposition<3,float,HeapMemory,memory_traits_lin,SpaceDistribution<3,float>>> grid_type_s;
 
 // The type of the particles
-typedef vector_dist<3,float,aggregate<float[3],float[3],float[3],float[3],float[3]>,memory_traits_lin<aggregate<float[3],float[3],float[3],float[3],float[3]>>::type,memory_traits_lin,CartDecomposition<3,float,HeapMemory,SpaceDistribution<3,float>>> particles_type;
-
-typedef vector_dist<3,float,aggregate<float>,memory_traits_lin<aggregate<float>>::type,memory_traits_lin,CartDecomposition<3,float,HeapMemory,SpaceDistribution<3,float>>> particles_type_s;
+typedef vector_dist<3,
+		            float,
+		            aggregate<float[3],float[3],float[3],float[3],float[3]>,
+		            CartDecomposition<3,float,HeapMemory,
+		                              memory_traits_lin,SpaceDistribution<3,float>>,
+		            HeapMemory,
+		            memory_traits_lin> particles_type;
+
+typedef vector_dist<3,
+					float,
+					aggregate<float>,
+					CartDecomposition<3,float,HeapMemory,
+					                  memory_traits_lin,SpaceDistribution<3,float>>,
+					HeapMemory,
+					memory_traits_lin> particles_type_s;
 
 // radius of the torus
 float ringr1 = 1.0;
@@ -112,7 +124,7 @@ template<typename grid> void calc_and_print_max_div_and_int(grid & g_vort)
 		++it5;
 	}
 
-	Vcluster & v_cl = create_vcluster();
+	Vcluster<> & v_cl = create_vcluster();
 	v_cl.max(max_vort);
 	v_cl.sum(int_vort[0]);
 	v_cl.sum(int_vort[1]);
@@ -202,7 +214,7 @@ struct poisson_nn_helm
 const bool poisson_nn_helm::boundary[] = {PERIODIC,PERIODIC,PERIODIC};
 
 
-void helmotz_hodge_projection(grid_dist_id<3,float,aggregate<float>,CartDecomposition<3,float,HeapMemory,SpaceDistribution<3,float>>> & psi,
+void helmotz_hodge_projection(grid_dist_id<3,float,aggregate<float>,CartDecomposition<3,float,HeapMemory,memory_traits_lin,SpaceDistribution<3,float>>> & psi,
 							  FDScheme<poisson_nn_helm> & fd,
 							  grid_type & gr,
 							  const Box<3,float> & domain,
diff --git a/openfpm_numerics b/openfpm_numerics
index 33821d701..e9a2083b6 160000
--- a/openfpm_numerics
+++ b/openfpm_numerics
@@ -1 +1 @@
-Subproject commit 33821d701496cf6e418b43e9011b542e337cb324
+Subproject commit e9a2083b6c4d9ce84519bc8163fbff032db4ff1c
-- 
GitLab