diffract

class hkl.diffract.Diffractometer(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)

Diffractometer pseudopositioner

This has a corresponding calculation engine from hklpy that does forward and inverse calculations.

If instantiating a specific diffractometer class such as E4C, E6C, neither the calc_inst or the calc_kw parameters are required.

However, there is the option to either pass in a calculation instance (with calc_inst) or keywords for the default calculation class (using calc_kw) to instantiate a new one.

Parameters
  • prefix (str) – PV prefix for all components

  • calc_kw (dict, optional) – Initializer arguments for the calc class

  • decision_fcn (callable, optional) – The decision function to use when multiple solutions exist for a given forward calculation. Defaults to arbitrarily picking the first solution.

  • read_attrs (list, optional) – Read attributes default to all pseudo and real positioners

  • configuration_attrs (list, optional) – Defaults to the UB matrix and energy

  • parent (Device, optional) – Parent device

  • name (str, optional) – Device name

calc_class

Reciprocal calculation class used with this diffractometer. If None (as in hkl.diffract.Diffractometer, calc_inst must be specified upon initialization.

Type

sub-class of CalcRecip

property calc

The calculation instance

property engine

The calculation engine associated with the diffractometer

forward(pseudo)

Calculate a RealPosition from a given PseudoPosition

Must be defined on the subclass.

Parameters

pseudo_pos (PseudoPosition) – The pseudo position input

Returns

real_position – The real position output

Return type

RealPosition

inverse(real)

Calculate a PseudoPosition from a given RealPosition

Must be defined on the subclass.

Parameters

real_position (RealPosition) – The real position input

Returns

pseudo_pos – The pseudo position output

Return type

PseudoPosition

class hkl.diffract.E4CH(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcE4CH

class hkl.diffract.E4CV(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcE4CV

class hkl.diffract.E6C(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcE6C

class hkl.diffract.K4CV(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcK4CV

class hkl.diffract.K6C(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcK6C

class hkl.diffract.Med2p3(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcMed2p3

class hkl.diffract.Petra3_p09_eh2(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcPetra3_p09_eh2

class hkl.diffract.SoleilMars(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcSoleilMars

class hkl.diffract.SoleilSiriusKappa(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcSoleilSiriusKappa

class hkl.diffract.SoleilSiriusTurret(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcSoleilSiriusTurret

class hkl.diffract.SoleilSixs(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcSoleilSixs

class hkl.diffract.SoleilSixsMed1p2(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcSoleilSixsMed1p2

class hkl.diffract.SoleilSixsMed2p2(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcSoleilSixsMed2p2

class hkl.diffract.TwoC(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcTwoC

class hkl.diffract.Zaxis(prefix, calc_kw=None, decision_fcn=None, calc_inst=None, *, configuration_attrs=None, read_attrs=None, **kwargs)
calc_class

alias of hkl.calc.CalcZaxis