Skip to content

aripekka/pytakagitaupin

Repository files navigation

pytakagitaupin

THIS PROJECT IS OBSOLETE. FOR NEW VERSION, SEE https://github.com/aripekka/pyTTE

Python solver for 1D Takagi-Taupin equation

Usage:

The function 'takagitaupin' in takagitaupin.py solves the reflectivity of a crystal as a function of the photon energy or the incidence angle. The crystal can be undeformed or spherically bent. Currently only symmetric Bragg case with sigma-polarisation is supported

To make the energy scan, the takagitaupin is used as follows:

sol = takagitaupin('energy',energy-vector,incidence-angle,[h,k,l],crystal-string,bending-radius,crystal-thickness)

energy-vector (in meV) incidence-angle (in degrees) [h,k,l] = the Miller indices (note that the reflection might have to be added to chitables) crystal string = currently 'si' or 'ge' bending-radius (spherical bendin in meters or 'inf' for undeformed) crystal-thickness (in microns)

For an example, to compute the reflectivity of a spherically bent Si(660) analyser (with Rb = 1 m) using only the depth-dependent strain near back-scattering conditions (thetab = 88.4 deg), the function call is

sol = takagitaupin('energy',linspace(-800,200,200),88.4,[6,6,0],'si',1,300)

Similarly for the angular scan:

sol = takagitaupin('angle',angle-vector,photon_energy,[h,k,l],crystal-string,bending-radius,crystal-thickness)

Here angle-vector is in arcsecs and photon_energy in keV.

sol is a TTsolution object that can be inspected quickly with sol.plot(). The scan and reflectivity vectors are obtained respectively via properties sol.scan and sol.reflectivity.

About

Python solver for 1D Takagi-Taupin equation (DEPRECATED, see pyTTE instead)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages