From 56df73013f58a217550ef1510083e249cec05d95 Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Sun, 20 Apr 2025 16:47:19 +0200 Subject: Switching to the more common delta t --- c++/converter.hpp | 27 +++++++++++++++------------ c++/lbm_unit.hpp | 24 +++++++++++++++--------- tests/converter.cpp | 11 ++++++++++- 3 files changed, 40 insertions(+), 22 deletions(-) diff --git a/c++/converter.hpp b/c++/converter.hpp index f3c3518..67058aa 100644 --- a/c++/converter.hpp +++ b/c++/converter.hpp @@ -8,34 +8,37 @@ namespace lbm { template class converter { private: - saw::data, SiMeter >> meter_conv_; - saw::data, SiSecond >> second_conv_; + saw::data, sch::LbmMeter >::Schema > meter_conv_; + saw::data, sch::LbmSecond >::Schema > second_conv_; public: converter() = delete; converter( - saw::data, SiMeter >> meter_conv__, - saw::data, SiSecond >> second_conv__ + saw::data, sch::LbmMeter >::Schema > meter_conv__, + saw::data, sch::LbmSecond >::Schema > second_conv__ ): meter_conv_{meter_conv__}, second_conv_{second_conv__} {} - saw::data> meter_si_to_lbm(const saw::data>& m_si){ - return m_si * meter_conv_; + saw::data> meter_si_to_lbm(const saw::data>& m_si) const { + return m_si / meter_conv_; } - saw::data> second_si_to_lbm(const saw::data>& s_si){ - return s_si * second_conv_; + saw::data> second_si_to_lbm(const saw::data>& s_si) const { + return s_si / second_conv_; } - saw::data> velocity_si_to_lbm(const saw::data>& vel_si){ - return vel_si * meter_conv_ / second_conv_; + saw::data> velocity_si_to_lbm(const saw::data>& vel_si) const { + return vel_si * second_conv_ / meter_conv_; } - saw::data> acceleration_si_to_lbm(const saw::data>& acc_si){ - return acc_si * meter_conv_ / (second_conv_ * second_conv_); + saw::data> acceleration_si_to_lbm(const saw::data>& acc_si) const { + return acc_si * (second_conv_ * second_conv_) / meter_conv_; } + saw::data> kinematic_viscosity_si_to_lbm (const saw::data>& kin_si) const { + return kin_si * second_conv_ / (meter_conv_ * meter_conv_); + } }; } } diff --git a/c++/lbm_unit.hpp b/c++/lbm_unit.hpp index 4cb9b52..e69323f 100644 --- a/c++/lbm_unit.hpp +++ b/c++/lbm_unit.hpp @@ -30,31 +30,37 @@ struct second { }; } -namesapce sch { +namespace sch { +using namespace saw::schema; +template +using SiMeter = Unit>; + +template +using LbmMeter = Unit>; template -using SiMeter = schema::Unit>; +using SiSecond = Unit>; template -using LbmMeter = schema::Unit>; +using LbmSecond = Unit>; template -using SiSecond = schema::Unit>; +using SiVelocity = Unit, UnitElement>; template -using LbmSecond = schema::Unit>; +using LbmVelocity = Unit, UnitElement>; template -using SiVelocity = schema::Unit, schema::UnitElement>; +using SiAcceleration = Unit, UnitElement>; template -using LbmVelocity = schema::Unit, schema::UnitElement>; +using LbmAcceleration = Unit, UnitElement>; template -using SiAcceleration = schema::Unit, schema::UnitElement>; +using SiKinematicViscosity = Unit, UnitElement>; template -using LbmAcceleration = schema::Unit, schema::UnitElement>; +using LbmKinematicViscosity = Unit, UnitElement>; } } diff --git a/tests/converter.cpp b/tests/converter.cpp index 3c66348..01cd4ce 100644 --- a/tests/converter.cpp +++ b/tests/converter.cpp @@ -13,6 +13,15 @@ using T = Float64; SAW_TEST("Meter"){ using namespace kel; - lbm::converter converter; + lbm::converter converter{ + {0.1}, + {0.1} + }; + + saw::data> si_m{1.0}; + + auto lbm_m = converter.meter_si_to_lbm(si_m); + + SAW_EXPECT(lbm_m.handle().get() == 10.0, "Correct si to lbm conversion"); } } -- cgit v1.2.3