TDS intensity distribution in reciprocal space planes:ΒΆ

The script make_TDS_intensityPlane calculates x-ray and neutron TDS intensities on a given plane in reciprocal space.

The following steps must have been performed beforehand:

  • Symmetrysation
  • Fourier Interpolation
  • Debye-Waller factors for the temperature of choice
  • The usage is

    make_TDS_IntensityPlane castep_filename input_filename  
    

    the file castep_filename can be either the name of the original castep output our the associated hdf5 file. In any case the associated hdf5 file must exist already.

  • The input_file must set the variables:

    • Mandatories
      • APPLYTIMEREVERSAL
      • Nfour_interp
      • Temperature
      • Saturation
      • lowerLimit
      • bottom_meV
      • Nqs
      • DQ
    • Definition of Plane through 3 points * redA, redB, redC * redCenter (optional)
    • Definition of plane via normal and point * redNormal * redX_idea * redCenter
    • If NEUTRONCALC==0 ( default )
      • Lambda
    • If NEUTRONCALC==1
      • CohB
      • NeutronE
    • Optional
      • branchWeight
      • energyWindow
      • Eigscal
      • UniqueIon
      • LINEAR
      • COLOR
      • red4castep
  • Interactions

    • right mouse click on graph plots intensity profile and displays position in reciprocal space

The input variables are documented with docstrings below

make_TDS_IntensityPlane.APPLYTIMEREVERSAL = 1

this is one by default. Must be coherent with previous steps

make_TDS_IntensityPlane.Nfour_interp = 4

The number of points in each direction of the 3D reciprocal grid. The hdf5 file must contain a previous pretreatement done with the same parameter.

make_TDS_IntensityPlane.Temperature = 100
The hdf5 file must include DW factors calculated ALSO at this temperature.
The temperature at which DW factors have been calculated.
Units are Kelvin
make_TDS_IntensityPlane.Lambda = 0.2

For X-ray scattering: the wavelenght in Angstroems.

make_TDS_IntensityPlane.NEUTRONCALC = 0

This activate neutron scattering calculations.

make_TDS_IntensityPlane.CohB = None

When neutroncalc is on, this must be a dictionary: for each atom name the Coherent lenght.

make_TDS_IntensityPlane.NeutronE = 0

When neutroncalc is on, the neutron energy in meV

make_TDS_IntensityPlane.lowerLimit = 1e-06

To correct the dynamical range, when displaying, the intensity is clipped to prevent it going below this value

make_TDS_IntensityPlane.bottom_meV = 0

Calculated eigenvalues are clipped to this value before use.

make_TDS_IntensityPlane.Nqs = 100

Number of q-points along one axis

make_TDS_IntensityPlane.DQ = 0.08

q-resolution in 1/Ang

make_TDS_IntensityPlane.redA = [1.0, 1.0, 0.0]
  1. q-point defining plane
make_TDS_IntensityPlane.redB = [0.0, 0.0, 0.0]
  1. q-point defining plane
make_TDS_IntensityPlane.redC = [0.0, 0.0, 1.0]
  1. q-point defining plane
make_TDS_IntensityPlane.redCenter = [0.0, 0.0, 0.0]

center of plane

make_TDS_IntensityPlane.redNormal = [0.0, 0.0, 1.0]

Normal to plane

make_TDS_IntensityPlane.redX_idea = [1.0, -1.0, 0.0]

Orientation of plane

make_TDS_IntensityPlane.branchWeight = None

a list of weights : one per branch.

make_TDS_IntensityPlane.energyWindow = None

a list of two numbers : minimum and maximum in meV

make_TDS_IntensityPlane.Eigscal = 0

EigScal==1 Intensity are calculated WITH only eigenvector scalar products ; ==2 Intensity are calculated WITH only eigenvector scalar products PLUS Mass factor

make_TDS_IntensityPlane.UniqueIon = -1

If >=0. Selects one ion. All the other will be silent.

make_TDS_IntensityPlane.RemoveBose = 0

RemoveBose=1 desactivates the Bose statistics.

make_TDS_IntensityPlane.LINEAR = 1

LINEAR = 1 plotting intensity in linear scale, linear = 0 in log scale

make_TDS_IntensityPlane.COLOR = 1

Intensity in color or grayscale

make_TDS_IntensityPlane.red4castep = 'q-vals.dat'

Write q-values to file