Specular reflectivity¶
This module contains methods to create functor_obj instances for calculation of X-ray or neutron specular reflectivity.
- escape.scattering.specrefl.pnrspec(name, qz, multilayer_obj ml, b_ext, poleff_i, poleff_f, source=None)¶
Returns functor object for calculation of polarized neutron specular reflectivity.
Changed in version 0.9.1.
Added support for qz functor_obj type.
Changed in version 0.9.3.
Added external magnetic field as the input parameter
- Parameters:
- qz: variable_obj or functor_obj
Variable or functor, which represents z-component of scattering vector
- ml: multilayer_obj
Sample description object
- b_ext: list or tuple
External magnetic field components in Tesla. The components are in the sample coordinate system.
- poleff_i: parameter_obj or double
Efficiency of the incident beam polarization. Sign of this parameter defines polarization direction, i.e. up or down.
- poleff_f: parameter_obj or double
Efficiency of the forthcoming beam polarization. Sign of this parameter defines polarization direction, i.e. up or down.
- source: source_obj
Source description object
- Returns:
functor_obj instance
- escape.scattering.specrefl.specrefl(name, qz, multilayer_obj ml, formalism='parratt', source=None)¶
Returns functor object for calculation of specular reflectivity.
Changed in version 0.9.1.
Added support for qz functor_obj type.
- Parameters:
- qz: variable_obj or functor_obj
Variable or functor, which represents z-component of scattering vector
- ml: multilayer_obj
Sample description object
- ‘formalism’: string
‘parratt’ - recursive parratt formalism (dynamic scattering) ‘kinematic’ - kinematic formalism (kinematic scattering, i.e. Born approximation) ‘matrix’ - matrix formalism (dynamic scattering) ‘dynsr’ - dynamical single reflection algorithm
- source: source_obj
Source description object
- Returns:
functor_obj instance