summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClaudius "keldu" Holeksa <mail@keldu.de>2025-06-26 13:46:27 +0200
committerClaudius "keldu" Holeksa <mail@keldu.de>2025-06-26 13:46:27 +0200
commitcab30f5fff0c8e96a81f2addb7c190a55b9f5377 (patch)
tree9eadd8110467378714b5f9b70da9c3f48ba43bc7
parent3a1401dff3839ade801eb09598985d318e514350 (diff)
Intermittent changes
-rw-r--r--c++/boundary.hpp2
-rw-r--r--c++/collision.hpp2
-rw-r--r--examples/cavity_2d.cpp21
3 files changed, 20 insertions, 5 deletions
diff --git a/c++/boundary.hpp b/c++/boundary.hpp
index e52715e..4c17e3b 100644
--- a/c++/boundary.hpp
+++ b/c++/boundary.hpp
@@ -50,7 +50,7 @@ public:
using dfi = df_info<T,Descriptor>;
// Technically use .copy()
- auto df_cpy = dfs_old;
+ auto df_cpy = dfs_old.copy();
for(uint64_t i = 1u; i < Descriptor::Q; ++i){
dfs_old({i}) = df_cpy({dfi::opposite_index.at(i)});
diff --git a/c++/collision.hpp b/c++/collision.hpp
index 4c28712..c28ec21 100644
--- a/c++/collision.hpp
+++ b/c++/collision.hpp
@@ -57,8 +57,6 @@ public:
dfs_old({i}).set(dfs_old({i}).get() + (1.0 / relaxation_) * (eq.at(i).get() - dfs_old({i}).get()));
}
}
-
-
};
}
}
diff --git a/examples/cavity_2d.cpp b/examples/cavity_2d.cpp
index ca291d3..ca42894 100644
--- a/examples/cavity_2d.cpp
+++ b/examples/cavity_2d.cpp
@@ -259,7 +259,7 @@ void lbm_step(
switch(info({0u}).get()){
case 1u: {
- coll.apply(latt, {{i,j}}, time_step);
+ coll.apply(latt, {{i,j}}, time_step+1u);
break;
}
case 2u: {
@@ -270,13 +270,30 @@ void lbm_step(
case 3u: {
auto& df = even_step ? cell.template get<"dfs_old">() : cell.template get<"dfs">();
// bb_two.apply(df);
- bb.apply(latt, {{i,j}}, time_step);
+ // bb.apply(latt, {{i,j}}, time_step);
break;
}
+ default:
+ break;
}
}
}
+ apply_for_cells([&](auto cell, size_t i, size_t j){
+ auto& info = cell.template get<"info">();
+
+ auto info_v = info({0u}).get();
+ switch(info_v){
+ case 3u: {
+ auto& df = even_step ? cell.template get<"dfs_old">() : cell.template get<"dfs">();
+ bb_two.apply(df);
+ break;
+ }
+ default:
+ break;
+ }
+ },latt);
+
// Stream
for(uint64_t i = 1u; (i+1u) < latt.template get_dim_size<0>().get(); ++i){
for(uint64_t j = 1u; (j+1u) < latt.template get_dim_size<1>().get(); ++j){