summaryrefslogtreecommitdiff
path: root/lib/core/c++/hlbm.hpp
diff options
context:
space:
mode:
authorClaudius "keldu" Holeksa <mail@keldu.de>2026-05-21 15:00:31 +0200
committerClaudius "keldu" Holeksa <mail@keldu.de>2026-05-21 15:00:31 +0200
commit3b60c30226695421df2521c11a45177ff9b4086b (patch)
treeea7c01818300a2dea17a31b979540f7aa2e3b937 /lib/core/c++/hlbm.hpp
parent22c8f0540533c2d77201e90cdcd3dc30524a89e4 (diff)
parentb5d8593b9a2f0f58cb228444dcd09a2c5002e039 (diff)
downloadlibs-lbm-3b60c30226695421df2521c11a45177ff9b4086b.tar.gz
Merge branch 'dev'
Diffstat (limited to 'lib/core/c++/hlbm.hpp')
-rw-r--r--lib/core/c++/hlbm.hpp22
1 files changed, 20 insertions, 2 deletions
diff --git a/lib/core/c++/hlbm.hpp b/lib/core/c++/hlbm.hpp
index 41e2e27..196de73 100644
--- a/lib/core/c++/hlbm.hpp
+++ b/lib/core/c++/hlbm.hpp
@@ -7,14 +7,15 @@
namespace kel {
namespace lbm {
namespace cmpt {
-struct HLBM {};
+struct Hlbm {};
+struct HlbmParticle {};
}
/**
* HLBM collision operator for LBM
*/
template<typename T, typename Descriptor, typename Encode>
-class component<T, Descriptor, cmpt::HLBM, Encode> final {
+class component<T, Descriptor, cmpt::Hlbm, Encode> final {
private:
typename saw::native_data_type<T>::type relaxation_;
saw::data<T> frequency_;
@@ -65,5 +66,22 @@ public:
}
};
+template<typename T, typename Descriptor, typename Encode>
+class component<T, Descriptor, cmpt::HlbmParticle, Encode> final {
+private:
+ typename saw::native_data_type<T>::type relaxation_;
+ saw::data<T> frequency_;
+public:
+
+ template<typename CellFieldSchema, typename MacroFieldSchema, typename ParticleSchema>
+ void apply(const saw::data<CellFieldSchema, Encode>& field, const saw::data<MacroFieldSchema,Encode>& macros, const saw::data<ParticleSchema,Encode>& particles, saw::data<sch::FixedArray<sch::UInt64,1u>> index, saw::data<sch::UInt64> time_step) const {
+ /// Figure out how to access the particle list
+ // auto& p = particles.at(i);
+
+ /// Iterate over the grid bounds
+ // auto& grid = p.template get<"grid">();
+
+ }
+};
}
}