Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

ObjCryst::GlobalScatteringPower Class Reference

Global Scattering Power. Used to approximate the scattering power of a multi-atom ZScatterer (polyhedron,...) to an isotropic scattering power. More...

#include <ZScatterer.h>

Inheritance diagram for ObjCryst::GlobalScatteringPower::

ObjCryst::ScatteringPower ObjCryst::RefinableObj List of all members.

Public Methods

 GlobalScatteringPower ()
 GlobalScatteringPower (const ZScatterer &scatt)
 GlobalScatteringPower (const GlobalScatteringPower &old)
 ~GlobalScatteringPower ()
void Init (const ZScatterer &scatt)
 Re-initialize parameters (after using the default constructor).

virtual CrystVector_double GetScatteringFactor (const ScatteringData &data, const int spgSymPosIndex=0) const
 Get the Scattering factor for all reflections of a given ScatteringData object. More...

virtual CrystVector_double GetTemperatureFactor (const ScatteringData &data, const int spgSymPosIndex=0) const
 Get the temperature factor for all reflections of a given ScatteringData object. More...

virtual CrystMatrix_double GetResonantScattFactReal (const ScatteringData &data, const int spgSymPosIndex=0) const
 Get the real part of the resonant scattering factor. More...

virtual CrystMatrix_double GetResonantScattFactImag (const ScatteringData &data, const int spgSymPosIndex=0) const
 Get the imaginary part of the resonant scattering factor. More...

virtual double GetRadius () const
 Return the physical radius of this type of scatterer (for 3D display purposes).
Warning:
this may be removed later.



Protected Methods

virtual void InitRefParList ()

Protected Attributes

ZScatterermpZScatterer
 a copy of the ZScatterer associated to this object.


Detailed Description

Global Scattering Power. Used to approximate the scattering power of a multi-atom ZScatterer (polyhedron,...) to an isotropic scattering power.

The scattering power will be (slowly) approximated to the average scattering power of this ZScatterer take in all orientations. The approximated scattering factor will include the temperature factor and resonant scattering factors contributions.

This is only used in ZScatterer, and maybe obsolete (?).


Member Function Documentation

virtual CrystMatrix_double GetResonantScattFactImag const ScatteringData   data,
const int    spgSymPosIndex = 0
const [virtual]
 

Get the imaginary part of the resonant scattering factor.

Returns:
a matrix where each row corresponds to each wavelength (currently only monochromatic experiments are made so there is only one row), and each column corresponds to each reflection only if the scattering term is anisotropic, which is not the case so far...
Parameters:
data:  the ScatteringData object, giving access to all the reflections, and a list of wavelengths.
spgSymPosIndex:  if the ScatteringPower is anisotropic, then the different symmetrics will not have the same scattering power for all reflections. This parameter is the index of the symmetric position in the Spacegroup. If spgSymPosIndex=-1, the isotropic values are returned.
Warning:
There is no anisotropic code yet, so spgSymPosIndex is simply ignored so far , but the design of this function is general for any anisotropic scattering.

Reimplemented from ObjCryst::ScatteringPower.

virtual CrystMatrix_double GetResonantScattFactReal const ScatteringData   data,
const int    spgSymPosIndex = 0
const [virtual]
 

Get the real part of the resonant scattering factor.

Returns:
a matrix where each row corresponds to each wavelength (currently only monochromatic experiments are made so there is only one row), and each column corresponds to each reflection only if the scattering term is anisotropic, which is not the case so far...
Parameters:
data:  the ScatteringData object, giving access to all the reflections and a list of wavelengths).
spgSymPosIndex:  if the ScatteringPower is anisotropic, then the different symmetrics will not have the same scattering power for all reflections. This parameter is the index of the symmetric position in the Spacegroup. If spgSymPosIndex=-1, the isotropic values are returned.
Warning:
There is no anisotropic code yet, so spgSymPosIndex is simply ignored so far , but the design of this function is general for any anisotropic scattering.

Reimplemented from ObjCryst::ScatteringPower.

virtual CrystVector_double GetScatteringFactor const ScatteringData   data,
const int    spgSymPosIndex = 0
const [virtual]
 

Get the Scattering factor for all reflections of a given ScatteringData object.

Returns:
a vector with the scattering factor for all reflections, in the same order as in the ScatteringData object. This format is independent of the radiation type (X-Ray, neutron..).
Parameters:
data:  the ScatteringData object, giving access to all the reflections.
spgSymPosIndex:  if the ScatteringPower is anisotropic, then the different symmetrics will not have the same scattering power for all reflections. This parameter is the index of the symmetric position in the Spacegroup. If spgSymPosIndex=-1, the isotropic values are returned.
Warning:
There is no anisotropic code yet, so spgSymPosIndex is simply ignored so far , but the design of this function is general for any anisotropic scattering.

Reimplemented from ObjCryst::ScatteringPower.

virtual CrystVector_double GetTemperatureFactor const ScatteringData   data,
const int    spgSymPosIndex = 0
const [virtual]
 

Get the temperature factor for all reflections of a given ScatteringData object.

Returns:
a vector with the temperature factor for all reflections, in the same order as in the ScatteringData object.
Parameters:
data:  the ScatteringData object, giving access to all the reflections.
spgSymPosIndex:  if the ScatteringPower is anisotropic, then the different symmetrics will not have the same scattering power for all reflections. This parameter is the index of the symmetric position in the Spacegroup. If spgSymPosIndex=-1, the isotropic values are returned.
Warning:
There is no anisotropic code yet, so spgSymPosIndex is simply ignored so far , but the design of this function is general for any anisotropic scattering.

Reimplemented from ObjCryst::ScatteringPower.


The documentation for this class was generated from the following file:
Generated on Wed Nov 14 19:48:37 2001 for ObjCryst++ by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001