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

Beam defined by wavelength, direction and intensity. More...

+ Inheritance diagram for Beam:

Public Member Functions

 Beam (double wavelength, double alpha, double phi, double intensity)
 
 Beam (const Beam &other)
 
Beam & operator= (const Beam &other)
 
kvector_t getCentralK () const
 Returns the wavevector.
 
void setCentralK (double wavelength, double alpha_i, double phi_i)
 Sets the wavevector in terms of wavelength and incoming angles.
 
double getIntensity () const
 Returns the beam intensity in neutrons/sec.
 
void setIntensity (double intensity)
 Sets the beam intensity in neutrons/sec.
 
const IFootprintFactor * footprintFactor () const
 Returns footprint factor.
 
void setFootprintFactor (const IFootprintFactor &shape_factor)
 Sets footprint factor to the beam.
 
void setWidthRatio (double width_ratio)
 Sets beam to sample width ratio in footprint factor.
 
void setPolarization (const kvector_t bloch_vector)
 Sets the polarization density matrix according to the given Bloch vector.
 
kvector_t getBlochVector () const
 
Eigen::Matrix2cd getPolarization () const
 Returns the polarization density matrix (in spin basis along z-axis)
 
double getWavelength () const
 
double getAlpha () const
 
double getPhi () const
 
void accept (INodeVisitor *visitor) const override
 Calls the INodeVisitor's visit method.
 
std::vector< const INode * > getChildren () const override
 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 INode * parent () const
 
INode * parent ()
 
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.
 
ParameterPool * createParameterTree () 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)
 
IParameterized & operator= (const IParameterized &other)=delete
 
ParameterPool * parameterPool () const
 Returns pointer to the parameter pool.
 
std::string parametersToString () const
 Returns multiline string representing available parameters.
 
RealParameter & registerParameter (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)
 
RealParameter * parameter (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
 

Static Public Member Functions

static Beam horizontalBeam ()
 
- 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)
 

Additional Inherited Members

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

Detailed Description

Beam defined by wavelength, direction and intensity.

Definition at line 26 of file Beam.h.


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