diff options
| author | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-01-13 16:31:02 +0100 |
|---|---|---|
| committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-01-13 16:31:02 +0100 |
| commit | 1b8ff0752a7622534199e0d8e8c2801967eed4ba (patch) | |
| tree | 0c1b03bb796c5e649e681aa3339dd6b9f7f84cd2 /lib/core/tests/particles.cpp | |
| parent | 49a8fc2ebe34b3f45db4295b3e01b47af9773ab6 (diff) | |
| download | libs-lbm-1b8ff0752a7622534199e0d8e8c2801967eed4ba.tar.gz | |
Reworking the packages sets
Diffstat (limited to 'lib/core/tests/particles.cpp')
| -rw-r--r-- | lib/core/tests/particles.cpp | 44 |
1 files changed, 38 insertions, 6 deletions
diff --git a/lib/core/tests/particles.cpp b/lib/core/tests/particles.cpp index 7c0c748..366c2a2 100644 --- a/lib/core/tests/particles.cpp +++ b/lib/core/tests/particles.cpp @@ -1,9 +1,7 @@ #include <forstio/test/suite.hpp> #include <iostream> -//#include "../c++/particle/geometry/circle.hpp" #include "../c++/particle/particle.hpp" -#include <forstio/codec/data.hpp> namespace { namespace sch { @@ -143,15 +141,49 @@ SAW_TEST("Moving particles 2D"){ std::cout<<"Collided at: "<<i<<std::endl; break; } - std::cout<<part_a.template get<"rigid_body">().template get<"position">().at({{0u}}).get(); - std::cout<<" "; - std::cout<<part_b.template get<"rigid_body">().template get<"position">().at({{0u}}).get(); - std::cout<<std::endl; } SAW_EXPECT(has_collided, "Expecting collision within those steps"); } +SAW_TEST("Particle Collision Impulse"){ + using namespace kel; + + saw::data<sch::Particle<sch::T,2u>> part_a; + { + auto& body = part_a.template get<"rigid_body">(); + auto& pos = body.template get<"position">(); + auto& pos_old = body.template get<"position_old">(); + auto& coll = part_a.template get<"collision">(); + auto& radius = coll.template get<"radius">(); + auto& acc = body.template get<"acceleration">(); + + radius.set(1.0); + + pos.at({{0u}}) = -5.0; + pos.at({{1u}}) = 0.2; + pos_old = pos; + acc.at({{0u}}) = 0.1; + + } + saw::data<sch::Particle<sch::T,2u>> part_b; + { + auto& body = part_b.template get<"rigid_body">(); + auto& pos = body.template get<"position">(); + auto& pos_old = body.template get<"position_old">(); + auto& coll = part_b.template get<"collision">(); + auto& radius = coll.template get<"radius">(); + auto& acc = body.template get<"acceleration">(); + + radius.set(1.5); + + pos.at({{0u}}) = 5.0; + pos.at({{1u}}) = 0.0; + pos_old = pos; + acc.at({{0u}}) = -0.1; + } +} + /* SAW_TEST("Minor Test for mask"){ using namespace kel; |
