BornAgain  1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
Instrument Class Reference

Assembles beam, detector and their relative positions with respect to the sample. More...

+ Inheritance diagram for Instrument:

Public Member Functions

 Instrument (const Instrument &other)
 
Instrumentoperator= (const Instrument &other)
 
void accept (INodeVisitor *visitor) const final
 Calls the INodeVisitor's visit method.
 
BeamgetBeam ()
 
const BeamgetBeam () const
 
void setBeam (const Beam &beam)
 
void setBeamParameters (double wavelength, double alpha_i, double phi_i)
 Sets the beam wavelength and incoming angles.
 
void setBeamIntensity (double intensity)
 
void setBeamPolarization (const kvector_t bloch_vector)
 Sets the beam's polarization according to the given Bloch vector.
 
double getBeamIntensity () const
 
const IDetectorgetDetector () const
 
IDetectordetector ()
 
const IDetectordetector () const
 
IDetector2Ddetector2D ()
 
const IDetector2Ddetector2D () const
 
const DetectorMaskgetDetectorMask () const
 
const IAxisgetDetectorAxis (size_t index) const
 
size_t getDetectorDimension () const
 
void setDetector (const IDetector &detector)
 Sets the detector (axes can be overwritten later)
 
void setDetectorResolutionFunction (const IResolutionFunction2D &p_resolution_function)
 Sets detector resolution function.
 
void removeDetectorResolution ()
 Removes detector resolution function.
 
void setAnalyzerProperties (const kvector_t direction, double efficiency, double total_transmission)
 Sets the polarization analyzer characteristics of the detector.
 
void applyDetectorResolution (OutputData< double > *p_intensity_map) const
 apply the detector resolution to the given intensity map
 
void initDetector ()
 init detector with beam settings
 
std::vector< const INode * > getChildren () const
 Returns a vector of children (const).
 
- Public Member Functions inherited from INode
 INode (const NodeMeta &meta, const std::vector< double > &PValues)
 
virtual std::string treeToString () const
 Returns multiline string representing tree structure below the node.
 
void registerChild (INode *node)
 
virtual void setParent (const INode *newParent)
 
const INodeparent () const
 
INodeparent ()
 
int copyNumber (const INode *node) const
 Returns copyNumber of child, which takes into account existence of children with same name.
 
std::string displayName () const
 Returns display name, composed from the name of node and it's copy number.
 
ParameterPoolcreateParameterTree () const
 Creates new parameter pool, with all local parameters and those of its children.
 
- Public Member Functions inherited from IParameterized
 IParameterized (const std::string &name="")
 
 IParameterized (const IParameterized &other)
 
IParameterizedoperator= (const IParameterized &other)=delete
 
ParameterPoolparameterPool () const
 Returns pointer to the parameter pool.
 
std::string parametersToString () const
 Returns multiline string representing available parameters.
 
RealParameterregisterParameter (const std::string &name, double *parpointer)
 
void registerVector (const std::string &base_name, kvector_t *p_vec, const std::string &units="nm")
 
void setParameterValue (const std::string &name, double value)
 
void setVectorValue (const std::string &base_name, kvector_t value)
 
RealParameterparameter (const std::string &name) const
 Returns parameter with given 'name'.
 
virtual void onChange ()
 Action to be taken in inherited class when a parameter has changed.
 
void removeParameter (const std::string &name)
 
void removeVector (const std::string &base_name)
 
void setName (const std::string &name)
 
const std::string & getName () const
 

Protected Attributes

std::unique_ptr< IDetectorm_detector
 
Beam m_beam
 
- Protected Attributes inherited from INode
const size_t m_NP
 
std::vector< double > m_P
 

Additional Inherited Members

- Static Public Member Functions inherited from IParameterized
static std::string XComponentName (const std::string &base_name)
 
static std::string YComponentName (const std::string &base_name)
 
static std::string ZComponentName (const std::string &base_name)
 

Detailed Description

Assembles beam, detector and their relative positions with respect to the sample.

Definition at line 33 of file Instrument.h.


The documentation for this class was generated from the following files: