glassure.scattering_factors module
- exception glassure.scattering_factors.ElementNotImplementedException(element)
Bases:
Exception
- class glassure.scattering_factors.ScatteringFactorCalculatorBrownHubbell
Bases:
ScatteringFactorCalculatorScattering factor calculator based on the work of Brown et al., 2006 and Hubbell et al., 1975.
- property elements
Returns a list of available elements.
- get_coherent_scattering_factor(element: str, q)
Calculates the coherent scattering factor for a given element and q values.
- Parameters:
element – Element symbol
q – q array
- Returns:
coherent scattering factor array
- get_incoherent_intensity(element: str, q)
Calculates the incoherent scattering intensity for a given element and q values.
- Parameters:
element – Element symbol
q – q array
- Returns:
incoherent scattering intensity array
- class glassure.scattering_factors.ScatteringFactorCalculatorHajdu
Bases:
ScatteringFactorCalculatorScattering factor calculator based on the work of Hajdu et al. (Acta Cryst. (1992). A48, 344-352).
- property elements
Returns a list of available elements.
- get_coherent_scattering_factor(element: str, q)
Calculates the coherent scattering factor for a given element and q values.
- Parameters:
element – Element symbol
q – q array
- Returns:
coherent scattering factor array
- get_incoherent_intensity(element: str, q)
Calculates the incoherent scattering intensity for a given element and q values.
- Parameters:
element – Element symbol
q – q array
- Returns:
incoherent scattering intensity array
- class glassure.scattering_factors.ScatteringFactorCalculatorXraylib
Bases:
ScatteringFactorCalculatorScattering factor calculator using xraylib library. See https://github.com/tschoonj/xraylib/wiki for more details.
- property elements
Returns a list of available elements.
- get_coherent_scattering_factor(element: str, q)
Calculates the coherent scattering factor for a given element and q values.
- Parameters:
element – Element symbol
q – q array
- Returns:
coherent scattering factor array
- get_incoherent_intensity(element: str, q)
Calculates the incoherent scattering intensity for a given element and q values, using SF_Compt for q_xr >= 0.001, and cubic interpolation for q_xr < 0.001.
- Parameters:
element – Element symbol
q – 1D numpy array of q values
- Returns:
numpy array of incoherent scattering intensity
- exception glassure.scattering_factors.SourceNotImplementedException(source)
Bases:
Exception
- glassure.scattering_factors.calculate_coherent_scattering_factor(element: str, q: ndarray, source: str = 'hajdu') ndarray
Calculates the coherent scattering factor for a given element and q values.
- Parameters:
element – Element symbol
q – q array in A^-1
source – Source of the scattering factors. Possible sources are ‘hajdu’, ‘brown_hubbell’ and ‘xraylib’.
- Returns:
coherent scattering factor array
- glassure.scattering_factors.calculate_incoherent_scattered_intensity(element: str, q: ndarray, source: str = 'hajdu') ndarray
Calculates the incoherent scattering intensity for a given element and q values.
- Parameters:
element – Element symbol
q – q array
source – Source of the scattering factors. Possible sources are ‘hajdu’, ‘brown_hubbell’ and ‘xraylib’.
- Returns:
incoherent scattering intensity array
- glassure.scattering_factors.get_available_elements(source: str) list[str]
Returns a list of available elements for a given source. Possible sources are ‘hajdu’, ‘brown_hubbell’ and ‘xraylib’.
- glassure.scattering_factors.get_calculator(source: str) ScatteringFactorCalculator
Returns the calculator for a given source. Possible sources are ‘hajdu’, ‘brown_hubbell’ and ‘xraylib’.