diff --git a/Environment/IMagneticFieldModel.h b/Environment/IMagneticFieldModel.h index a2666ba267f530e7a56346f1ad7faf141ca9d7c1..c34f1878b7926421b6d35d5aef7344a9f8b82266 100644 --- a/Environment/IMagneticFieldModel.h +++ b/Environment/IMagneticFieldModel.h @@ -10,6 +10,7 @@ #pragma once #include <corsika/geometry/Point.h> +#include <corsika/geometry/Vector.h> #include <corsika/units/PhysicalUnits.h> namespace corsika::environment { @@ -25,7 +26,7 @@ namespace corsika::environment { // a type-alias for a magnetic field vector using MagneticFieldVector = - corsika::geometry::QuantityVector<corsika::units::si::magnetic_flux_density_d>; + corsika::geometry::Vector<corsika::units::si::magnetic_flux_density_d>; public: /** diff --git a/Environment/UniformMagneticField.h b/Environment/UniformMagneticField.h index 31f2a1b94b78cb6ef5e7e318019c48401f87beb9..e75c0420d92b73b1ad8533a13df7b7ad6a62e6ee 100644 --- a/Environment/UniformMagneticField.h +++ b/Environment/UniformMagneticField.h @@ -25,7 +25,7 @@ namespace corsika::environment { // a type-alias for a magnetic field vector using MagneticFieldVector = - corsika::geometry::QuantityVector<corsika::units::si::magnetic_flux_density_d>; + corsika::geometry::Vector<corsika::units::si::magnetic_flux_density_d>; MagneticFieldVector B_; ///< The constant magnetic field we use. diff --git a/Environment/testEnvironment.cc b/Environment/testEnvironment.cc index ed2bf9a1a7b232e95c1e04096abbcd3062c3839c..8e59c719747015a7b3b70afa1ab00ad3b8cd3652 100644 --- a/Environment/testEnvironment.cc +++ b/Environment/testEnvironment.cc @@ -245,7 +245,7 @@ TEST_CASE("UniformMagneticField w/ Homogeneous Medium") { std::vector<float>{1.f}); // create a magnetic field vector - QuantityVector B0(0_T, 0_T, 0_T); + Vector B0(gCS, 0_T, 0_T, 0_T); // the constant density const auto density{19.2_g / cube(1_cm)}; @@ -254,20 +254,28 @@ TEST_CASE("UniformMagneticField w/ Homogeneous Medium") { AtmModel medium(B0, density, protonComposition); // and test at several locations - REQUIRE(B0 == medium.GetMagneticField(Point(gCS, -10_m, 4_m, 35_km))); - REQUIRE(B0 == medium.GetMagneticField(Point(gCS, 1000_km, -1000_km, 1000_km))); - REQUIRE(B0 == medium.GetMagneticField(Point(gCS, 0_m, 0_m, 0_m))); + REQUIRE(B0.GetComponents(gCS) == + medium.GetMagneticField(Point(gCS, -10_m, 4_m, 35_km)).GetComponents(gCS)); + REQUIRE( + B0.GetComponents(gCS) == + medium.GetMagneticField(Point(gCS, 1000_km, -1000_km, 1000_km)).GetComponents(gCS)); + REQUIRE(B0.GetComponents(gCS) == + medium.GetMagneticField(Point(gCS, 0_m, 0_m, 0_m)).GetComponents(gCS)); // create a new magnetic field vector - QuantityVector B1(23_T, 57_T, -4_T); + Vector B1(gCS, 23_T, 57_T, -4_T); // and update this atmospheric model medium.SetMagneticField(B1); // and test at several locations - REQUIRE(B1 == medium.GetMagneticField(Point(gCS, -10_m, 4_m, 35_km))); - REQUIRE(B1 == medium.GetMagneticField(Point(gCS, 1000_km, -1000_km, 1000_km))); - REQUIRE(B1 == medium.GetMagneticField(Point(gCS, 0_m, 0_m, 0_m))); + REQUIRE(B1.GetComponents(gCS) == + medium.GetMagneticField(Point(gCS, -10_m, 4_m, 35_km)).GetComponents(gCS)); + REQUIRE( + B1.GetComponents(gCS) == + medium.GetMagneticField(Point(gCS, 1000_km, -1000_km, 1000_km)).GetComponents(gCS)); + REQUIRE(B1.GetComponents(gCS) == + medium.GetMagneticField(Point(gCS, 0_m, 0_m, 0_m)).GetComponents(gCS)); // check the density and nuclear composition REQUIRE(density == medium.GetMassDensity(Point(gCS, 0_m, 0_m, 0_m)));