From 03cdf77a878ec5a33080cfdfb7e2365a19c78e6a Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Mon, 2 Aug 2021 17:12:33 +0200 Subject: [PATCH] use setPolFilters almost everywhere --- Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py | 3 +-- Examples/scatter2d/MagneticSpheres.py | 7 ++++--- Examples/varia/BasicPolarizedReflectometry.py | 3 +-- Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py | 5 ++--- Examples/varia/PolarizedSpinAsymmetry.py | 3 +-- Examples/varia/PolarizedSpinFlip.py | 4 +--- auto/Wrap/doxygenBase.i | 6 +++--- auto/Wrap/libBornAgainDevice_wrap.cpp | 2 +- 8 files changed, 14 insertions(+), 19 deletions(-) diff --git a/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py b/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py index 7a97e3dd79d..eaa59e7dc96 100755 --- a/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py +++ b/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py @@ -81,8 +81,7 @@ def get_simulation(q_axis, parameters, polarizer_dir, analyzer_dir): distr = ba.RangedDistributionGaussian(n_samples, n_sig) scan.setAbsoluteQResolution(distr, parameters["q_res"]) - simulation.beam().setPolarization(polarizer_dir) - simulation.detector().setAnalyzer(analyzer_dir, 1, 0.5) + simulation.instrument().setPolFilters(polarizer_dir, analyzer_dir, 1, 0.5) simulation.setScan(scan) return simulation diff --git a/Examples/scatter2d/MagneticSpheres.py b/Examples/scatter2d/MagneticSpheres.py index 5d43278af35..013cb38c296 100755 --- a/Examples/scatter2d/MagneticSpheres.py +++ b/Examples/scatter2d/MagneticSpheres.py @@ -48,12 +48,13 @@ def get_sample(): def get_simulation(sample): beam = ba.Beam(1e12, 0.1*nm, ba.Direction(0.5*deg, 0)) - polarizer_dir = kvector_t(0, 0, 1) - beam.setPolarization(polarizer_dir) detector = ba.SphericalDetector(200, 6*deg, 0, 3*deg) simulation = ba.GISASSimulation(beam, sample, detector) + + polarizer_dir = kvector_t(0, 0, 1) analyzer_dir = kvector_t(0, 0, -1) - simulation.detector().setAnalyzer(analyzer_dir, 1, 0.5) + simulation.instrument().setPolFilters(polarizer_dir, analyzer_dir, 1, 0.5) + return simulation diff --git a/Examples/varia/BasicPolarizedReflectometry.py b/Examples/varia/BasicPolarizedReflectometry.py index 6e9c2787272..fdb0e248f16 100755 --- a/Examples/varia/BasicPolarizedReflectometry.py +++ b/Examples/varia/BasicPolarizedReflectometry.py @@ -56,8 +56,7 @@ def run_simulation(polarizer_dir=ba.kvector_t(0, 1, 0), simulation = get_simulation(sample) # adding polarization and analyzer operator - simulation.beam().setPolarization(polarizer_dir) - simulation.detector().setAnalyzer(analyzer_dir, 1, 0.5) + simulation.instrument().setPolFilters(polarizer_dir, analyzer_dir, 1, 0.5) simulation.runSimulation() return simulation.result() diff --git a/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py b/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py index be01dcda29d..9be3c67dfcd 100755 --- a/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py +++ b/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py @@ -81,9 +81,8 @@ def run_simulation(*, sample = get_sample() simulation = get_simulation(sample) - simulation.beam().setPolarization(polarizer_dir*polarizer_efficiency) - simulation.detector().setAnalyzer(analyzer_dir, - analyzer_efficiency, 0.5) + simulation.instrument().setPolFilters(polarizer_dir*polarizer_efficiency, analyzer_dir, + analyzer_efficiency, 0.5) simulation.setBackground(ba.ConstantBackground(1e-7)) diff --git a/Examples/varia/PolarizedSpinAsymmetry.py b/Examples/varia/PolarizedSpinAsymmetry.py index 1ad373cc870..8168ffd12a4 100755 --- a/Examples/varia/PolarizedSpinAsymmetry.py +++ b/Examples/varia/PolarizedSpinAsymmetry.py @@ -80,8 +80,7 @@ def get_simulation(q_axis, parameters, polarizer_dir, analyzer_dir): distr = ba.RangedDistributionGaussian(n_samples, n_sig) scan.setAbsoluteQResolution(distr, parameters["q_res"]) - simulation.beam().setPolarization(polarizer_dir) - simulation.detector().setAnalyzer(analyzer_dir, 1, 0.5) + simulation.instrument().setPolFilters(polarizer_dir, analyzer_dir, 1, 0.5) simulation.setScan(scan) return simulation diff --git a/Examples/varia/PolarizedSpinFlip.py b/Examples/varia/PolarizedSpinFlip.py index 32e58dfbdb2..29b936156a7 100755 --- a/Examples/varia/PolarizedSpinFlip.py +++ b/Examples/varia/PolarizedSpinFlip.py @@ -55,9 +55,7 @@ def run_simulation(polarizer_dir=ba.kvector_t(0, 1, 0), sample = get_sample() simulation = get_simulation(sample) - # adding polarization and analyzer operator - simulation.beam().setPolarization(polarizer_dir) - simulation.detector().setAnalyzer(analyzer_dir, 1, 0.5) + simulation.instrument().setPolFilters(polarizer_dir, analyzer_dir, 1, 0.5) simulation.runSimulation() return simulation.result() diff --git a/auto/Wrap/doxygenBase.i b/auto/Wrap/doxygenBase.i index a191df24154..1bb99222f8a 100644 --- a/auto/Wrap/doxygenBase.i +++ b/auto/Wrap/doxygenBase.i @@ -876,7 +876,7 @@ Clips this axis to the given values. Convenience class for handling polarization density matrix and polarization analyzer operator -C++ includes: PolarizerPair.h +C++ includes: PolMatrices.h "; %feature("docstring") PolMatrices::PolMatrices "PolMatrices::PolMatrices() @@ -1772,10 +1772,10 @@ Checks if value is contained in bin: value in [m_lower, m_upper) // File: IElement_8h.xml -// File: PolarizerPair_8cpp.xml +// File: PolMatrices_8cpp.xml -// File: PolarizerPair_8h.xml +// File: PolMatrices_8h.xml // File: Bessel_8cpp.xml diff --git a/auto/Wrap/libBornAgainDevice_wrap.cpp b/auto/Wrap/libBornAgainDevice_wrap.cpp index 6d21f9740f1..5855aa29240 100644 --- a/auto/Wrap/libBornAgainDevice_wrap.cpp +++ b/auto/Wrap/libBornAgainDevice_wrap.cpp @@ -6704,7 +6704,7 @@ SWIGINTERN std::vector< std::pair< double,double > >::iterator std_vector_Sl_std SWIGINTERN std::vector< std::pair< double,double > >::iterator std_vector_Sl_std_pair_Sl_double_Sc_double_Sg__Sg__insert__SWIG_0(std::vector< std::pair< double,double > > *self,std::vector< std::pair< double,double > >::iterator pos,std::vector< std::pair< double,double > >::value_type const &x){ return self->insert(pos, x); } SWIGINTERN void std_vector_Sl_std_pair_Sl_double_Sc_double_Sg__Sg__insert__SWIG_1(std::vector< std::pair< double,double > > *self,std::vector< std::pair< double,double > >::iterator pos,std::vector< std::pair< double,double > >::size_type n,std::vector< std::pair< double,double > >::value_type const &x){ self->insert(pos, n, x); } -#include "Base/Element/PolarizerPair.h" +#include "Base/Element/PolMatrices.h" #include "Param/Distrib/ParameterDistribution.h" #include "Device/Beam/Beam.h" #include "Device/Beam/FootprintGauss.h" -- GitLab