Hi all,
recently the return values of the Q2Ang functions of the Experimental
classes were changed with the attempt to make them more complete and
more uniform. This makes code changes in your scripts necessary. See the
help or example scripts or below for details.
As an example the HXRD class now must be used like:
import xrutils as xu
Si = xu.materials.Si
exp = xu.HXRD(Si.Q(1,-1,0),Si.Q(0,0,1),en = 9000)
exp.Q2Ang(Si.Q(0,0,4))
#returns: array([ 30.48461232, 0. , 0. , 60.96922465])
exp.Q2Ang(Si.Q(2,2,4),geometry='hi_lo')
#returns: array([ 73.67709683, 0. , 90. , 76.8254143 ])
exp.Q2Ang(Si.Q(2,2,4),geometry='lo_hi')
#returns: array([ 3.14831747, 0. , -90. , 76.8254143 ])
it returns the angles om,chi,phi,tt (sample rocking angle, sample tilt
perpendicular to scattering plane, sample azimuth, scattering angle two
theta)
Furthermore there is the option to return the angles needed for
non-coplanar scattering geometry using the geometry 'realTilt' or the
NonCOP experimental class.
exp.Q2Ang(Si.Q(2,2,4),geometry='realTilt')
#returns: array([ 38.41270715, 35.26438968, 0. , 76.8254143 ])
expn = xu.NonCOP(Si.Q(1,-1,0),Si.Q(0,0,1),en = 9000)
expn.Q2Ang(Si.Q(2,2,4))
#returns: array([ 38.41270715, 35.26438968, 0. , 76.8254143 ])
There are also specialized classes for grazing incidence diffraction
measurements. See help of xu.GID and xu.GID_ID10B for details.
regards
dominik
|