Mantid
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Mantid::Geometry::StructureFactorCalculatorSummation Class Reference

StructureFactorCalculatorSummation. More...

#include <StructureFactorCalculatorSummation.h>

Inheritance diagram for Mantid::Geometry::StructureFactorCalculatorSummation:
Mantid::Geometry::StructureFactorCalculator

Public Member Functions

StructureFactor getF (const Kernel::V3D &hkl) const override
 Returns the structure factor obtained from the stored scatterers. More...
 
 StructureFactorCalculatorSummation ()
 
- Public Member Functions inherited from Mantid::Geometry::StructureFactorCalculator
virtual StructureFactor getF (const Kernel::V3D &hkl) const =0
 In implementations this method should return the structure factor for the specified HKL. More...
 
virtual std::vector< StructureFactorgetFs (const std::vector< Kernel::V3D > &hkls) const
 Returns structure factors for each HKL in the container. More...
 
virtual double getFSquared (const Kernel::V3D &hkl) const
 Returns F^2 for the given HKL, calling StructureFactorCalculator::getF(). More...
 
virtual std::vector< double > getFsSquared (const std::vector< Kernel::V3D > &hkls) const
 Returns structure factors for each HKL in the container. More...
 
void setCrystalStructure (const CrystalStructure &crystalStructure)
 Sets the crystal structure for which to calculate structure factors. More...
 
virtual ~StructureFactorCalculator ()=default
 

Protected Member Functions

void crystalStructureSetHook (const CrystalStructure &crystalStructure) override
 Calls updateUnitCellScatterers() to rebuild the complete list of scatterers. More...
 
std::string getV3DasString (const Kernel::V3D &point) const
 Return V3D as string without losing precision. More...
 
void updateUnitCellScatterers (const CrystalStructure &crystalStructure)
 Rebuilds the internal list of scatterers. More...
 
virtual void crystalStructureSetHook (const CrystalStructure &crystalStructure)
 This function is called from StructureFactorCalculator::setCrystalStructure() and can be overriden to perform additional actions. More...
 

Protected Attributes

CompositeBraggScatterer_sptr m_unitCellScatterers
 

Detailed Description

StructureFactorCalculatorSummation.

This implementation of StructureFactorCalculator uses the summation method provided by BraggScatterer and its sub-classes. It obtains all scatterers in the unit cell by combining the space group and the scatterers located in the asymmetric unit (both taken from CrystalStructure) and stores them.

@author Michael Wedel, ESS
@date 05/09/2015

Definition at line 25 of file StructureFactorCalculatorSummation.h.

Constructor & Destructor Documentation

◆ StructureFactorCalculatorSummation()

Mantid::Geometry::StructureFactorCalculatorSummation::StructureFactorCalculatorSummation ( )

Member Function Documentation

◆ crystalStructureSetHook()

void Mantid::Geometry::StructureFactorCalculatorSummation::crystalStructureSetHook ( const CrystalStructure crystalStructure)
overrideprotectedvirtual

Calls updateUnitCellScatterers() to rebuild the complete list of scatterers.

Reimplemented from Mantid::Geometry::StructureFactorCalculator.

Definition at line 25 of file StructureFactorCalculatorSummation.cpp.

References updateUnitCellScatterers().

◆ getF()

StructureFactor Mantid::Geometry::StructureFactorCalculatorSummation::getF ( const Kernel::V3D hkl) const
overridevirtual

Returns the structure factor obtained from the stored scatterers.

Implements Mantid::Geometry::StructureFactorCalculator.

Definition at line 20 of file StructureFactorCalculatorSummation.cpp.

References m_unitCellScatterers.

◆ getV3DasString()

std::string Mantid::Geometry::StructureFactorCalculatorSummation::getV3DasString ( const Kernel::V3D point) const
protected

Return V3D as string without losing precision.

Definition at line 69 of file StructureFactorCalculatorSummation.cpp.

Referenced by updateUnitCellScatterers().

◆ updateUnitCellScatterers()

void Mantid::Geometry::StructureFactorCalculatorSummation::updateUnitCellScatterers ( const CrystalStructure crystalStructure)
protected

Rebuilds the internal list of scatterers.

This method extracts two items from the supplied CrystalStructure object, the list of scatterers in the asymmetric unit and the space group. Then it generates all equivalent positions and creates a complete list of scatterers.

Parameters
crystalStructure:: CrystalStructure for structure factor calculation.

Definition at line 38 of file StructureFactorCalculatorSummation.cpp.

References Mantid::Geometry::CrystalStructure::getScatterers(), getV3DasString(), m_unitCellScatterers, position, and Mantid::Geometry::CrystalStructure::spaceGroup().

Referenced by crystalStructureSetHook().

Member Data Documentation

◆ m_unitCellScatterers

CompositeBraggScatterer_sptr Mantid::Geometry::StructureFactorCalculatorSummation::m_unitCellScatterers
protected

Definition at line 36 of file StructureFactorCalculatorSummation.h.

Referenced by getF(), and updateUnitCellScatterers().


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