From 507440cdf786f7a1a83bdf22371f1844910382fb Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Thu, 5 Mar 2026 20:04:09 +0100 Subject: Fixed ordering and somehow mistaking the wrongly assumed wrong pressure boundary --- examples/poiseulle_particles_2d_gpu/sim.cpp | 12 +++++++----- lib/core/c++/boundary.hpp | 4 ++-- lib/core/tests/collision.cpp | 6 ++++++ 3 files changed, 15 insertions(+), 7 deletions(-) create mode 100644 lib/core/tests/collision.cpp diff --git a/examples/poiseulle_particles_2d_gpu/sim.cpp b/examples/poiseulle_particles_2d_gpu/sim.cpp index bb81383..644e4d1 100644 --- a/examples/poiseulle_particles_2d_gpu/sim.cpp +++ b/examples/poiseulle_particles_2d_gpu/sim.cpp @@ -204,8 +204,8 @@ saw::error_or step( // auto coll_ev = q.submit([&](acpp::sycl::handler& h){ // Need nicer things to handle the flow. I see improvement here - // component> collision{0.6}; - component> collision{0.65}; + component> collision{0.65}; + // component> collision{0.65}; // component> collision{0.65}; component> bb; @@ -243,14 +243,14 @@ saw::error_or step( bb.apply(fields,index,t_i); break; case 2u: - flow_in.apply(fields,index,t_i); collision.apply(fields,macros,index,t_i); break; case 3u: - flow_out.apply(fields,index,t_i); + flow_in.apply(fields,index,t_i); collision.apply(fields,macros,index,t_i); break; case 4u: + flow_out.apply(fields,index,t_i); collision.apply(fields,macros,index,t_i); break; default: @@ -370,7 +370,7 @@ saw::error_or lbm_main(int argc, char** argv){ } } sycl_q.wait(); - saw::data time_steps{32ul}; + saw::data time_steps{4096ul}; auto& info_f = lsd_view.template get<"info">(); @@ -397,6 +397,7 @@ saw::error_or lbm_main(int argc, char** argv){ } } } + /* { { auto eov = dev.copy_to_host(lbm_sycl_data,*lbm_data_ptr); @@ -411,6 +412,7 @@ saw::error_or lbm_main(int argc, char** argv){ } } } + */ // Stream sycl_q.submit([&](acpp::sycl::handler& h){ component> stream; diff --git a/lib/core/c++/boundary.hpp b/lib/core/c++/boundary.hpp index 0a4ff4d..d5f3022 100644 --- a/lib/core/c++/boundary.hpp +++ b/lib/core/c++/boundary.hpp @@ -135,7 +135,7 @@ public: for(saw::data k{0u}; k < saw::data{Descriptor::Q}; ++k){ auto c_k = dfi::directions[k.get()]; - if(c_k[0u]*known_dir >= 0){ + if(c_k[0u]*known_dir <= 0){ sum_df += dfs_old.at({k}); } } @@ -147,7 +147,7 @@ public: for(saw::data k{0u}; k < saw::data{Descriptor::Q}; ++k){ auto c_k = dfi::directions[k.get()]; - if(c_k[0u]*known_dir > 0){ + if(c_k[0u]*known_dir < 0){ sum_unknown_dfs += dfs_old.at({k}) * c_k[0u]; } } diff --git a/lib/core/tests/collision.cpp b/lib/core/tests/collision.cpp new file mode 100644 index 0000000..cd53336 --- /dev/null +++ b/lib/core/tests/collision.cpp @@ -0,0 +1,6 @@ +#include + +#include "../c++/collision.hpp" + +namespace { +} -- cgit v1.2.3