From d413ad31e86fb789ac61cb7d5bd15b55975e8b18 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (h)" <j.wuttke@fz-juelich.de> Date: Sun, 29 Aug 2021 12:32:31 +0200 Subject: [PATCH] polarized tests now all using polCase arg --- Core/Examples/SimulationFactory.cpp | 18 - Core/Examples/StandardSimulations.cpp | 88 +---- Core/Examples/StandardSimulations.h | 10 - Fit/TestEngine/IFactory.h | 2 +- GUI/Models/FTDistributionItems.cpp | 4 +- Sample/Scattering/IFormFactor.cpp | 2 +- Sample/StandardSamples/ParaCrystalBuilder.cpp | 2 +- .../ParticleInVacuumBuilder.cpp | 2 +- .../StandardSamples/includeStandardSamples.h | 2 +- .../Core/Consistence/ConsistenceTests.cpp | 12 +- Tests/Functional/GUI/Check.cpp | 11 +- Tests/Functional/Std/StandardTests.h | 340 +++++++----------- .../Std/PolarizedFeNiBilayerNCMM.int.gz | Bin 23908 -> 23767 bytes .../PolarizedQAngleReflectivityMM_0.int.gz | Bin 23405 -> 0 bytes .../PolarizedQAngleReflectivityPP_0.int.gz | Bin 22941 -> 0 bytes Tests/Unit/Sample/FormFactorBasicTest.cpp | 2 +- auto/Wrap/doxygenCore.i | 24 -- 17 files changed, 165 insertions(+), 354 deletions(-) delete mode 100644 Tests/ReferenceData/Std/PolarizedQAngleReflectivityMM_0.int.gz delete mode 100644 Tests/ReferenceData/Std/PolarizedQAngleReflectivityPP_0.int.gz diff --git a/Core/Examples/SimulationFactory.cpp b/Core/Examples/SimulationFactory.cpp index 12bb55c8a14..74de82be2ad 100644 --- a/Core/Examples/SimulationFactory.cpp +++ b/Core/Examples/SimulationFactory.cpp @@ -84,24 +84,6 @@ SimulationFactory::SimulationFactory() registerItem("OffSpecularMini", StandardSimulations::MiniOffSpecular); - // polarized specular - - registerItem("BasicSpecularPP", StandardSimulations::BasicSpecularPP); - - registerItem("BasicSpecularMM", StandardSimulations::BasicSpecularMM); - - registerItem("BasicSpecularPM", StandardSimulations::BasicSpecularPM); - - registerItem("BasicSpecularMP", StandardSimulations::BasicSpecularMP); - - registerItem("BasicQSpecularPP", StandardSimulations::BasicSpecularQPP); - - registerItem("BasicQSpecularMM", StandardSimulations::BasicSpecularQMM); - - registerItem("BasicQSpecularPM", StandardSimulations::BasicSpecularQPM); - - registerItem("BasicQSpecularMP", StandardSimulations::BasicSpecularQMP); - // depth probe simulations registerItem("BasicDepthProbe", StandardSimulations::BasicDepthProbe); diff --git a/Core/Examples/StandardSimulations.cpp b/Core/Examples/StandardSimulations.cpp index bbd1654ffe0..6bb2183d6cc 100644 --- a/Core/Examples/StandardSimulations.cpp +++ b/Core/Examples/StandardSimulations.cpp @@ -45,18 +45,18 @@ const double rdet_width(20.0), rdet_height(18.0), rdet_distance(1000.0); const R3 zplus(0.0, 0.0, 1.0); const R3 yplus(0.0, 1.0, 0.0); -const std::map<std::string, std::pair<R3,R3>> ZPolarizationCases = { - {"PP", { +zplus, +zplus }}, - {"PM", { +zplus, -zplus }}, - {"MP", { -zplus, +zplus }}, - {"MM", { -zplus, -zplus }}, +const std::map<std::string, std::pair<R3, R3>> ZPolarizationCases = { + {"PP", {+zplus, +zplus}}, + {"PM", {+zplus, -zplus}}, + {"MP", {-zplus, +zplus}}, + {"MM", {-zplus, -zplus}}, }; -const std::map<std::string, std::pair<R3,R3>> YPolarizationCases = { - {"PP", { +yplus, +yplus }}, - {"PM", { +yplus, -yplus }}, - {"MP", { -yplus, +yplus }}, - {"MM", { -yplus, -yplus }}, +const std::map<std::string, std::pair<R3, R3>> YPolarizationCases = { + {"PP", {+yplus, +yplus}}, + {"PM", {+yplus, -yplus}}, + {"MP", {-yplus, +yplus}}, + {"MM", {-yplus, -yplus}}, }; } // namespace @@ -415,62 +415,6 @@ SpecularSimulation* StandardSimulations::TOFRWithPointwiseResolution() return result; } -// ------------ polarized specular ---------------- -SpecularSimulation* StandardSimulations::BasicSpecularPP() -{ - auto* simulation = BasicSpecular(); - simulation->instrument().setPolFilters(yplus, yplus, 1.0, 0.5); - return simulation; -} - -SpecularSimulation* StandardSimulations::BasicSpecularPM() -{ - auto* simulation = BasicSpecular(); - simulation->instrument().setPolFilters(yplus, -yplus, 1.0, 0.5); - return simulation; -} - -SpecularSimulation* StandardSimulations::BasicSpecularMP() -{ - auto* simulation = BasicSpecular(); - simulation->instrument().setPolFilters(-yplus, yplus, 1.0, 0.5); - return simulation; -} - -SpecularSimulation* StandardSimulations::BasicSpecularMM() -{ - auto* simulation = BasicSpecular(); - simulation->instrument().setPolFilters(-yplus, -yplus, 1.0, 0.5); - return simulation; -} - -SpecularSimulation* StandardSimulations::BasicSpecularQPP() -{ - auto* simulation = BasicSpecularQ(); - simulation->instrument().setPolFilters(yplus, yplus, 1.0, 0.5); - return simulation; -} - -SpecularSimulation* StandardSimulations::BasicSpecularQPM() -{ - auto* simulation = BasicSpecularQ(); - simulation->instrument().setPolFilters(yplus, -yplus, 1.0, 0.5); - return simulation; -} - -SpecularSimulation* StandardSimulations::BasicSpecularQMP() -{ - auto* simulation = BasicSpecularQ(); - simulation->instrument().setPolFilters(-yplus, yplus, 1.0, 0.5); - return simulation; -} - -SpecularSimulation* StandardSimulations::BasicSpecularQMM() -{ - auto* simulation = BasicSpecularQ(); - simulation->instrument().setPolFilters(-yplus, -yplus, 1.0, 0.5); - return simulation; -} // ----------------------- off-spec simulations ------------------ @@ -549,8 +493,8 @@ GISASSimulation StdSimulations::MiniGISAS_v2(const MultiLayer& sample) return GISASSimulation(beam, sample, det); } -GISASSimulation StdSimulations::MiniZPolarizedGISAS( - const MultiLayer& sample, const std::string& polCase) +GISASSimulation StdSimulations::MiniZPolarizedGISAS(const MultiLayer& sample, + const std::string& polCase) { const auto zCase = ZPolarizationCases.at(polCase); Beam beam(1.0, 1 * angstrom, Direction(0.2 * deg, 0)); @@ -560,8 +504,8 @@ GISASSimulation StdSimulations::MiniZPolarizedGISAS( return GISASSimulation(beam, sample, det); } -SpecularSimulation StdSimulations::BasicYPolarizedSpecular( - const MultiLayer& sample, const std::string& polCase) +SpecularSimulation StdSimulations::BasicYPolarizedSpecular(const MultiLayer& sample, + const std::string& polCase) { const auto yCase = YPolarizationCases.at(polCase); auto simulation = StandardSimulations::BasicSpecular(); @@ -571,8 +515,8 @@ SpecularSimulation StdSimulations::BasicYPolarizedSpecular( } -SpecularSimulation StdSimulations::BasicYPolarizedSpecularQ( - const MultiLayer& sample, const std::string& polCase) +SpecularSimulation StdSimulations::BasicYPolarizedSpecularQ(const MultiLayer& sample, + const std::string& polCase) { const auto yCase = YPolarizationCases.at(polCase); auto simulation = StandardSimulations::BasicSpecularQ(); diff --git a/Core/Examples/StandardSimulations.h b/Core/Examples/StandardSimulations.h index b4e53d029a6..5e012793fe8 100644 --- a/Core/Examples/StandardSimulations.h +++ b/Core/Examples/StandardSimulations.h @@ -66,16 +66,6 @@ SpecularSimulation* SpecularDivergentBeam(); SpecularSimulation* TOFRWithRelativeResolution(); SpecularSimulation* TOFRWithPointwiseResolution(); -// polarized specular: -SpecularSimulation* BasicSpecularPP(); -SpecularSimulation* BasicSpecularMM(); -SpecularSimulation* BasicSpecularPM(); -SpecularSimulation* BasicSpecularMP(); -SpecularSimulation* BasicSpecularQPP(); -SpecularSimulation* BasicSpecularQMM(); -SpecularSimulation* BasicSpecularQPM(); -SpecularSimulation* BasicSpecularQMP(); - // OffSpecular simulations OffSpecularSimulation* MiniOffSpecular(); diff --git a/Fit/TestEngine/IFactory.h b/Fit/TestEngine/IFactory.h index 8ce057749cf..fc5616cb3fd 100644 --- a/Fit/TestEngine/IFactory.h +++ b/Fit/TestEngine/IFactory.h @@ -34,7 +34,7 @@ namespace mumufit::test { template <class Key, class AbstractProduct> class IFactory { public: //! function which will be used to create object of AbstractProduct base type - using CreateItemCallback = std::function<AbstractProduct*()> ; + using CreateItemCallback = std::function<AbstractProduct*()>; //! map for correspondence between object identifier and object creation function using CallbackMap_t = std::map<Key, CreateItemCallback>; diff --git a/GUI/Models/FTDistributionItems.cpp b/GUI/Models/FTDistributionItems.cpp index 60dd27bada5..5507a42a945 100644 --- a/GUI/Models/FTDistributionItems.cpp +++ b/GUI/Models/FTDistributionItems.cpp @@ -272,8 +272,8 @@ FTDistribution2DVoigtItem::FTDistribution2DVoigtItem() : FTDistribution2DItem(M_ std::unique_ptr<IFTDistribution2D> FTDistribution2DVoigtItem::createFTDistribution() const { - return std::make_unique<FTDistribution2DVoigt>( - omegaX(), omegaY(), Units::deg2rad(gamma()), getItemValue(P_ETA).toDouble()); + return std::make_unique<FTDistribution2DVoigt>(omegaX(), omegaY(), Units::deg2rad(gamma()), + getItemValue(P_ETA).toDouble()); } void FTDistribution2DVoigtItem::setEta(double eta) diff --git a/Sample/Scattering/IFormFactor.cpp b/Sample/Scattering/IFormFactor.cpp index 414399e9889..d36f07eeca6 100644 --- a/Sample/Scattering/IFormFactor.cpp +++ b/Sample/Scattering/IFormFactor.cpp @@ -52,7 +52,7 @@ IFormFactor::IFormFactor(const NodeMeta& meta, const std::vector<double>& PValue std::string IFormFactor::shapeName() const { - if (className().substr(0, 10)=="FormFactor") + if (className().substr(0, 10) == "FormFactor") return className().substr(10); return className(); } diff --git a/Sample/StandardSamples/ParaCrystalBuilder.cpp b/Sample/StandardSamples/ParaCrystalBuilder.cpp index 0ca3964d051..6bfa5a9aa41 100644 --- a/Sample/StandardSamples/ParaCrystalBuilder.cpp +++ b/Sample/StandardSamples/ParaCrystalBuilder.cpp @@ -77,7 +77,7 @@ MultiLayer* Basic2DParaCrystalBuilder::buildSampleWithFTDis(const IFTDistributio vacuum_layer.addLayout(particle_layout); - MultiLayer* sample = new MultiLayer("Basic2DParaCrystal_"+pdf2->className()); + MultiLayer* sample = new MultiLayer("Basic2DParaCrystal_" + pdf2->className()); sample->addLayer(vacuum_layer); sample->addLayer(substrate_layer); return sample; diff --git a/Sample/StandardSamples/ParticleInVacuumBuilder.cpp b/Sample/StandardSamples/ParticleInVacuumBuilder.cpp index c26396452b2..a289384e528 100644 --- a/Sample/StandardSamples/ParticleInVacuumBuilder.cpp +++ b/Sample/StandardSamples/ParticleInVacuumBuilder.cpp @@ -30,7 +30,7 @@ MultiLayer* ParticleInVacuumBuilder::buildSampleWithFF(const IFormFactor* ff) co ParticleLayout particle_layout(particle); vacuum_layer.addLayout(particle_layout); - MultiLayer* result = new MultiLayer("ParticleInVacuum_"+ff->shapeName()); + MultiLayer* result = new MultiLayer("ParticleInVacuum_" + ff->shapeName()); result->addLayer(vacuum_layer); return result; } diff --git a/Sample/StandardSamples/includeStandardSamples.h b/Sample/StandardSamples/includeStandardSamples.h index 6f64ee9b76e..d5d316faf5e 100644 --- a/Sample/StandardSamples/includeStandardSamples.h +++ b/Sample/StandardSamples/includeStandardSamples.h @@ -15,7 +15,6 @@ #ifndef BORNAGAIN_SAMPLE_STANDARDSAMPLES_INCLUDESTANDARDSAMPLES_H #define BORNAGAIN_SAMPLE_STANDARDSAMPLES_INCLUDESTANDARDSAMPLES_H -#include "Sample/StandardSamples/SampleBuilderFactory.h" #include "Sample/StandardSamples/BoxCompositionBuilder.h" #include "Sample/StandardSamples/BoxesSquareLatticeBuilder.h" #include "Sample/StandardSamples/CoreShellParticleBuilder.h" @@ -41,6 +40,7 @@ #include "Sample/StandardSamples/ResonatorBuilder.h" #include "Sample/StandardSamples/RipplesBuilder.h" #include "Sample/StandardSamples/RotatedPyramidsBuilder.h" +#include "Sample/StandardSamples/SampleBuilderFactory.h" #include "Sample/StandardSamples/SizeDistributionModelsBuilder.h" #include "Sample/StandardSamples/SlicedCompositionBuilder.h" #include "Sample/StandardSamples/SlicedCylindersBuilder.h" diff --git a/Tests/Functional/Core/Consistence/ConsistenceTests.cpp b/Tests/Functional/Core/Consistence/ConsistenceTests.cpp index 68f0da1105a..f7398716051 100644 --- a/Tests/Functional/Core/Consistence/ConsistenceTests.cpp +++ b/Tests/Functional/Core/Consistence/ConsistenceTests.cpp @@ -50,19 +50,19 @@ TEST_F(Consistence, TOFResolutionComparison) TEST_F(Consistence, PolarizedQAngleReflectivity) { - EXPECT_TRUE(compareTwoReferences("PolarizedQAngleReflectivityPP_0", + EXPECT_TRUE(compareTwoReferences("BasicSpecularPP", "PolarizedQAngleReflectivityPP_Q", 2e-10)); - EXPECT_TRUE(compareTwoReferences("PolarizedQAngleReflectivityMM_0", + EXPECT_TRUE(compareTwoReferences("BasicSpecularMM", "PolarizedQAngleReflectivityMM_Q", 2e-10)); } TEST_F(Consistence, PolarizedScalarSpinFlip) { - auto simulation = StandardSimulations::BasicSpecularQPM(); auto sample = PlainMultiLayerBySLDBuilder(10).buildSample(); - simulation->setSample(*sample); - simulation->runSimulation(); - auto result = simulation->result().data(); + SpecularSimulation simulation = StdSimulations::BasicYPolarizedSpecular(*sample, "PM"); + simulation.setSample(*sample); + simulation.runSimulation(); + auto result = simulation.result().data(); for (auto r : *result) EXPECT_EQ(r, 0); } diff --git a/Tests/Functional/GUI/Check.cpp b/Tests/Functional/GUI/Check.cpp index 48353eb8fb6..b2d56ff182d 100644 --- a/Tests/Functional/GUI/Check.cpp +++ b/Tests/Functional/GUI/Check.cpp @@ -72,12 +72,11 @@ bool checkSimulation(const std::string& name, const ISimulation& direct_simulati // Save simulation, as it differs from reference. BaseUtils::Filesystem::createDirectories(BATesting::TestOutDir_Std()); - std::map<const std::string, - const OutputData<double>*> tosave{{"gui", domain_data.get()}, {"std", ref_data.get()}}; - for (const auto [kind, data]: tosave) { - std::string out_fname = - BaseUtils::Filesystem::jointPath(BATesting::TestOutDir_Std(), - name + "." + kind + ".int.gz"); + std::map<const std::string, const OutputData<double>*> tosave{{"gui", domain_data.get()}, + {"std", ref_data.get()}}; + for (const auto [kind, data] : tosave) { + std::string out_fname = BaseUtils::Filesystem::jointPath(BATesting::TestOutDir_Std(), + name + "." + kind + ".int.gz"); IntensityDataIOFactory::writeOutputData(*data, out_fname); std::cout << "Saved " << out_fname << "\n"; } diff --git a/Tests/Functional/Std/StandardTests.h b/Tests/Functional/Std/StandardTests.h index 0e18ae66609..04a07ef281d 100644 --- a/Tests/Functional/Std/StandardTests.h +++ b/Tests/Functional/Std/StandardTests.h @@ -19,12 +19,13 @@ #ifndef BORNAGAIN_TESTS_FUNCTIONAL_STD_STANDARDTESTS_H #define BORNAGAIN_TESTS_FUNCTIONAL_STD_STANDARDTESTS_H -#include "Tests/GTestWrapper/google_test.h" #include "Core/Examples/StandardSimulations.h" #include "Core/Simulation/GISASSimulation.h" -#include "Sample/ComponentBuilder/FormFactorComponents.h" +#include "Core/Simulation/SpecularSimulation.h" #include "Sample/ComponentBuilder/FTDistribution2DComponents.h" +#include "Sample/ComponentBuilder/FormFactorComponents.h" #include "Sample/StandardSamples/includeStandardSamples.h" +#include "Tests/GTestWrapper/google_test.h" #include <iostream> #include <regex> @@ -43,67 +44,68 @@ class Std : public ::testing::Test { TEST_F(Std, FormFactors) { - for (const std::string& ffname: FormFactorComponents().keys()) { + for (const std::string& ffname : FormFactorComponents().keys()) { const IFormFactor* ff = FormFactorComponents().getItem(ffname)->clone(); ASSERT(ff); - std::unique_ptr<MultiLayer> sample(ParticleInVacuumBuilder().buildSampleWithFF(ff)); + std::unique_ptr<const MultiLayer> sample(ParticleInVacuumBuilder().buildSampleWithFF(ff)); ASSERT(sample); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); - EXPECT_TRUE(run("FormFactors_"+ff->shapeName(), sim, 2e-10)); + EXPECT_TRUE(run("FormFactors_" + ff->shapeName(), sim, 2e-10)); } } TEST_F(Std, GISASAbsorptiveSLDLayers) { - std::unique_ptr<MultiLayer> sample(LayersWithAbsorptionBySLDBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(LayersWithAbsorptionBySLDBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("GISASAbsorptiveSLDLayers", sim, 2e-10)); } TEST_F(Std, CylindersAndPrisms) { - std::unique_ptr<MultiLayer> sample(CylindersAndPrismsBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CylindersAndPrismsBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CylindersAndPrisms", sim, 2e-10)); } TEST_F(Std, RadialParaCrystal) { - std::unique_ptr<MultiLayer> sample(RadialParaCrystalBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(RadialParaCrystalBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("RadialParaCrystal", sim, 2e-10)); } TEST_F(Std, HardDisk) { - std::unique_ptr<MultiLayer> sample(HardDiskBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(HardDiskBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("HardDisk", sim, 2e-10)); } TEST_F(Std, Basic2DParaCrystal) { - for (const std::string& pdfname: FTDistribution2DComponents().keys()) { + for (const std::string& pdfname : FTDistribution2DComponents().keys()) { const IFTDistribution2D* pdf2 = FTDistribution2DComponents().getItem(pdfname)->clone(); ASSERT(pdf2); std::cout << pdf2->pythonConstructor() << std::endl; - std::unique_ptr<MultiLayer> sample(Basic2DParaCrystalBuilder().buildSampleWithFTDis(pdf2)); + std::unique_ptr<const MultiLayer> sample( + Basic2DParaCrystalBuilder().buildSampleWithFTDis(pdf2)); ASSERT(sample); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); - EXPECT_TRUE(run("Basic2DParaCrystal_"+pdf2->className(), sim, 2e-10)); + EXPECT_TRUE(run("Basic2DParaCrystal_" + pdf2->className(), sim, 2e-10)); } } TEST_F(Std, HexParaCrystal) { - std::unique_ptr<MultiLayer> sample(HexParaCrystalBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(HexParaCrystalBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("HexParaCrystal", sim, 2e-10)); } TEST_F(Std, Lattice1D) { - std::unique_ptr<MultiLayer> sample(Lattice1DBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(Lattice1DBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("Lattice1D", sim, 2e-10)); } @@ -112,63 +114,63 @@ TEST_F(Std, RectParaCrystal) { // TODO: investigate numeric integration, which has become problematic under Windows // after moving code from Core/Tools to Base/Utils - std::unique_ptr<MultiLayer> sample(RectParaCrystalBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(RectParaCrystalBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("RectParaCrystal", sim, 1e-9)); } TEST_F(Std, CoreShellParticle) { - std::unique_ptr<MultiLayer> sample(CoreShellParticleBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CoreShellParticleBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CoreShellParticle", sim, 2e-10)); } TEST_F(Std, CoreShellBoxRotateZandY) { - std::unique_ptr<MultiLayer> sample(CoreShellBoxRotateZandYBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CoreShellBoxRotateZandYBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CoreShellBoxRotateZandY", sim, 2e-10)); } TEST_F(Std, MultiLayerWithRoughness) { - std::unique_ptr<MultiLayer> sample(MultiLayerWithRoughnessBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(MultiLayerWithRoughnessBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("MultiLayerWithRoughness", sim, 2e-10)); } TEST_F(Std, SquareLattice2D) { - std::unique_ptr<MultiLayer> sample(SquareLattice2DBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(SquareLattice2DBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("SquareLattice2D", sim, 2e-10)); } TEST_F(Std, CenteredSquareLattice2D) { - std::unique_ptr<MultiLayer> sample(CenteredSquareLattice2DBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CenteredSquareLattice2DBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CenteredSquareLattice2D", sim, 2e-10)); } TEST_F(Std, RotatedSquareLattice2D) { - std::unique_ptr<MultiLayer> sample(RotatedSquareLattice2DBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(RotatedSquareLattice2DBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("RotatedSquareLattice2D", sim, 2e-10)); } TEST_F(Std, FiniteSquareLattice2D) { - std::unique_ptr<MultiLayer> sample(FiniteSquareLattice2DBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(FiniteSquareLattice2DBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("FiniteSquareLattice2D", sim, 2e-10)); } TEST_F(Std, RotatedPyramids) { - std::unique_ptr<MultiLayer> sample(RotatedPyramidsBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(RotatedPyramidsBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("RotatedPyramids", sim, 2e-10)); } @@ -181,222 +183,222 @@ TEST_F(Std, ThickAbsorptiveSampleWithRoughness) TEST_F(Std, ParticleComposition) { - std::unique_ptr<MultiLayer> sample(ParticleCompositionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(ParticleCompositionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("ParticleComposition", sim, 2e-10)); } TEST_F(Std, BoxCompositionRotateX) { - std::unique_ptr<MultiLayer> sample(BoxCompositionRotateXBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(BoxCompositionRotateXBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("BoxCompositionRotateX", sim, 2e-10)); } TEST_F(Std, BoxCompositionRotateY) { - std::unique_ptr<MultiLayer> sample(BoxCompositionRotateYBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(BoxCompositionRotateYBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("BoxCompositionRotateY", sim, 2e-10)); } TEST_F(Std, BoxCompositionRotateZ) { - std::unique_ptr<MultiLayer> sample(BoxCompositionRotateZBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(BoxCompositionRotateZBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("BoxCompositionRotateZ", sim, 2e-10)); } TEST_F(Std, BoxCompositionRotateZandY) { - std::unique_ptr<MultiLayer> sample(BoxCompositionRotateZandYBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(BoxCompositionRotateZandYBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("BoxCompositionRotateZandY", sim, 2e-10)); } TEST_F(Std, BoxStackComposition) { - std::unique_ptr<MultiLayer> sample(BoxStackCompositionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(BoxStackCompositionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("BoxStackComposition", sim, 2e-10)); } DISTRIBUTION_TEST_F(Std, CylindersWithSizeDistribution) { - std::unique_ptr<MultiLayer> sample(CylindersWithSizeDistributionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CylindersWithSizeDistributionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CylindersWithSizeDistribution", sim, 2e-10)); } DISTRIBUTION_TEST_F(Std, TwoTypesCylindersDistribution) { - std::unique_ptr<MultiLayer> sample(TwoTypesCylindersDistributionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(TwoTypesCylindersDistributionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("TwoTypesCylindersDistribution", sim, 2e-10)); } DISTRIBUTION_TEST_F(Std, RotatedPyramidsDistribution) { - std::unique_ptr<MultiLayer> sample(RotatedPyramidsDistributionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(RotatedPyramidsDistributionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("RotatedPyramidsDistribution", sim, 2e-10)); } DISTRIBUTION_TEST_F(Std, SpheresWithLimitsDistribution) { - std::unique_ptr<MultiLayer> sample(SpheresWithLimitsDistributionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(SpheresWithLimitsDistributionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("SpheresWithLimitsDistribution", sim, 2e-10)); } DISTRIBUTION_TEST_F(Std, ConesWithLimitsDistribution) { - std::unique_ptr<MultiLayer> sample(ConesWithLimitsDistributionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(ConesWithLimitsDistributionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("ConesWithLimitsDistribution", sim, 2e-10)); } DISTRIBUTION_TEST_F(Std, LinkedBoxDistribution) { - std::unique_ptr<MultiLayer> sample(LinkedBoxDistributionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(LinkedBoxDistributionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("LinkedBoxDistribution", sim, 2e-10)); } TEST_F(Std, MultipleLayout) { - std::unique_ptr<MultiLayer> sample(MultipleLayoutBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(MultipleLayoutBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("MultipleLayout", sim, 2e-10)); } TEST_F(Std, ApproximationDA) { - std::unique_ptr<MultiLayer> sample(SizeDistributionDAModelBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(SizeDistributionDAModelBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("ApproximationDA", sim, 2e-10)); } TEST_F(Std, ApproximationLMA) { - std::unique_ptr<MultiLayer> sample(SizeDistributionLMAModelBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(SizeDistributionLMAModelBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("ApproximationLMA", sim, 2e-10)); } TEST_F(Std, ApproximationSSCA) { - std::unique_ptr<MultiLayer> sample(SizeDistributionSSCAModelBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(SizeDistributionSSCAModelBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("ApproximationSSCA", sim, 2e-10)); } DISTRIBUTION_TEST_F(Std, CylindersInSSCA) { - std::unique_ptr<MultiLayer> sample(CylindersInSSCABuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CylindersInSSCABuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CylindersInSSCA", sim, 2e-10)); } TEST_F(Std, CosineRipple) { - std::unique_ptr<MultiLayer> sample(CosineRippleBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CosineRippleBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CosineRipple", sim, 2e-10)); } TEST_F(Std, TriangularRipple) { - std::unique_ptr<MultiLayer> sample(TriangularRippleBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(TriangularRippleBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("TriangularRipple", sim, 2e-10)); } TEST_F(Std, AsymRipple) { - std::unique_ptr<MultiLayer> sample(AsymRippleBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(AsymRippleBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("AsymRipple", sim, 2e-10)); } TEST_F(Std, MesoCrystal) { - std::unique_ptr<MultiLayer> sample(MesoCrystalBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(MesoCrystalBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("MesoCrystal", sim, 2e-10)); } TEST_F(Std, CustomMorphology) { - std::unique_ptr<MultiLayer> sample(CustomMorphologyBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(CustomMorphologyBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("CustomMorphology", sim, 2e-10)); } TEST_F(Std, TransformBox) { - std::unique_ptr<MultiLayer> sample(TransformBoxBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(TransformBoxBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("TransformBox", sim, 1e-10)); } TEST_F(Std, MagneticParticleZeroField) { - std::unique_ptr<MultiLayer> sample(MagneticParticleZeroFieldBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(MagneticParticleZeroFieldBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("MagneticParticleZeroField", sim, 2e-10)); } TEST_F(Std, RotatedCylinder) { - std::unique_ptr<MultiLayer> sample(RotatedCylindersBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(RotatedCylindersBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("RotatedCylinder", sim, 1e-10)); } TEST_F(Std, SlicedComposition) { - std::unique_ptr<MultiLayer> sample(SlicedCompositionBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(SlicedCompositionBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("SlicedComposition", sim, 1e-10)); } TEST_F(Std, MagneticSubstrateZeroField) { - std::unique_ptr<MultiLayer> sample(MagneticSubstrateZeroFieldBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(MagneticSubstrateZeroFieldBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniZPolarizedGISAS(*sample, "PP"); EXPECT_TRUE(run("MagneticSubstrateZeroField", sim, 2e-10)); } TEST_F(Std, MagneticRotation) { - std::unique_ptr<MultiLayer> sample(MagneticRotationBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(MagneticRotationBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniZPolarizedGISAS(*sample, "PM"); EXPECT_TRUE(run("MagneticRotation", sim, 2e-10)); } TEST_F(Std, MagneticSpheres) { - std::unique_ptr<MultiLayer> sample(MagneticSpheresBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(MagneticSpheresBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniZPolarizedGISAS(*sample, "PM"); EXPECT_TRUE(run("MagneticSpheres", sim, 2e-10)); } TEST_F(Std, MagneticCylinders) { - for (const std::string& polCase: { "PP", "MP", "PM", "PP" }) { - std::unique_ptr<MultiLayer> sample(MagneticCylindersBuilder().buildSample()); + for (const std::string& polCase : {"PP", "MP", "PM", "MM"}) { + std::unique_ptr<const MultiLayer> sample(MagneticCylindersBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniZPolarizedGISAS(*sample, polCase); - EXPECT_TRUE(run("MagneticCylinders"+polCase, sim, 2e-10)); + EXPECT_TRUE(run("MagneticCylinders" + polCase, sim, 2e-10)); } } TEST_F(Std, MagneticSpheresInMagLayer) { - for (const std::string& polCase: { "PP", "MP" }) { - std::unique_ptr<MultiLayer> sample(MagneticLayerBuilder().buildSample()); + for (const std::string& polCase : {"PP", "MP"}) { + std::unique_ptr<const MultiLayer> sample(MagneticLayerBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniZPolarizedGISAS(*sample, polCase); - EXPECT_TRUE(run("MagneticSpheresInMagLayer"+polCase, sim, 2e-10)); + EXPECT_TRUE(run("MagneticSpheresInMagLayer" + polCase, sim, 2e-10)); } } @@ -536,13 +538,14 @@ TEST_F(Std, OffSpecularResonator) TEST_F(Std, FormFactorsWithAbsorption) { - for (const std::string& ffname: FormFactorComponents().keys()) { + for (const std::string& ffname : FormFactorComponents().keys()) { const IFormFactor* ff = FormFactorComponents().getItem(ffname)->clone(); ASSERT(ff); - std::unique_ptr<MultiLayer> sample(LayersWithAbsorptionBuilder().buildSampleWithFF(ff)); + std::unique_ptr<const MultiLayer> sample( + LayersWithAbsorptionBuilder().buildSampleWithFF(ff)); ASSERT(sample); GISASSimulation sim = StdSimulations::MiniGISAS_v2(*sample); - EXPECT_TRUE(run("FormFactorsWithAbsorption_"+ff->shapeName(), sim, 2e-10)); + EXPECT_TRUE(run("FormFactorsWithAbsorption_" + ff->shapeName(), sim, 2e-10)); } } #endif // PYTHON_STD_TEST @@ -562,7 +565,7 @@ TEST_F(Std, NCRoughnessInSpecular) TEST_F(Std, SuperLattice) { - std::unique_ptr<MultiLayer> sample(SuperLatticeBuilder().buildSample()); + std::unique_ptr<const MultiLayer> sample(SuperLatticeBuilder().buildSample()); GISASSimulation sim = StdSimulations::MiniGISAS(*sample); EXPECT_TRUE(run("SuperLattice", sim, 2e-10)); } @@ -593,180 +596,97 @@ TEST_F(Std, TOFResolutionComparison) "PlainMultiLayerBySLDBuilder", 1e-10)); } -TEST_F(Std, BasicSpecularPP) -{ - EXPECT_TRUE(run("BasicSpecularPP", "BasicSpecularPP", "SimpleMagneticLayerBuilder", 1e-10)); -} - -TEST_F(Std, BasicSpecularMM) -{ - EXPECT_TRUE(run("BasicSpecularMM", "BasicSpecularMM", "SimpleMagneticLayerBuilder", 1e-10)); -} - -TEST_F(Std, PolarizedQAngleReflectivityPP) +TEST_F(Std, BasicSpecular) { - EXPECT_TRUE(run("PolarizedQAngleReflectivityPP_0", "BasicSpecularPP", - "SimpleMagneticLayerBuilder", 1e-10)); - EXPECT_TRUE(run("PolarizedQAngleReflectivityPP_Q", "BasicQSpecularPP", - "SimpleMagneticLayerBuilder", 1e-10)); + std::unique_ptr<const MultiLayer> sample(SimpleMagneticLayerBuilder().buildSample()); + for (const std::string& polCase : {"PP", "MM"}) { + SpecularSimulation sim = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("BasicSpecular" + polCase, sim, 1e-10)); + } } -TEST_F(Std, PolarizedQAngleReflectivityMM) +TEST_F(Std, PolarizedQAngleReflectivity) { - EXPECT_TRUE(run("PolarizedQAngleReflectivityMM_0", "BasicSpecularMM", - "SimpleMagneticLayerBuilder", 1e-10)); - EXPECT_TRUE(run("PolarizedQAngleReflectivityMM_Q", "BasicQSpecularMM", - "SimpleMagneticLayerBuilder", 1e-10)); + std::unique_ptr<const MultiLayer> sample(SimpleMagneticLayerBuilder().buildSample()); + for (const std::string& polCase : {"PP", "MM"}) { + SpecularSimulation sim = StdSimulations::BasicYPolarizedSpecularQ(*sample, polCase); + EXPECT_TRUE(run("PolarizedQAngleReflectivity" + polCase + "_Q", sim, 1e-10)); + } } TEST_F(Std, MagneticRotationReflectivity) { - EXPECT_TRUE(run("MagneticRotationReflectivityPP", "BasicSpecularPP", - "SimpleMagneticRotationBuilder", 1e-10)); - EXPECT_TRUE(run("MagneticRotationReflectivityMM", "BasicSpecularMM", - "SimpleMagneticRotationBuilder", 1e-10)); - EXPECT_TRUE(run("MagneticRotationReflectivityPM", "BasicSpecularPM", - "SimpleMagneticRotationBuilder", 1e-10)); - EXPECT_TRUE(run("MagneticRotationReflectivityMP", "BasicSpecularMP", - "SimpleMagneticRotationBuilder", 1e-10)); -} - -TEST_F(Std, PolarizedFeNiBilayerPP) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerPP", "BasicSpecularPP", "FeNiBilayerBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerPP_Q", "BasicQSpecularPP", "FeNiBilayerBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerMM) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerMM", "BasicSpecularMM", "FeNiBilayerBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerMM_Q", "BasicQSpecularMM", "FeNiBilayerBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerTanhPP) -{ - EXPECT_TRUE( - run("PolarizedFeNiBilayerTanhPP", "BasicSpecularPP", "FeNiBilayerTanhBuilder", 1e-7)); - EXPECT_TRUE( - run("PolarizedFeNiBilayerTanhPP_Q", "BasicQSpecularPP", "FeNiBilayerTanhBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerTanhMM) -{ - EXPECT_TRUE( - run("PolarizedFeNiBilayerTanhMM", "BasicSpecularMM", "FeNiBilayerTanhBuilder", 1e-7)); - EXPECT_TRUE( - run("PolarizedFeNiBilayerTanhMM_Q", "BasicQSpecularMM", "FeNiBilayerTanhBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerNCPP) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerNCPP", "BasicSpecularPP", "FeNiBilayerNCBuilder", 1e-7)); - EXPECT_TRUE( - run("PolarizedFeNiBilayerNCPP_Q", "BasicQSpecularPP", "FeNiBilayerNCBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerNCMM) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerNCMM", "BasicSpecularMM", "FeNiBilayerTanhBuilder", 1e-7)); - EXPECT_TRUE( - run("PolarizedFeNiBilayerNCMM_Q", "BasicQSpecularMM", "FeNiBilayerNCBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerSpinFlipPP) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipPP", "BasicSpecularPP", - "FeNiBilayerSpinFlipBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipPP_Q", "BasicQSpecularPP", - "FeNiBilayerSpinFlipBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerSpinFlipMM) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipMM", "BasicSpecularMM", - "FeNiBilayerSpinFlipBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipMM_Q", "BasicQSpecularMM", - "FeNiBilayerSpinFlipBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerSpinFlipPM) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipPM", "BasicSpecularPM", - "FeNiBilayerSpinFlipBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipPM_Q", "BasicQSpecularPM", - "FeNiBilayerSpinFlipBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerSpinFlipMP) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipMP", "BasicSpecularMP", - "FeNiBilayerSpinFlipBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipMP_Q", "BasicQSpecularMP", - "FeNiBilayerSpinFlipBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerSpinFlipTanhPP) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhPP", "BasicSpecularPP", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhPP_Q", "BasicQSpecularPP", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); -} - -TEST_F(Std, PolarizedFeNiBilayerSpinFlipTanhMM) -{ - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhMM", "BasicSpecularMM", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhMM_Q", "BasicQSpecularMM", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); + std::unique_ptr<const MultiLayer> sample(SimpleMagneticRotationBuilder().buildSample()); + for (const std::string& polCase : {"PP", "PM", "MP", "MM"}) { + SpecularSimulation sim = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("MagneticRotationReflectivity" + polCase + "_Flat", sim, 1e-10)); + } } -TEST_F(Std, PolarizedFeNiBilayerSpinFlipTanhPM) +TEST_F(Std, PolarizedFeNiBilayer) { - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhPM", "BasicSpecularPM", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhPM_Q", "BasicQSpecularPM", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); + std::unique_ptr<const MultiLayer> sample(FeNiBilayerBuilder().buildSample()); + for (const std::string& polCase : {"PP", "MM"}) { + SpecularSimulation sim1 = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayer" + polCase, sim1, 1e-7)); + SpecularSimulation sim2 = StdSimulations::BasicYPolarizedSpecularQ(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayer" + polCase + "_Q", sim2, 1e-7)); + } } -TEST_F(Std, PolarizedFeNiBilayerSpinFlipTanhMP) +TEST_F(Std, PolarizedFeNiBilayerTanh) { - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhMP", "BasicSpecularMP", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanhMP_Q", "BasicQSpecularMP", - "FeNiBilayerSpinFlipTanhBuilder", 1e-7)); + std::unique_ptr<const MultiLayer> sample(FeNiBilayerTanhBuilder().buildSample()); + for (const std::string& polCase : {"PP", "MM"}) { + SpecularSimulation sim1 = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerTanh" + polCase, sim1, 1e-7)); + SpecularSimulation sim2 = StdSimulations::BasicYPolarizedSpecularQ(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerTanh" + polCase + "_Q", sim2, 1e-7)); + } } -TEST_F(Std, PolarizedFeNiBilayerSpinFlipNCPP) +TEST_F(Std, PolarizedFeNiBilayerNC) { - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCPP", "BasicSpecularPP", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCPP_Q", "BasicQSpecularPP", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); + std::unique_ptr<const MultiLayer> sample(FeNiBilayerNCBuilder().buildSample()); + for (const std::string& polCase : {"PP", "MM"}) { + SpecularSimulation sim1 = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerNC" + polCase, sim1, 1e-7)); + SpecularSimulation sim2 = StdSimulations::BasicYPolarizedSpecularQ(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerNC" + polCase + "_Q", sim2, 1e-7)); + } } -TEST_F(Std, PolarizedFeNiBilayerSpinFlipNCMM) +TEST_F(Std, PolarizedFeNiBilayerSpinFlip) { - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCMM", "BasicSpecularMM", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCMM_Q", "BasicQSpecularMM", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); + std::unique_ptr<const MultiLayer> sample(FeNiBilayerSpinFlipBuilder().buildSample()); + for (const std::string& polCase : {"PP", "PM", "MP", "MM"}) { + SpecularSimulation sim1 = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlip" + polCase, sim1, 1e-7)); + SpecularSimulation sim2 = StdSimulations::BasicYPolarizedSpecularQ(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlip" + polCase + "_Q", sim2, 1e-7)); + } } -TEST_F(Std, PolarizedFeNiBilayerSpinFlipNCPM) +TEST_F(Std, PolarizedFeNiBilayerSpinFlipTanh) { - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCPM", "BasicSpecularPM", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCPM_Q", "BasicQSpecularPM", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); + std::unique_ptr<const MultiLayer> sample(FeNiBilayerSpinFlipTanhBuilder().buildSample()); + for (const std::string& polCase : {"PP", "PM", "MP", "MM"}) { + SpecularSimulation sim1 = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanh" + polCase, sim1, 1e-7)); + SpecularSimulation sim2 = StdSimulations::BasicYPolarizedSpecularQ(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipTanh" + polCase + "_Q", sim2, 1e-7)); + } } -TEST_F(Std, PolarizedFeNiBilayerSpinFlipNCMP) +TEST_F(Std, PolarizedFeNiBilayerSpinFlipNC) { - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCMP", "BasicSpecularMP", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); - EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNCMP_Q", "BasicQSpecularMP", - "FeNiBilayerSpinFlipNCBuilder", 1e-7)); + std::unique_ptr<const MultiLayer> sample(FeNiBilayerSpinFlipNCBuilder().buildSample()); + for (const std::string& polCase : {"PP", "PM", "MP", "MM"}) { + SpecularSimulation sim1 = StdSimulations::BasicYPolarizedSpecular(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNC" + polCase, sim1, 1e-7)); + SpecularSimulation sim2 = StdSimulations::BasicYPolarizedSpecularQ(*sample, polCase); + EXPECT_TRUE(run("PolarizedFeNiBilayerSpinFlipNC" + polCase + "_Q", sim2, 1e-7)); + } } TEST_F(Std, DepthProbeTest) diff --git a/Tests/ReferenceData/Std/PolarizedFeNiBilayerNCMM.int.gz b/Tests/ReferenceData/Std/PolarizedFeNiBilayerNCMM.int.gz index ff5bf6a34f582372f33cb340c8fe51c0ccb8f87f..7214b36db83f7e371d43aa6949ae63bda2746dde 100644 GIT binary patch delta 22780 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	{MMqAd5yEl zrRL^z*v}?lV*Z8+0%O6%UP@WC9#UJF<)dvr@)b<i^nbomP}_Bvi<8^$*c*346RlA5 z0pSZ(!nb-qWKqUBt9BWpdo1Yk!k{9Aru;iVNL`Wj0BH_(ESasF8~*Y~lB0bh1tW?P z4x-f!$vil;d`99V0$xFzI%aq_*0+NAO!)MXqfdGsk!Z}v%=9Vyiz~ytqU*&N1Nj-3 zVC(mz>N3so=b1C}w1krCR%x%2Y?VTwSd|R)m{8Z-Lvvc+^6}goHP?$gQu)t3fzwz3 zq)~MK+aYWrOF1lLn5JUNfLd_?fnupmy9!>gClYqwyj{rpAp*8-gQtfU=;CLPd}hd& z=LjDs-6nP4U^*A($l2*qf}`N;Fy)ckmh?5m8Z#a0RAiwy4|}*8RS3LLE5l35%mVZ3 zpzu->-(-G+`fSlPc8}zc9yU3)pFIEqX6Hkk-pt2pUBNjmVTjPJ9>MQ^Q1a(Qo2u|K zRc3{aKS`*CNzHHLt|L)?S!N9BzRrB{;X6%@@#VtO6G^M5{@ZroNZF5<2`lx#zFEH9 z9y(HVGn&<=D;xA{1o4ib=xQz2I?Zb*@xb?ozZj)8@6KUrYBVD3U*{TH(DD=m7usmt zw>>kk)hrnmXo6h+=lxZ!X%+@6?%A0)yd~9-<%YF&<~<PnksBeyTB!PXp#7EBQV<Ap zzZTu<TK%~7qu~?n+WHmf7<gmhYS#_%oko-QtM)IyT8gM_bM>l|_MnS>6!I<W-jW*` zPo;yh5h~l!+OKY687x*+jPEjmrxNrb;VR|Jh2@ScIneQBA4aK;?FAG6${PieC8cdD z0?e1(iLzYWl(xmjj?5fVhjUy^AJ3*@7>BCG`(%XY;zwNfk^(iGdD>1LYzb!gO0~zf zx>DIDgoYt2*?CQFuWpiI6AuVn=dW(Bsw-;JHI}!)(PMRjMPQ`_e%l2g=MOll3S@2d z(A|}(OUf-ZjK|`u@Ka_&0^jR?(G1@G`U3T$Y<zC=8OWyWN%etq;v@^zAHB;{G&qd< zLkh>*l{2D{Q#VKzQ`z^E2=jah16S17?aR4IHj+)IyWI7b#Y{T)v_IqDh3#Z>zob4! zEdpKIX)+V3Y?HSMKIjYpq+YOl!qND-;PfOtKZAR71HR?4;Ws!J7f)yVr@e-V(L%#f z?d`}U8aeiJnP^IASCxnVY3W8Gs$Y{SO;HP<=Do75nDgS6s=J(Rux!0$b-~M+h%FJ} z9PW3sRb;@d-Ad}st)G<p5&TN(-pE~uM(|LBP=i+{Yf(o(8L|W9X{cxvHDw7uJJDhm zk<F%nGOQH`>e49u9+yxW&z10?CVWx4_v%XewqO&15fj*?=)$4m=nD<=b$$%-)YY|* zx!K#@6aPeC6W)jr!F0(wl8bLDUDaJ$3UGsxpt`F+u|n{wkC^KSo}<{98BO@&cnX_u zJUi-3krtoGBs~CbouM4r4><zi2lx?gm||-1jWgD#vP1FEmnmsY`_@Il`GUQcpJQnz zf9|RT<jZq;xawBjo1~W628t+CbUX%be!eT!bX}|`nPq~0NFGT`DCxPC3ZgKOXic!i zXaubqX<>uDiBYX_`%`qpZcw+KEl@Y6BiuhGe)Vl4O3(!4pDx!EP00(3od-0cguRkJ z?(6)aD?fCVwBO+n1rrlYW!ubw$9n&fb`QOrJNJ*6<e^o8uzu@s9B1u_b)|>cT4T#d zbMG9jXSJLoc=9n+aiYV+s=r+gZ7XmELnc(rf)HI#N7RQ(u^t_+vL)iJ=TQA!8J};? z>Unl~!8m|WuM+(T!A)^nkf;NXO$a4{W=(>r=p9?>Gx0aC&$UAeddC%&oP_;m2W85_ zz`m;;$y7!<pPBYx&oR8M38;5p1e9S+f??TEyOQSEu%EaqU%6sH4G|xHz$%wV<&wkE z{n-%%XFX+-sHxUp3TN{Wl(e7Gm?}3B;<`>a9|eK0Ib04!YA#9D%=^wz3e=m2c_ywF z$Fv(pPRd)$(=^T()m5;${&@E1`&14ZT{n>(!2)Hk8^$y^r!B16V=oMz(H7o_TU6O& zPG6GP*4>ehA8L)neWEU?P+VaSI^Gd+FCcL(1vW|-?z)sw;Mm-8?|!~mYy{s^)r#r2 z{DJ^j_;~7#w8TAIv$2T|@eIdYT}NBL;kjCjMTl+2ir?}R2Avnx$fcgek^>G9ysjU5 zi6$OWuJCI%_r|hjGxI)YT#JI?d64?Ek{`#d!A0)vBamNI)<XG9zc^XUA7%gk_8ZUN zC*f;|JGCF38+-?z&dSi1R+5OFO%H)qmHPmSxh2zT+!AUoT9?JNDX-PFP-wA_V4ZW0 zcm=NVjb97Y6&n|2r~*pyShy^9*Vhz^#_he($2xzY@0=0Rd%79rr8jHumA7=j-sMR{ ztF)|?zTu%yF87<|+(SrZ2Nzrlup4m`cYEmMt<2=+@|LXbA9Sq<p5I-;KsobrgB$<^ z|FasFXs$5)oeD!AmP&l}z?@n&B{7Mf@6WqwmO~yPV<FnF9E{*SG7$|YY3u}w`c|Bb z82wanS{sqx<LHAUFsfI}gr74${xs(r(bSujuk3y&Wic=EnexBXsnV{k{0KS>&f8n+ z7UYM^6iR8Pb<&h5puF~lR5^}FM_d87GdM+2u>og=K0IP&8-5n{dGZmeUI@-X+ozwN z30JLbX|%(CXnsN4#>7f03nn^mB!dKL!?tY1HvKR;o+51RdUZMsO9o~7G{}BpM;G`A zmwPi_CmGCysI#ALbUmHVAt62{b{Z~kN8Np3<oIq^%u@}l)uc|b!_PFt_VWQ^__O;s zCQrvCsc7#d;hcmca~$|tGKc?RQhs)DH2;NZe6vi}Q(HcfXMe$sCEGk*Bpn(WmMN9O z#FfVtkqEk{M_E0-)SnT)jgE;cf`_DH%92^3epiG_OR!(`2W?3z4WZ8z`*nf^l`_ro zHPQ3*sl|0wAuU~I*LOhyjKRQuS<{siXOO*jf##eU=g&t?p30SNH%L3C<x~_xXodgP z9ql*b%}l)~9<~x<8+_sW0{*pSH|fH6+;Fx+jI4=oZsq!>!dW466~8pH6wAhC_GkPO znr&8dGBwfl2!FxzSe_EYEwP8shZ1+2nK|zI<}TNZ>JDtK!v)PDkEuW_CPfyPo2;y9 z`=#yy)~r`%X2FWL;&7HOcgh0kupmR0R3_FM*>l<Fd3{<Z^hdGXkdVA<-rV;;EL}Yq zNyQQnAEDW2PTx)AP^&jwG~nlvV-n8f5O4J$ibfSURW<ch(jz^W=k4V8IB>9~yHVtr zCd{$WcI5#|;DsyI#R9y|HF-M0b-bO-?VL^`hdn@pFg&sEId{FQ34M(9nV@Miv@l32 zO!lA2Tb-K6e<PAV^-?;CHKwiQTec9&EO&dvGlK8<*U@R+@!UfJFx`|Hy@%mg$YuGV zMmcBv$a+~cq+5l1rRu#;p=$bq%wH_p+P2miZ5wNyOt<p<kCZ?W+HuE^Dw0aLvu;if zQ*lhU{yp+R*wL=H>~X@z`DvKA7&sa;*U~A!l5~q$=8=W*yv%E9`~)g!j7bJ=7QBD` zt17*-WRsuew?x>q4-iu=F5KowTye;O`Q0rs_1B&M8Ee6_nfSm7!V#?)D@s|0^2@8U zWFeBwMY<J`@ICNb_!BM&p_7u9CEdL8V|jFwy*5EJp`gp|<bk*!Q!EdEdmW#N)JwvS zg?C<+8ma~n<?D{QL*?!*ypQgzIZ+W~*I}WUs<E0!OM#KOFQNY)6V51&U}cDyzRjKm z6(z@zRS5EOC@zF+W<4@`4b8lDJKFu2*!`xSWxE=C$`x2q&)idm@G36D9v0;kv$YdH zx!x_P^1Gvefv}OxS>fmBZ)yBDc$xCrw6MQiYHO^Bp#-37{o(g!&?u#e%W}EymAt8B zq`|F6{tW)L=}K_zoRclo<x~8zWmYt+M664h>eArbjHumUu!K7P>H5$`h_q8f_5mOA z^o-%CfeqLdDLk#{j~V(KZLWD!=9a7ZC1g7qWuPAW;uYABWxGe!vJ72*lZ*a=apu{s znFxL_w!4}aCyKo?7D+(vyX86|mf&7rST4r5Gk?kY)&vY)ue&U(IY?H*s+Nh!1e8*m zW0XNI<Mb*@(v8@8X+iFzocjCRsq>`yZwCav;>y5*>iKK16Xu--p#rUX9HLuQ-P!BK zj&_pdi-I%ocV53_t#N&F-1=3!fHjoE!jb~{RMebvC|@a0PZ;ZgY8kBtrRjBbu1Zv| z-HRwPD_S_`2Qv{nL4H(HukfGRT*ld-BuRB~tF!dKWp@O-r_n1hx7UAXW3EdRWW3uM zl12sMjH8mt4mZC-NzlScuyT}?Y0XR~9yoBp{^IUcrB^OSigm#)?P1dmZ7+JmxvZ}2 zIX7*X(K1=O6MosQkQ>xbhkCUztLPi2h*N+kN-!_|OM`55o>~`5?3DX_)x}2qiUCpQ zq`xG9X^bz;;;##loSl`#l<t_@kHAON@+tv6tgGbW)6rJ~1Vzu{SL&(#!C3UYm)2q0 zf>a{*!eFixTc__@+i$5;3zfs2$kkzk{JWwXC%<MG%UemQYfDbKcL*o3H8m3T$6c_( zv4%j&NA+3kd3Y=9B7A3rl;I4@xFZ8=dH1I7#jj~XKE!Lyb}DtLm>RbW@{Ma4-46ko zPw$>l7yYTLAmOA=VnJtL%tOx#9P8g~-8ZGt%`FwCWCBxpt}NE>m<U|`dETS>I*L>4 zj+Cw$ZQL_^{`o8D+5N0erjwL_yaAZR${?{}Fs{r@$RKIXSOR~tn)?kUbmvE46$(Y> zy+I<MxevKAGo)Etg-|gm+?Rk`D#8(PdD#Hx0;{jat2CwEkPDHnG$)bE(0g(*IeEAT zjan9+r)DoB*b;S^>lM8dMtDXVtUK&N*Zn4>^J2d#52=wBkyq->_>|sgWVMCP`eS_+ zVe9V{$|9g#VEW^)o_ffp0PRn2-R?pUyGusVE7IVGdk2xYDe64fJ|%r!T2c%s@?>0k z)({kzcXs9`FzO&TmXXi3C@&EQVCs2)OgA6vGmcK0XA4qg2LZb>jO7hDed8sbC$Mfr zwgp4x$ziScSv65bhxPTH?bgt5HHh%Ozw3g)6Q03P|8pbuz>;2&2W4f2+Vej(vqG8M z)}3Jtcn(?~0e-rf8<x)+vQz+tQK=zZj!iB;eBUhj6~x_)a@g4Okjz6Jh&Cer%{a9d zv6VI*JY;DTuowIAs3!he#j)?>x+-7l4<BrIuJrS(<ShhR*ou9=3W+1;>=Y9mU1XwJ z=NDK5tw;b&qCn43b#Cqte(KzZCapenz*@?f#tJ9J>dv*&B2+}oWC5zQBzuK$zW{@= zbXT8#A$X7f&f#oD{?c`~c~!b&tB?8KU#xG^(#=uez*C$gr?S5v%Mtf<!%>y}YcB3Z zf$5H0<jq2N<(Asmsa0(^=Nj!gWFH}y<kx;Ji+`CoEJA>x$Vryr!LXpuY+C+X(gMaj z+rEfxt9X1nt0$B|JfIJ);-}>|>ZtJO(4fz(yX6r!@;TuyW@JIoxzPk=HEz^k4X>ev ztuwDsRs`vwVO$+8c;iE#oQ(>89O=};WVvUDW*E&#nE#*~JP8j$`CGB-<rSb>9buDY zAhcT7KdDtUz<OPwr9z>d8YKvRZ?F9OP21%cx`TK620fJ+MnF~G{&swiRW1khrk$YI z_uTF`F|NYrR@j$1oNfIT{*dkI4fZJo$ZxMUeHD40@@?AW2e(4@()=A9%$NkYO%_OA z*e=yAJAu6L^WNU>RER_p;TZ0U3u2sHMS<)7x{rD%uAu5=#?^M%5Ze2CAFU4ue_5S{ zPl;x>E?`<eyMcmVRV@`YpYz_DZ|&BRhjno`^1<In>wl5j)~@$hthciL!;M%yZ<l#m zN?FMzbMz1~QT1$CJK~Zl1UmXTEoa6u^OMG9ka|R>k0-d6;x*hTeuend&dW?4n!tN9 zJjz~L*2WuKpE+z6^W5)*O~O6z1b$&c!Qd!?8tBZe(hEq=Osg-=X2LTB*{4eF&Tj1E zjbF6537|J*wAIzt_H8qfs0ng^w21oTn1D+djwkQxr%B?@nzb?N-c?y%IA*)$%0ekE ziR;JXLH^idWquAmFU5`}gGfuHaMKUjY-57|s0k$SOkMOo%x-2^B-M}|a&BYs*o{bE z>-2G}VE}bgNJeY-e0vK%dPQSO5;xn1r17fhio$Z$;<Gs4_d4^jk^8NMbzw8n-t-lC z#w=)Rg-2E84@yIevfxKAypEq5GhfV03am*~1&t3I3s_9a@-MeGyoa?%qijW7n-8tZ zlPBOBw5YT*@>je&#HG(rejf%zv5-u9-y|%P0CWUT?38<KEGp>9ZTNFWSMwRoKI+<g z82q7C5!-V;YPc61GSwCT(aB)QG7~_J%U@<rOGwfdSN5IE$LWodR5mnpn(bR0v8`Kj zrr#@KpBssg@XSjb8|K`Hj&lvFnwC;@qc;vZ*d<U?SP1C?=5}YixM5+RN5}QC4gJjr zNua^u@-(>P)GG11Rfv#}_da0svvUWF8>jBe?YO3nO=}DKl%4`h9z8SZGAmEI+1wyy z6>8)OaX<Hrom&a53r(7Gppmcg%OaT4WB6&4dpQwn!J*`F$M{#An-t%GW8|BoqPA=e zIZT!hotZ{{mJX#Sin%wcm3<-Tj85CFk3cZLS|_avxi*jU#4h#cI@0{5T_`g~xkl2e z^`)~%fXBw|P`>cvM|rom^!`@QLMt5b_q<F;-xhG9+dK1BD=kF7m)NTvpv1;DPN>Ce z71T>D3-0ydHM*8C&$T3^o3iM}NTA><BzIU#D;fL!Ecg$0Ns`N~jn^Xnm(6l+@FKva zD!*FNhq}@Bvati}ek=U_@a;*q)#*Bzn?-Sxa_APG)H<waw78JAy#(TRs9uGi3CY#S zXj$Zp$EY9VN53-Y>Qa9p{Q=78@1VXq7r$V|R8lY#H04n6sYoCo_xeTjA^bMMe=YD^ z`5odtjgZ=|k9T20Z%L6>bj+YVN)jNtvUKR`@J`%^OY=yGOg^`r8F@UUC9IX7kg{Mu zK8-3^li^kB;!2|5gPBNawnv5^*gQne`pP&TJ2_CXZ0QAO-*7kQEnkG=OR<|Szp57Y zjUl!cRtWc;H9=_{8UJ>&bCbP?k_SvN-^nEYTPdqbGdrf9=jvP{4vMU!rYGQ^eQ*n6 zC!r(1EHZ68{PqJ31Qf9L$8x?^Atwt-plOdl>9*se@7-kZ7&37u_Q6Xl+OqYac#E)b z+mm(n<q;G6x}j$jBo1TRs-d#V*)1{$@5D1lLv7QWycDYaN`sT<zbCU}iS+hXNQLm5 z?jusswCTiyC9BY6i<P(wd;kRU6)%D6rKbpY$=WEuOCw#okkjS(%}2`pi!vt1irq|S zZ1D*`_t`FHaeQYRwH;-#fzOFSR#Ya};Bt9+LPvBFqQ6~T1|lG=#}cF%9H8U52kk2V z^t49(YD%R~rU_~X{i`WZ%8^wxOv$jwZ;|pM#NESG_l{K4Y}u$_9at4@C)%gNX1L75 zlBl-%{J8)fj!kgb>i-TeXBLPvAW-cQ`ru;B*DUy~vdV8ZBL}bO3p5}x;7hqP&Btkj zX)5KZ<-=IvJ&(@MYxVLcd>Vu^E5r(DB!!s6T0I1qF}sbqYb!3Vz74rOvv=Ckz)pZ! zrKMq1t%X(La(t?UgaGDKf&varChm6`v_Yh)(Jrcsj+bA{c<1(JpU3Ef6Vak4qm@Kk zd33qN#lowFxMsp!qW6ANhGwPyEz0clypK3#n8t(VhD`7Acm>wgT@Tw$F4{JFt*+(i zVC!d0VbD4y{lw=8>{;iNEW&4!v-BXSQ<@I*$rtH=LX=PU<ru(}QQ^5sXMnelm^3fH z(x}j`<2O<+lHsOZUmAMJR$lU|uOA~$D80!Hc__|obU#AY($DsMLs;2bq-25qEH7iZ z0p{ls;u7@AD$jpSjF~Ztw>Q%vi(A!3u|ejub3l}8n_5lnIH?$AY9_C|JNxesk8BR} z6Bk<|7e93Y2pwQ~>Lbi4`3<r5wpkTsjVYk`a0bbJI{?YCAG3l7A6DG#QE!sNi+`)e zvaRSCizbGYwOxo{^t?g|)kl-Ow;l0g@7XZ7`Y1%Nh=Ip{%${&$`=MFb6Z53rYSek1 zq;vPLQsWeq5*(-ca-&Wpjo57DSG~*lm*3=NQ4O#V6=s0(t=UKwzlWjaV%ANOH>*aF z{N4{%-#@bhm->knOx~75e$IfMbMDg>KKDazZB}af4sy=XPPD_ZcZcsW*RvhKMN6Sk ztd}O|p+{-uR`J}T`eTJ+-1-)+)hNuPkqmKvT=64E6ccqTPWu#p$QP~=Rql34q;*W8 z+>f5zfLQ@HtX^BTl+%r{${#stkshTDs+{szd!B`)qo3v89&E{Q-!d@%aDjb*gm{&u zZWVB=VkOP|#g(y$CyJmF^z$pQf9vjneV?c9tK8qwu$Ax9uj1m|BR$Wvf;yS4?ssYE zlk%%xGvX9yS4QJweR!)R{GKKETiNYCUzsJh7e)hcp7g8*f2GYnGrQ2Nk&uz|Ov5bo z;}?lf?(d}JB+kByZrg%N5jEFEeFe`M#GnRsn6}OWkjlrJ_Yq@|F6zA}dCIp%Q5<Pc z+kEcpL(_-v8EzS8Wqj4SN0L4mMhnXEgzs2>I<hdu9NYVpEzIZ@lvY={<-^coRZ>=D zO&w?exG8M)qUh;YN56df1Op^L{)o>&%L!|Vp+>8J`onI~`RWZb<Ia~UKbfyK8jKE? zjqZxVrPk4I0;%hA4Wh;i$4v*(QF05iE;x{$8(M}3J&|*^mBVN~DI%=BcO@Cba($7` zym>tWw*tvKU`O^i`zaEG9AXp7h$_pBS3~jsz#4P?z*n4pX2G@4Cn_YFlVn?WA`x9X z#M%M6===c5p2Ec{<1Zna^+w;L#;HGcpYr@ts$JenYTNo>heo*KL9Lcazq^1N%Bz8z zYfu(H&dd~lOroVIPwSODuH|~VI^ogd;ZI4Pl>tJrQw&+-=)?k#(>#q;?*eT6!2}#> zz@p8_4sXzy9D0OpZJOm;qy!KoLDq!_T_+CFq!Af@W1{tgs%i~ht#5HN6h_a~n$d)v z(+R)7TJ|l|&26q}Ws$QjD@7D0pPP4IP_y9CG@^&lIxq;TeVW+(TWyeLBINpJ%5jCO zX3$m5nhL#d-N+_OJ7(4B4JO#a!;t*|2mt>*`+e-l^zmV2za+Vlt-Ma1_H}ANDNk<N zAIoF+=n6c7KjR0I(vQ%?BHprW|J)ht$>sR^9zQV_MUlA^pRC$J3>4iV8-BaMs{P=J zv-m){M8OUO9@OAo7H#wQt6m1VL4uFlonOdH6(s8HZuLJsrnl)OA|@LTgxG6EfJ9JU zVYyB03+w*gtR(i0urx(3X+FWib^~G@hOWodv>Y&g<Db*+*H;oNsPL3=3f|&&XUuhh z)&r2$OY2W*jqO+Yx(rD@g2aRkv>C>lJzE?h9OlizQEg;!bNNwPcc)a%Ln(1b&+cNo zqF^0;Zj<`Opsq-T#p`gnA9zKKfI?=LRTB(_Y5C@|9{UD=jN~r9fJ3WNm5tZ`8zT#; z^-BC<eez7aM*Uj+>6{w2#bKFF$nbNEKXy@52K^b|zdNoI(~=5Q_C&ZsYfBvcY|Rfq zSszv0{yG~qw>E!e>GPg!W4Bqnqd&6n_}TU`SyfnQ$oa<K+2bUp8iSyQ4v1YLUKl8^ zQ3Fi1o&>B-{s;l19j8VDlt#oPXy;`FH|B6KuNsKM%4Mdg_yeaZ3@-oD+9+S-7Di)a z{!J~^Pj=VJ(>l5lEpkQlQ8g{eGIjofLB!>K5DqP8jf^1Jlr^uqo0_ne!v*Ep5SfPz z^Vt}ef;SmM>B|*)X6zILpiumU2hlE=DJ}ZLeh#*l=*+M+k>5nN!B<QfQvFR+n<}Vs z1H?HhWRJKvvjns3dM5%Q0Sak)`zl4$e)4PMyrL(;m*?@5tbNi(XW;3KB34&{VUiDn zUPtZ1B5@?cv3L!q9E2%-WsbEKL%cU6XBZr3*%yVZjV@*H{<gU*0hC#~N+?6BECXc? zte$@|9mwtrfP^R->S?wK-!yE=i3S1E-3oEcgcTFj=A4^#Bi;9}c1FS+cVQM?m~X5; zy&PmJ)N`BmamgI!!ofxFk&f^=0sqoiNFFCv$)MzpfV^)vGK;Un6f5uP^GSlSQBPkc zK46PD!POYf;M<<ofV9=J-QI$Zu%nDxiI~G9OkaZOCk6v3wH4|yW$u<xw&1!*!6>_& zJvRh76Rm(@WwEOmnoR^bM#g5YSR~YO&zQ}qY<<s%#;ZpC7!!H%<+VzT!sVxdQxL(z zZ!OPvn^a}D7oUEWw&yn_iaU?b8PD*P)|@K*HB9T0M>iD!13_Kh!2vN^%Ri-Y&v2Xm z>@~ejo=0oF>cYx!W}LC;m?TH%qwkB~=M0XT|IPw92jD5yeATHB^JVQpPjh5tk$BQm z{A7s1)qf!D=IqroEx*h@GL;S_!k2X#Clx<&m7Vx@D%EiAzG4_%s7%?7fUwM^K01je zLS~WRo}sTFNE8$zP+58I==~dgfP(8`7j{3JsI<}~VG}I6X?pj4RLQ7STC`0``qWNr z`A3?9uz^6t$P0G9&PGnsh<%JN;ztqH`8}s%^_%zPt=~6dlQUR}NoLg|S**w3?rHK2 zx^wn;<M)VQeRgfDn5Y{$NEP3&Wv$IXCvw?ijMzc`%gqtC%-iVKfb&ZC{*M*MF|EqT zxp*OtXUz3!#Y(m!dQn9+sIYxl7pRqHp|$L5pIPK`@fZxQ<KW7*vRae1DDyD(HMqxO z<_(HeLO5E?+;MWZ@*2%qHeb+5s>*M8$QZEH{@Ch@9&%$6c})HsQ@xz(VEni3G&hZ6 z@M}k_A5f$dtP;3Z$S*9X96emgp-lZlky97zdD716B$1?DP`4lT53)29)RC3$JX{Re z{}VhH!|0t_+^?xgATLL$x37$|xeahnbExNJNG^9NY+vJ(@3WF(MxY#fVYMiX{8o?D z`>BiRy|}5fFTd-|09ZCp`B15k?Es`wTn?IPxEy;Orygd1kgsM2P+jTx57aiRMXuBh zG@noHi#tCiUgF^gFb<}gr8Zm+TD6-MeAHd-_KC9+W&}Y#{)1X4+IyKnxHAn8|FTYC z#6J8Q%w)AZJyN`HrzTj_r8yr_HL{KL&2D-F)2Hziba^{3_u=Yn_eIz0szAxZEb1!Z zAjj3@suvc2Clz;Y$!4cv<&x7HR`bHoxhiHVsVUOxjC*p?jJ}VuOs2c}d>_--srGdC z*!tfPjQP~$e5f$6dO>MTFGB^5#-%FW*I*j3avp=4-Fq2_21inA>((ojjq4%T;(Zvq zN5K#qpJi1g(x^HSUqdtqnwX-MJ+(4Ecvyh#bgIpN;6|3`nGZAhVwDw;Dqo?kwuYi~ zhWoe(Wr3qJ(Q)4)^Qq_JUb(ghOE@i;w~Cp2QtHF0i~!=Qm${?RkEU%_hm^ejC9^ju zfwzGKXASthHQU8nKEB|_1nZYNRXvM|B87_br&swSS<L*V3x8Mref&v-+!@K|yCf^q zF?RZY%tg&)NT>C$oji<Xi1yVA?%7Iyr!lc&uHxc(Cacg(*w%9Xq`L13x17NBP}gqw zW9*Bo!5|={313`w-sEnYg6|6YbaYgqei>wDomy6nP?j|*G%lKQz9-3YO7XkzJJ2u) z@UA`cxjt0-ZnkFjHDz1_F>M;7uQy8cT{0ej&R3-=H>mf@c*ExWRBqKk!ns|`KT9f; zQT^4=Zel_m6)L4BzXoR0c3SW}m1!?r?$x|^MKc)#@=NhwVe&RCPyc<xA|J(kd+eK> zouo>PR@y#JerNt+Q<zDEtm)$bj&hh5cc+O4NQ?w4C-UiLTN2IOZqiPteo{RJ+SihQ z%Q4|VF=V{g>d+`I-ym$x&7(&2c@m2BesWA=y##td3@~%p7a2S%)AFd^tDqSYFR>@5 zxoH33GRVBE=suFwm{mO)X6rl~jX>!Nr7PImSi0P(U3Ar&bZRo27^LguAGjBh?q6>5 zsxIDS#El^ZTYH|G|HU-^mWtOUVmDlW<|4yIx6FR1`=S+x@HZw>4W^$ZU-Pdqoporr zP5|nS=tiTSYq)s65YlmX`1WibjR<@~Z){6PPf{xZwnK4ScR3~|$tatV+VvhOqYVk5 zb_V&OQsaZ8y4KODYDLI#F;jYa{{d}G4Zp~FFB#-&llO8u*#o=Vqg$^=o3EUI7`JNR zDx5DKbk&pARx8lISz&Hxq9T}aQKg*qg6~tfJ$KIWQ$Go)HUP!4uePW*uPQxvK7Mi) zT<p}i>95N<O~wdt8yUCD9I9|v9kH#;U@$$W*lm7fyPSVEZDJM$%C3r;yP0UOdgduS z9F-{lYy}Y9MF%ML!IbEgJe7ifZHAJL^?ENHWdj4fkJy+^OW#fQ>t#GLK53Tj`Byd0 zu=zv|U01bBK9xdZ$G_yIY3yeb=AmY8o<a(p-$(6%<+LbDbWsw;O2ew<hvO&$s?n^j z+-07)&5~JBjP?EVn`N~KUyTd%BM+6!KIn&hDpVexWEwR!6wd_K=e;<8ax^JEQx?9` zQmo6d^y2uzMx8K5D_2)%!^{ohKMI46)}ScD>YH8mR&6&8Vzi5nGyTb?r*kh+_8#<P zzB1XuoLolM?vqeQm+PpqpWdMQm^6BJJ$Pgnttn#^Hx~s|E&;SL$kprA#PCyUKK)b^ zHA4(HSWmt3hdLOg0Om4(y+5hzr@lKcUms<&uem<%9h)*5E912JIdIm{L5hF)Ia*X| z&Sq&b9|x#a*tgIZ_XeA<LG8=*l|_`wcYKxVr$Q`jF-2_a;Qq|I?z@G)9iP_jLbaN~ zDZazYa`{5>%b9zC{@p{vvy0!Tuu|o~0FvG9@zH%uvSGT`&iXum{EJkkeRZI#@}jMS zvAIl9aWbE+*ke6YG(SGA)m>paPh7YxBWu`!Lrbux)HRW?=q`53fG9LUz4|1Gt#Jp7 z>%`)omBr-_RkH7+THFg$tfAb^t1u65aS@~M5o^|y)EQ3XDn6Kc$|<$h9G@l1z8Fn4 z+RMXZ=04@DK9@;<XFt=KOYuEHV2!kj=Hfk4;x4M_pWdiX298b*yB6+MJI>u^po@}y zz7O85G}npCa5Ax6)jFc(YSJ5SirTU1dVh&GyVWcCyqryXAcMl~V(wY}GA6C*ZY<wp zP7f0!sOzcLq!tkKMvt$b)swr89|k3IH;H62b-D{{_!`cCLUb+M)Z=HA6CY6nI=9{Y zzL#shLH7JC4r==f{b%d!&aT@Q{IGNobE0N0D8pCr8CjZRxpQ5HN6d${*m7H2b-NCa zkryoKHQCk1F4I2NT<#TU-=g>G*TB6BxV0kw_ABxOV8zdEUEhp17&t8zzPFm;j8-(& zeb)fv#IWdp<<&XHM4v?|U3+z}+2pg1GI-U)Flth)N8m%Hw{J0pfYDGcI*@8N&84Rn z`y+)mRg=VLa!5r2eo+R_{oo>0tx|*}uPQpGvh(Xey2-`7%}Pta*nQ5%MxnE?>iu<c ztQfuIvVgm{kL%UP&NhE)0Z9`u_HIvR`yje_sMxoEJ@fG6t&o6|WMxZ7uQTmXqbkM- zJFj>!aFKff+VMcRABVvJ6!MY1&FOj8CSFibetcT)PN6GVnA_|;Xr{6)Yhr57V?xjp zLpSz)b)U*kLJKZpO2_)Ew<1({k+;t-3&`eJqBr|G(gr(mqpHJ?oB1UsaK-19(T0l- z*OZ)peQQi#Cs~nvW`tpD!}<V*r*h%B4N^G>v{i}Q&DBZ#uhAn<-cx-7SMNzD14+xL zg5sglpHQrYQ~VcmODlPQIsUqUMyb06^mVHK#O!=wVrO}E%~HK%w^DTH6*K;)a+_1m zj(1dTEo;JG$@#w((6-q`T_3+OmXO%iVdIm3{x`c5F74jmFG|a-SdvoSBV}`NuiCx` zdVXZ6Sod(xKC0v9b}Js=6JtNMx6HDmVrk!uv>u+cHbC-G!%@3INzDcqeyB`1pqasv zr_O_>bdph1c{b-24+hkrza16(2B3wF@)012AhS{*6#RoVt0&6cDa}Q7a4PX5_p+>i z?>=<$;A&>cm7QN3+&%GJep0`0ATyG=nruB2^`6}URi@u*Zr}6cM=<~mKWI;H_;}FC zuEbbvd1M8L0;J%HyFZy}3mOuIe?DK0yk^4^9q(9=F&3(N-l6@;5*5u?m+rx%Ry^j{ zu$YuhEtH>lL5ZQ55jk?P{;-Q7sk!cdwVgeqj)@M`wdMF5cXKVrXuiY1q)-=UH&v{2 z##pS()gZfm=Yt2(95eYZCvs=P0nrl$g|=r8_vw~3ZtkrwKI?5?H`=B7YzL#ys};f3 zbH;eepfh7n^8Cn!T@21>fa>xv>Kai6M@5&5)J&g|@tDo|$~1+Hgw!5?eb@|tAW{;w zo~W6*C?(UyvgV5)bQ?(gJo(8_+(J&55$efzmab&sBb8#li#l@&5<S6wUIlIu4YtWm z#}GQtagDg)(dF7`6Q+uYNdU)obBV8AV?JM1;>)HsFF)19=2v&-JlEng$lT%F0U`Uz zPj>asrXk>U9He6K1{w@-+uam@H?iq7M90ZxILQZhn~bttUb!tB-@vF!@9}2}UzqFU zJMg*lgrff<zRG}pCngKDI-S?Xbk4$h*KlvplTS8&q4?P>#S%wiw|F}$Lsc3>Mql?h z+9(h1nSb5-G^^ch``k<G&~=h4)D-ylE)<+R)7HLgU@A{1+u+~JK4!9i+rHx(b43lO zvWn}N$^hnIfWud2@WE;ZQ=0FIg;o(xU&oiq&5Bm&LtBPBp~NL(l*FWieN8+jM3|h( zYZ_y*Yq8px&i7nat4}9wanwRVP`8VN{oD>A#7?MtSEWc2lFpFjqD5vbRfD2Z6Nk5G z=twDv-Fa{%3th@&EoxkU57kOrX<8|MuFt|^(f=@f4urX!j82->&!AvHqpqt<^}9n4 z6Y1E|#rbF446^SP@L53a`&yOqYF{S?{L&_~!@Bb|?79%OAahsLe6qq@T<mI?V~+`Y z)Z^F4L0qPxs@}@oZm{@j+Q!UphVL**<7*jgUWF>;Liu9xD;rjS5-#Gi5>qu<qA0C5 zhXKMm>KkRk;p5@ibX+PWr_aTMZgCe*FXz{or!Z&?HI&ooYUH|A$u3jIWEGSY!#k48 zs#)2JfIl3&$qkdk=5?oeFhH9=!Vt|ghp!D4yZeplY`$|$Jv;aj7hs+>pdP5<ETy{j z5*Z8r$~Xuqz13BJtX87>E;H`AwejcE`{2SAT+KSXeZ40G<N*+RcO1o};KBrmnw$r1 zlZu&CnTGR~8MfVtnX}KNBY~=y@dsU=tJnq1+zFA~PG-{f)SUL?iE+lAi^6N!)j|)a z(hR{J(|J$jdF*_dHtdH>0>7RDlkezAW_W-7R@u%!c3GW&x(U_fV(s^48$2qXslXqv zf_zIUHW=l2L0m80C{S6)Ghg~%>$0Ts)Meld;sUNI-R%P@$DYZ{z9g1Qa0REy_rDQe zBgOPxAF5r%(Cy9`hmFr2bTb6gJxeDzCFSCB@nTbMNW2g6F(jP;B_Us)A2NZhnw?Rr zr(%jJAKue{_YTfLPQga-xs_QCds-d+q1qgQT{Pm>yGIBx_S;i4S2Ck!clP$fXT{Kq zQeWOxW9||Y99+jL7BX80vaIGZoFwp?g(Att3{3K8n*G{%%O~ncHUtZO{lx>wa}~r* zp1%C&<Y{yw_1YZngf~dMSwGY49#1#f%~cd;3`Yfj^`*yGHsZKG>!t3|4*KgWBX3;y zOxxi6>R%=RcALwig6t%V%<pbcIsDu4m?l}RKBwD<VKa<u6tnB!q(6+qkmBRbY?&`Q zY{YT3{tlOdqiS6=V;C`aq_0=69KH6Gm$+#u+3wXK+|1KYrR<a%(+1tW40W8@gnjYv zW$G?}1$#2ZzZchtWc=zb`hpz^-0P|y8O&B=$Z$;0QF=Ix%c42?P`R(S5*9iPaQ$JO zkk#5XT;7P$4fJX}ldZmS*5V>*>d#!9HNcbe9yoQlkCBHq4Np8GMgoPI@nyZb26WS? zYp31){2Hls*njO@(AvMoTn+kI+Rmqb@&u%Rm-K+g_JTg>8Qs>D)6DMTEHG(1&fUNH ztXElSav2qkc<0-y)&9^LQr*gIY7=!bWw@&LW$1^{E+mI1ZIZnSi@2&D8rM5l2<+~Z zPb@tclwzGWE<V;@q8)L*tHdduz)_tqjw0X9<nrz?AL|U+)mSAvEyqPMs9+6woxj6> z(6G*3LnV1Fm+-ZzX3CD5tccHoWEZg}8(2SVu&`ShGhJ2Fr(S)Q3a^oiCtP*Yp4g2G zy~N9#$|jwJz;!-iMYpIidm@QXPN5hGZx?7Ei*89}vBGPYJrF=625HRfxVjqx*(fu2 zTy4cT)ZfY&o}<J7)v@mu{bpx`5<h}}s(Rkb9qp=odz0*Z0st=M%dvLmY3-FURU2Pb z-3_Nx#RfH4b-eRH*c~KLmbU?uPFz@GBW;hpz`-P&PGolY*Xq>r9*A)Gmy5EpU6~}y z^RKz)DYe&}C)(jgepULS&$tnu^8S}6W*tcryXUxMF;22E5w|#wdK?u=E;~+toekYx zg$w9?Cri$Dp<qhBSA**dHRc7h%>G#r5T+w`=Q%R?6l8@2f?I>tNiLrColW%ESk0&J z;h%djAeEdiy{=AUnThePPUgvA@6n$g1#cJ^dx6u{)O8LUEk7OqlD^2a$yA?tniLIG zE-<Vvc1ndR6y@Mio&IG4+@iIAf6r<7ytiAQ1Vy~xI)%c`GSsS-xvQ8Tt&FBt8B*V` zIQ?rK9fV<43Cs8@#9~I2GlU+494#F=#IvK>SIGpB#&`)G|;UC^mw``Lx3Q%alAN zx4*+?;V{XizO)>!4%LpwpDc7nb3rLVgYWZUT9p+gF6U+HLS>i550B%27>G!2r90}P z|H-E3`kPvqrH*$+>~W}KgD#aP*2(d6-y)$GvA(z{iK*7ywYd7}4rJmcPUhgkTtBge zsdtT>lCL9OcK2)Is!fMJblY57*Zs|O#`@$<oA-Zh{Lbh&3SP2oJREmm4KMSIvPV>= zulT5<`k21)nOy!Cv<TaOKq|+1gVMS3RC0a!lU5~BsWEh1QfzvpU2^TZ8SUP7aML|2 z?eSg{)rI7tcgFD1%3^mjE=r!i+FpIn!c8PJnsuiUYqkz*5?HRz26h(iot&N@#1u?# zekLmY7w`yenI}&RzR7qPZkd=ar#q*0=2;Wn*|V8!@JRLVwF#krb_>}vHT+w30$@2v zZulyhh7w?p#AS#`fKWl%il2DFP+~Ii&n;`8%oCQ0LNS+Xqf!#Z&do@^CY|6-xokYO z2cKF?uEot*0N<yEj$;^qDt;0olipEXv-nIIwG(8|`pPcXmbkXZu7>F@uM7@Vh#1=G zUaNS}%iN9ZCp2?^`3n7oYJDBG+N4bO$WJO^jA1P{ReE@;;p<i0ykd|F3Z!g&iK8-B z*4moW*>!IGU{I^FS@v@xi7G9j+NaBoC+eM;m-6Z@QGLdkM>3bL?$u`W(@vIO-GMeJ zSh-^QsZz2pULXF39kKa+#Q-p0^G{k20I;m)PM!%RR0pPi<}r6>ZRKuLm$T<HhB{1& z<2_GO5Z`Ea^K+9dJw;Ja@wXB&i&}q<x?q<LrRjz40;Z@PYUbt(Zl+uQUIKb?m?hKZ zsgIgu8q~WNn>BVMmKl+SChy|wuB`k)7+SEL4FHT_a3YPBM?WB~*;4vGU&2h*Y?rkh zpTN2fb-&1e_W9_5{IOl%^1}5J2skr@oxR}xA^wl-!SK;|-eYKeo<OA=?M)H!^wA81 ziLDX5oHsO!ur-JTXmxdt!~qoKl;o=)E3K-XyC}yu))VSA5bcz9clP5IGvSHRhL4te zH27rbm^H5#mlbA|zshB&Qv9q}jS{WrGiN`ifxuLMO+YF8ZqY9$%!Ly9b0ga)Gi{T& za6qfGLkxZ-Nk4aX{8LxVICjR)@65=Ds*>GkxN5#HU-zbQS$Nwq`sddclXIDl+1+{> zQVF^__AKU4&8cz+b^ol}eH#%DcaAJyZM+yjL>p;NjygDqZu-{k8Ex)NVU=23Hi^v4 zpiRPm)u-Bod^VlNFNb>4MnGq4-+t8ka36OyH}ZWh$An~6HfU!A9)4hGINpxT6Fb>` zYRvdzGn3;eYH_Pg*Yp_yf=z}b?U@-LDh0I-_e>m>K2bIGSxuo^L$dle0PEuwH&8jM z<$3Ryf5{-z6GHpB&xvti33t|{G(1lxYvg8ssJY{)V$-9z^{cro3RxK85`jEiY|4Z_ z;85iU*Aw5(xne?#N46XOq_q?uKC>Gs3KyR|cZ+^%hz2-*T2D0d&22N2(z<89k;MAL zKyjeV>hp4wt1C%Wy|^!7cj1%NT<!|boF0;A>d`lM#Vi@1SD!g0&y3>-804t9DhY0X z_f-)|xuz29bzetn$P9&wPBxhXH*97`8p-8%_*O2{%daez-T%e#vFfX23R;9bLGwAW zX>-VFAudift&+Ra4&Wydkoo2EOG!R^0OoJ$tg@V*<Q`SwW*4id`BZt44Fjhr8}oVe z<Ray0rBp|IVq4U?;?fY8*Jw=bvbk((b$be*Gai;D&1=`&fBfHKQ-ND@9%<S4-P$yR z<l-#5ueXpO^8Epf3ILI+>BRHQ!JwnQ=I7RtuUFi`OQf_D4~;*FIjA2?<y5FFbO{qP d=~47mCsa!}>!J913V->_{{VB59H+cG0RXoiN`e3Y delta 22922 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 RkN@(Q{|3zV68pS50RW%2)BFGc diff --git a/Tests/ReferenceData/Std/PolarizedQAngleReflectivityMM_0.int.gz b/Tests/ReferenceData/Std/PolarizedQAngleReflectivityMM_0.int.gz deleted file mode 100644 index 43ff450187b304e24a225b63179dfd8d61706303..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23405 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 Px8MFhQ*x1VygC5@{OR%b diff --git a/Tests/ReferenceData/Std/PolarizedQAngleReflectivityPP_0.int.gz b/Tests/ReferenceData/Std/PolarizedQAngleReflectivityPP_0.int.gz deleted file mode 100644 index 436b743918f042317560a4fbba81acca0dbe6a53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22941 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 S(WHO;@&5xejS}&^IspK%c}&d! diff --git a/Tests/Unit/Sample/FormFactorBasicTest.cpp b/Tests/Unit/Sample/FormFactorBasicTest.cpp index 6b83a4c5646..6c4524ee656 100644 --- a/Tests/Unit/Sample/FormFactorBasicTest.cpp +++ b/Tests/Unit/Sample/FormFactorBasicTest.cpp @@ -65,7 +65,7 @@ protected: TEST_F(FormFactorBasicTest, Name) { - FormFactorBox ff(1.,2.,3.); + FormFactorBox ff(1., 2., 3.); EXPECT_EQ(ff.className(), "FormFactorBox"); EXPECT_EQ(ff.shapeName(), "Box"); } diff --git a/auto/Wrap/doxygenCore.i b/auto/Wrap/doxygenCore.i index bcf839e2c10..33498e332bb 100644 --- a/auto/Wrap/doxygenCore.i +++ b/auto/Wrap/doxygenCore.i @@ -2261,30 +2261,6 @@ GISAS simulation with an extra long wavelength. %feature("docstring") StandardSimulations::TOFRWithPointwiseResolution "SpecularSimulation * StandardSimulations::TOFRWithPointwiseResolution() "; -%feature("docstring") StandardSimulations::BasicSpecularPP "SpecularSimulation * StandardSimulations::BasicSpecularPP() -"; - -%feature("docstring") StandardSimulations::BasicSpecularMM "SpecularSimulation * StandardSimulations::BasicSpecularMM() -"; - -%feature("docstring") StandardSimulations::BasicSpecularPM "SpecularSimulation * StandardSimulations::BasicSpecularPM() -"; - -%feature("docstring") StandardSimulations::BasicSpecularMP "SpecularSimulation * StandardSimulations::BasicSpecularMP() -"; - -%feature("docstring") StandardSimulations::BasicSpecularQPP "SpecularSimulation * StandardSimulations::BasicSpecularQPP() -"; - -%feature("docstring") StandardSimulations::BasicSpecularQMM "SpecularSimulation * StandardSimulations::BasicSpecularQMM() -"; - -%feature("docstring") StandardSimulations::BasicSpecularQPM "SpecularSimulation * StandardSimulations::BasicSpecularQPM() -"; - -%feature("docstring") StandardSimulations::BasicSpecularQMP "SpecularSimulation * StandardSimulations::BasicSpecularQMP() -"; - %feature("docstring") StandardSimulations::MiniOffSpecular "OffSpecularSimulation * StandardSimulations::MiniOffSpecular() "; -- GitLab