fisx
|
Class describing an X-ray beam. More...
#include <fisx_beam.h>
Public Member Functions | |
void | setBeam (const std::vector< double > &energy, const std::vector< double > &weight=std::vector< double >(), const std::vector< int > &characteristic=std::vector< int >(), const std::vector< double > &divergency=std::vector< double >()) |
void | setBeam (const int &nValues, const double *energy, const double *weight=NULL, const int *characteristic=NULL, const double *divergency=NULL) |
void | setBeam (const int &nValues, const double *energy, const double *weight=NULL, const double *characteristic=NULL, const double *divergency=NULL) |
void | setBeam (const double &energy, const double divergency=0.0) |
const std::vector< Ray > & | getBeam () |
std::vector< std::vector< double > > | getBeamAsDoubleVectors () const |
Friends | |
std::ostream & | operator<< (std::ostream &o, Beam const &beam) |
Class describing an X-ray beam.
At this point a beam is described by a set of energies and weights. The characteristic flag just indicates if it is an energy to be considered for calculation of scattering peaks.
const std::vector< Ray > & fisx::Beam::getBeam | ( | ) |
Returns a constant reference to the internal beam.
std::vector< std::vector< double > > fisx::Beam::getBeamAsDoubleVectors | ( | ) | const |
Currently it returns a vector of "elements" in which each element is a vector of doubles with length equal to the number of energies. The first four elements are warranteed to exist and they are: [energy0, energy1, energy2, ...] [weight0, weight1, weight2, ...] [characteristic0, characteristic1, charactersitic2, ...] [divergency0, divergency1, divergency2, ...]
void fisx::Beam::setBeam | ( | const std::vector< double > & | energy, |
const std::vector< double > & | weight = std::vector<double>() , |
||
const std::vector< int > & | characteristic = std::vector<int>() , |
||
const std::vector< double > & | divergency = std::vector<double>() |
||
) |
Minimalist constructor.
Beam description given as vectors. The beam is always internally ordered.
void fisx::Beam::setBeam | ( | const int & | nValues, |
const double * | energy, | ||
const double * | weight = NULL , |
||
const int * | characteristic = NULL , |
||
const double * | divergency = NULL |
||
) |
Easy to wrap interface functions Except for the energy, you can use NULL pointers to use default values.