From 8bc7955f5d95521f7c932b9551a3b71a62117630 Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Thu, 16 Jul 2026 21:49:56 +0200 Subject: Fixed stupid issue regarding device code --- modules/core/c++/hlbm.hpp | 14 +++++++------- modules/core/c++/particle/aabb.hpp | 10 +++++----- 2 files changed, 12 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/core/c++/hlbm.hpp b/modules/core/c++/hlbm.hpp index 1c625bb..cc35f9b 100644 --- a/modules/core/c++/hlbm.hpp +++ b/modules/core/c++/hlbm.hpp @@ -13,6 +13,7 @@ namespace lbm { namespace cmpt { struct HlbmInit {}; struct Hlbm {}; +struct HlbmOneParticle {}; struct HlbmParticle {}; struct HlbmOneParticleMomentumExchange {}; } @@ -101,7 +102,7 @@ public: }; template -class component final { +class component final { private: /* template @@ -124,6 +125,7 @@ public: auto& parts = part_spheroid_group.template get<"particles">(); auto parts_size = parts.meta().at({0u}); + auto& pi = parts.at(index); auto& pirb = pi.template get<"rigid_body">(); auto& pirb_pos = pirb.template get<"position">(); @@ -131,10 +133,8 @@ public: saw::data> start; saw::data> stop; - auto eo_aabb = particle_aabb::calculate(part_spheroid_group,index,mvel.meta()); + auto eo_aabb = particle_aabb::calculate(part_spheroid_group,{{0u}},mvel.meta()); if(eo_aabb.is_error()){ - std::cerr<<"Prepping error"<::apply([&](const auto& index){ // ask for the d_k value here. // For every value im iterating over I need sth - std::cout<<"Pos: "<; public: template - static constexpr saw::error_or> calculate(const saw::data& p_grp, const saw::data>& i, const saw::data>& meta){ + static constexpr saw::error_or> calculate(const saw::data& p_grp, const saw::data>& index, const saw::data>& meta){ static_assert(PC > 0u, "Can't calculate from no particles"); - if(not (i.at({0u}).get() < PC) ){ + if(not (index.at({{0u}}).get() < PC) ){ + std::cerr.flush(); return saw::make_error("Too large i in particle_aabb"); } saw::data aabb; auto& parts = p_grp.template get<"particles">(); - auto& pi = parts.at(i); + auto& pi = parts.at(index); auto& pirb = pi.template get<"rigid_body">(); auto& pirb_pos = pirb.template get<"position">(); auto& a = aabb.template get<"a">(); auto& b = aabb.template get<"b">(); - const saw::data>& rad_d = p_grp.template get<"collision">().at(i).template get<"radius">(); + const saw::data>& rad_d = p_grp.template get<"collision">().at({{0u}}).template get<"radius">(); saw::data> lower; saw::data> upper; @@ -52,7 +53,6 @@ public: } return aabb; - } }; -- cgit v1.2.3