dxtbx.model.goniometer

class dxtbx.model.goniometer.Goniometer

Bases: dxtbx_model_ext.GoniometerBase

__init__((object)arg1)None :
C++ signature :

void __init__(_object*)

__init__( (object)arg1, (Goniometer)arg2) -> None :

C++ signature :

void __init__(_object*,dxtbx::model::Goniometer)

__init__( (object)arg1, (object)rotation_axis) -> None :

C++ signature :

void __init__(_object*,scitbx::vec3<double>)

__init__( (object)arg1, (object)rotation_axis, (object)fixed_rotation_matrix) -> None :

C++ signature :

void __init__(_object*,scitbx::vec3<double>,scitbx::mat3<double>)

__init__( (object)arg1, (object)rotation_axis, (object)fixed_rotation_matrix, (object)setting_rotation_matrix) -> None :

C++ signature :

void __init__(_object*,scitbx::vec3<double>,scitbx::mat3<double>,scitbx::mat3<double>)

static from_dict((dict)arg1)Goniometer :
C++ signature :

dxtbx::model::Goniometer* from_dict(boost::python::dict)

get_fixed_rotation((Goniometer)arg1)tuple :
C++ signature :

scitbx::mat3<double> get_fixed_rotation(dxtbx::model::Goniometer {lvalue})

get_num_scan_points((Goniometer)arg1)int :
C++ signature :

unsigned long get_num_scan_points(dxtbx::model::Goniometer {lvalue})

get_rotation_axis((Goniometer)arg1)tuple :
C++ signature :

scitbx::vec3<double> get_rotation_axis(dxtbx::model::Goniometer {lvalue})

get_rotation_axis_datum((Goniometer)arg1)tuple :
C++ signature :

scitbx::vec3<double> get_rotation_axis_datum(dxtbx::model::Goniometer {lvalue})

get_setting_rotation((Goniometer)arg1)tuple :
C++ signature :

scitbx::mat3<double> get_setting_rotation(dxtbx::model::Goniometer {lvalue})

get_setting_rotation_at_scan_point((Goniometer)arg1, (object)arg2)tuple :
C++ signature :

scitbx::mat3<double> get_setting_rotation_at_scan_point(dxtbx::model::Goniometer {lvalue},unsigned long)

get_setting_rotation_at_scan_points((Goniometer)arg1)mat3_double :
C++ signature :

scitbx::af::shared<scitbx::mat3<double> > get_setting_rotation_at_scan_points(dxtbx::model::Goniometer {lvalue})

is_similar_to((Goniometer)arg1, (Goniometer)other[, (object)rotation_axis_tolerance=1e-06[, (object)fixed_rotation_tolerance=1e-06[, (object)setting_rotation_tolerance=1e-06]]])bool :
C++ signature :

bool is_similar_to(dxtbx::model::Goniometer {lvalue},dxtbx::model::Goniometer [,double=1e-06 [,double=1e-06 [,double=1e-06]]])

property num_scan_points
reset_scan_points((Goniometer)arg1)None :
C++ signature :

void reset_scan_points(dxtbx::model::Goniometer {lvalue})

rotate_around_origin((Goniometer)arg1, (object)axis, (object)angle[, (object)deg=True])None :
C++ signature :

void rotate_around_origin(dxtbx::model::Goniometer {lvalue},scitbx::vec3<double>,double [,bool=True])

set_fixed_rotation((Goniometer)arg1, (object)arg2)None :
C++ signature :

void set_fixed_rotation(dxtbx::model::Goniometer {lvalue},scitbx::mat3<double>)

set_rotation_axis((Goniometer)arg1, (object)arg2)None :
C++ signature :

void set_rotation_axis(dxtbx::model::Goniometer {lvalue},scitbx::vec3<double>)

set_rotation_axis_datum((Goniometer)arg1, (object)arg2)None :
C++ signature :

void set_rotation_axis_datum(dxtbx::model::Goniometer {lvalue},scitbx::vec3<double>)

set_setting_rotation((Goniometer)arg1, (object)arg2)None :
C++ signature :

void set_setting_rotation(dxtbx::model::Goniometer {lvalue},scitbx::mat3<double>)

set_setting_rotation_at_scan_points((Goniometer)arg1, (mat3_double)arg2)None :
C++ signature :

void set_setting_rotation_at_scan_points(dxtbx::model::Goniometer {lvalue},scitbx::af::const_ref<scitbx::mat3<double>, scitbx::af::trivial_accessor>)

set_setting_rotation_at_scan_points( (Goniometer)arg1, (tuple)arg2) -> None :

C++ signature :

void set_setting_rotation_at_scan_points(dxtbx::model::Goniometer {lvalue},boost::python::tuple)

set_setting_rotation_at_scan_points( (Goniometer)arg1, (list)arg2) -> None :

C++ signature :

void set_setting_rotation_at_scan_points(dxtbx::model::Goniometer {lvalue},boost::python::list)

to_dict((Goniometer)arg1)dict :
C++ signature :

boost::python::dict to_dict(dxtbx::model::Goniometer)

class dxtbx.model.goniometer.GoniometerFactory[source]

Bases: object

A factory class for goniometer objects, which will encapsulate some standard goniometer designs to make it a little easier to get started with all of this - for cases when we are not using a CBF. When we have a CBF just use that factory method and everything will be peachy.

static from_dict(d, t=None)[source]

Convert the dictionary to a goniometer model

Params:

d The dictionary of parameters t The template dictionary to use

Returns

The goniometer model

static from_phil(params, reference=None)[source]

Convert the phil parameters into a goniometer model

static imgCIF(cif_file)[source]

Initialize a goniometer model from an imgCIF file.

static imgCIF_H(cbf_handle)[source]

Initialize a goniometer model from an imgCIF file handle, where it is assumed that the file has already been read.

static kappa(alpha, omega, kappa, phi, direction, scan_axis)[source]

Return a kappa goniometer where omega is the primary axis (i,e. aligned with X in the CBF coordinate frame) and has the kappa arm with angle alpha attached to it, aligned with -z, +y, +z or -y at omega = 0, that being the direction, which in turn has phi fixed to it which should initially be coincident with omega. We also need to know which axis is being used for the scan i.e. phi or omega. All angles should be given in degrees. This will work by first constructing the rotation axes and then composing them to the scan axis and fixed component of the rotation.

static known_axis(axis)[source]

Return an goniometer instance for a known rotation axis, assuming that nothing is known about the fixed element of the rotation axis.

static make_goniometer(rotation_axis, fixed_rotation)[source]
static make_kappa_goniometer(alpha, omega, kappa, phi, direction, scan_axis)[source]
static make_multi_axis_goniometer(axes, angles, names, scan_axis)[source]
static multi_axis(axes, angles, names, scan_axis)[source]
static multi_axis_goniometer_from_phil(params, reference=None)[source]
static single_axis()[source]

Construct a single axis goniometer which is canonical in the CBF reference frame.

static single_axis_goniometer_from_phil(params, reference=None)[source]

Generate or overwrite a single axis goniometer

static single_axis_reverse()[source]

Construct a single axis goniometer which is canonical in the CBF reference frame, but reversed in rotation.

class dxtbx.model.goniometer.KappaGoniometer

Bases: dxtbx_model_ext.Goniometer

__init__((object)arg1)None :
C++ signature :

void __init__(_object*)

__init__( (object)arg1, (object)alpha, (object)omega, (object)kappa, (object)phi, (KappaDirection)direction, (KappaScanAxis)scan_axis) -> None :

C++ signature :

void __init__(_object*,double,double,double,double,dxtbx::model::KappaGoniometer::Direction,dxtbx::model::KappaGoniometer::ScanAxis)

__init__( (object)arg1, (object)arg2, (object)arg3, (object)arg4, (object)arg5, (str)arg6, (str)arg7) -> object :

C++ signature :

void* __init__(boost::python::api::object,double,double,double,double,std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)

get_alpha_angle((KappaGoniometer)arg1)float :
C++ signature :

double get_alpha_angle(dxtbx::model::KappaGoniometer {lvalue})

get_direction((KappaGoniometer)arg1)KappaDirection :
C++ signature :

dxtbx::model::KappaGoniometer::Direction get_direction(dxtbx::model::KappaGoniometer {lvalue})

get_kappa_angle((KappaGoniometer)arg1)float :
C++ signature :

double get_kappa_angle(dxtbx::model::KappaGoniometer {lvalue})

get_kappa_axis((KappaGoniometer)arg1)tuple :
C++ signature :

scitbx::vec3<double> get_kappa_axis(dxtbx::model::KappaGoniometer {lvalue})

get_omega_angle((KappaGoniometer)arg1)float :
C++ signature :

double get_omega_angle(dxtbx::model::KappaGoniometer {lvalue})

get_omega_axis((KappaGoniometer)arg1)tuple :
C++ signature :

scitbx::vec3<double> get_omega_axis(dxtbx::model::KappaGoniometer {lvalue})

get_phi_angle((KappaGoniometer)arg1)float :
C++ signature :

double get_phi_angle(dxtbx::model::KappaGoniometer {lvalue})

get_phi_axis((KappaGoniometer)arg1)tuple :
C++ signature :

scitbx::vec3<double> get_phi_axis(dxtbx::model::KappaGoniometer {lvalue})

get_scan_axis((KappaGoniometer)arg1)KappaScanAxis :
C++ signature :

dxtbx::model::KappaGoniometer::ScanAxis get_scan_axis(dxtbx::model::KappaGoniometer {lvalue})

class dxtbx.model.goniometer.MultiAxisGoniometer

Bases: dxtbx_model_ext.Goniometer

__init__((object)arg1)None :
C++ signature :

void __init__(_object*)

__init__( (object)arg1, (vec3_double)axes, (object)angles, (std_string)names, (object)scan_axis) -> None :

C++ signature :

void __init__(_object*,scitbx::af::const_ref<scitbx::vec3<double>, scitbx::af::trivial_accessor>,scitbx::af::const_ref<double, scitbx::af::trivial_accessor>,scitbx::af::const_ref<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, scitbx::af::trivial_accessor>,unsigned long)

__init__( (object)arg1, (vec3_double)arg2, (object)arg3, (std_string)arg4, (object)arg5) -> object :

C++ signature :

void* __init__(boost::python::api::object,scitbx::af::const_ref<scitbx::vec3<double>, scitbx::af::trivial_accessor>,scitbx::af::const_ref<double, scitbx::af::trivial_accessor>,scitbx::af::const_ref<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, scitbx::af::trivial_accessor>,unsigned long)

static from_dict((dict)arg1)MultiAxisGoniometer :
C++ signature :

dxtbx::model::MultiAxisGoniometer* from_dict(boost::python::dict)

get_angles((MultiAxisGoniometer)arg1)double :
C++ signature :

scitbx::af::shared<double> get_angles(dxtbx::model::MultiAxisGoniometer {lvalue})

get_axes((MultiAxisGoniometer)arg1)vec3_double :
C++ signature :

scitbx::af::shared<scitbx::vec3<double> > get_axes(dxtbx::model::MultiAxisGoniometer {lvalue})

get_names((MultiAxisGoniometer)arg1)std_string :
C++ signature :

scitbx::af::shared<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > get_names(dxtbx::model::MultiAxisGoniometer {lvalue})

get_scan_axis((MultiAxisGoniometer)arg1)int :
C++ signature :

unsigned long get_scan_axis(dxtbx::model::MultiAxisGoniometer {lvalue})

set_angles((MultiAxisGoniometer)arg1, (double)arg2)None :
C++ signature :

void set_angles(dxtbx::model::MultiAxisGoniometer {lvalue},scitbx::af::shared<double>)

set_axes((MultiAxisGoniometer)arg1, (vec3_double)arg2)None :
C++ signature :

void set_axes(dxtbx::model::MultiAxisGoniometer {lvalue},scitbx::af::const_ref<scitbx::vec3<double>, scitbx::af::trivial_accessor>)

to_dict((MultiAxisGoniometer)arg1)dict :
C++ signature :

boost::python::dict to_dict(dxtbx::model::MultiAxisGoniometer)