diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index cea4a17b9af013a49b405735dee8bcb56af87224..0101c12e5c91f607f6b1e934c97ac818bbaf66b9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -271,6 +271,10 @@ install(FILES DMatrix/EMatrix.hpp DESTINATION openfpm_numerics/include/DMatrix COMPONENT OpenFPM) +install(FILES level_set/particle_cp/particle_cp.hpp + DESTINATION openfpm_numerics/include/level_set/particle_cp + COMPONENT OpenFPM) + #if(BUILD_TESTING) # add_executable(particle_test test.cu) diff --git a/src/level_set/particle_cp/particle_cp.hpp b/src/level_set/particle_cp/particle_cp.hpp index ad78fd5bcaada43156583acac1ad9b05618f3728..d7720a2290a6bcfb4ac70c3117f1771821b7aa70 100644 --- a/src/level_set/particle_cp/particle_cp.hpp +++ b/src/level_set/particle_cp/particle_cp.hpp @@ -25,14 +25,13 @@ */ #include <math.h> -#include <sys/_types/_size_t.h> #include "Vector/vector_dist.hpp" #include "DCPSE/Dcpse.hpp" #include "DCPSE/MonomialBasis.hpp" #include "Draw/DrawParticles.hpp" #include "Operators/Vector/vector_dist_operators.hpp" #include <chrono> -#include "/Users/lschulze/Applications/openFPM_Install_master/openfpm_numerics/include/regression/regression.hpp" +#include "regression/regression.hpp" template<unsigned int dim, unsigned int n_c> using particles_surface = vector_dist<dim, double, aggregate<int, int, double, double[dim], double[n_c], EVectorXd>>; struct Redist_options @@ -91,7 +90,7 @@ public: { if (redistOptions.verbose) std::cout<<"Minterpol variable is "<<minterpol<<std::endl; detect_surface_particles(); - + interpolate_sdf_field(); find_closest_point(vd_in, vd_s); @@ -336,14 +335,14 @@ private: { if(redistOptions.min_num_particles == 0) { - auto regSupport = RegressionSupport(vd_s, part, sqrt(r_cutoff2), RADIUS, NN_s); - if (regSupport.getNumParticles() < n_c) message_insufficient_support = 1; + auto regSupport = RegressionSupport<decltype(vd_s), decltype(NN_s)>(vd_s, part, sqrt(r_cutoff2), RADIUS, NN_s); + if (regSupport.getNumParticles() < n_c) message_insufficient_support = 1; minterModelpcp.computeCoeffs(vd_s, regSupport); } else { - auto regSupport = RegressionSupport(vd_s, part, n_c + 3, AT_LEAST_N_PARTICLES, NN_s); - if (regSupport.getNumParticles() < n_c) message_insufficient_support = 1; + auto regSupport = RegressionSupport<decltype(vd_s), decltype(NN_s)>(vd_s, part, n_c + 3, AT_LEAST_N_PARTICLES, NN_s); + if (regSupport.getNumParticles() < n_c) message_insufficient_support = 1; minterModelpcp.computeCoeffs(vd_s, regSupport); } @@ -882,3 +881,4 @@ private: }; +