BeamScan now contains vector of Beams

  • Each point of BeamScan contains individual Beam, so all Beam properties can be accessed or changed independently. This leads to appearing numerous API methods like intensity(), intensityAt(i), polarization(), polarizationAt(i) etc.
  • Constructors for AlphaScan, LambdaScan and QzScan are symmetrized: they accept vector of numbers, Scale or arguments for Scale. Wavelength and inclination must be set separately.
  • Beams are created with some default values; proper wavelength and inclination should be provided separately.
  • alpha- and lambda-related methods are removed from QzScan.
  • LambdaScan utilizes footprint
  • Introduces base class ALScan with common functionality for AlphaScan and LambdaScan.
  • Code duplication is eliminated.

Resolves #649 (closed)
Resolves #650 (closed)

Edited by Mikhail Svechnikov

Merge request reports

Loading