From a6d73e49cd17f1c55d4d4718c89df74ef0a03b41 Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Wed, 2 Jul 2025 14:36:33 +0200 Subject: Moving to global equilibrium with proper types and introducing poiseulle Slowly though --- examples/cavity_2d.cpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'examples/cavity_2d.cpp') diff --git a/examples/cavity_2d.cpp b/examples/cavity_2d.cpp index 6332bcf..c4a86d5 100644 --- a/examples/cavity_2d.cpp +++ b/examples/cavity_2d.cpp @@ -52,6 +52,7 @@ using MacroStruct = Struct< >; using CavityFieldD2Q9 = CellField>; +} /* @@ -149,10 +150,10 @@ void set_geometry(saw::data& latt){ void set_initial_conditions(saw::data& latt){ using namespace kel::lbm; - typename saw::native_data_type::type rho = 1.0; + saw::data rho{1.0}; { - std::array::type, sch::D2Q9::D> vel = {0.0, 0.0}; - auto eq = equilibrium(rho, vel); + saw::data> vel{{0.0,0.0}}; + auto eq = equilibrium(rho, vel); apply_for_cells([&eq](auto& cell, std::size_t i, std::size_t j){ (void) i; @@ -161,15 +162,15 @@ void set_initial_conditions(saw::data& latt){ auto& dfs_old = cell.template get<"dfs_old">(); auto info = cell.template get<"info">()(0u).get(); for(uint64_t k = 0; k < sch::D2Q9::Q; ++k){ - dfs(k).set(eq[k]); - dfs_old(k).set(eq[k]); + dfs(k) = eq.at({k}); + dfs_old(k) = eq.at({k}); } }, latt); } { - std::array::type, sch::D2Q9::D> vel = {0.1, 0.0}; - auto eq = equilibrium(rho, vel); + saw::data> vel{{0.1,0.0}}; + auto eq = equilibrium(rho, vel); apply_for_cells([&eq](auto& cell, std::size_t i, std::size_t j){ (void) i; @@ -179,8 +180,8 @@ void set_initial_conditions(saw::data& latt){ auto info = cell.template get<"info">()(0u).get(); if(info == 2u){ for(uint64_t k = 0; k < sch::D2Q9::Q; ++k){ - dfs(k).set(eq[k]); - dfs_old(k).set(eq[k]); + dfs(k) = eq.at({k}); + dfs_old(k) = eq.at({k}); } } }, latt); -- cgit v1.2.3