Skip to content
Snippets Groups Projects
Commit ce11c797 authored by Wuttke, Joachim's avatar Wuttke, Joachim Committed by Wuttke, Joachim
Browse files

ISpecularScan + pol setters

parent a76ffcea
No related branches found
No related tags found
1 merge request!912hold polarization in ISpecularScan
...@@ -16,3 +16,13 @@ ...@@ -16,3 +16,13 @@
#include "Device/Pol/PolFilter.h" #include "Device/Pol/PolFilter.h"
ISpecularScan::~ISpecularScan() = default; ISpecularScan::~ISpecularScan() = default;
void ISpecularScan::setPolarization(R3 bloch_vector)
{
m_beamPolarization.reset(new R3(bloch_vector));
}
void ISpecularScan::setAnalyzer(R3 direction, double efficiency, double total_transmission)
{
m_polAnalyzer.reset(new PolFilter(direction, efficiency, total_transmission));
}
...@@ -36,6 +36,12 @@ public: ...@@ -36,6 +36,12 @@ public:
ISpecularScan* clone() const override = 0; ISpecularScan* clone() const override = 0;
~ISpecularScan() override; ~ISpecularScan() override;
//! Sets the polarization density matrix according to the given Bloch vector
void setPolarization(R3 bloch_vector);
//! Sets the polarization analyzer characteristics of the detector
void setAnalyzer(R3 direction, double efficiency, double total_transmission);
#ifndef SWIG #ifndef SWIG
//! Generates simulation elements for specular simulations //! Generates simulation elements for specular simulations
virtual std::vector<SpecularElement> generateElements(const PolMatrices& polpair) const = 0; virtual std::vector<SpecularElement> generateElements(const PolMatrices& polpair) const = 0;
......
...@@ -1042,6 +1042,16 @@ C++ includes: ISpecularScan.h ...@@ -1042,6 +1042,16 @@ C++ includes: ISpecularScan.h
%feature("docstring") ISpecularScan::~ISpecularScan "ISpecularScan::~ISpecularScan() override %feature("docstring") ISpecularScan::~ISpecularScan "ISpecularScan::~ISpecularScan() override
"; ";
%feature("docstring") ISpecularScan::setPolarization "void ISpecularScan::setPolarization(R3 bloch_vector)
Sets the polarization density matrix according to the given Bloch vector.
";
%feature("docstring") ISpecularScan::setAnalyzer "void ISpecularScan::setAnalyzer(R3 direction, double efficiency, double total_transmission)
Sets the polarization analyzer characteristics of the detector.
";
%feature("docstring") ISpecularScan::generateElements "virtual std::vector<SpecularElement> ISpecularScan::generateElements(const PolMatrices &polpair) const =0 %feature("docstring") ISpecularScan::generateElements "virtual std::vector<SpecularElement> ISpecularScan::generateElements(const PolMatrices &polpair) const =0
Generates simulation elements for specular simulations. Generates simulation elements for specular simulations.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment