130 likes | 256 Views
Status report. Data model for goniometry and collision maps CCPN-generated Java API (file-based backend) Used by: STAC: to persist a pure-rotation description of the goniostat and a set of collision maps for a range of detector distances
E N D
Status report • Data model for goniometry and collision maps • CCPN-generated Java API (file-based backend) • Used by: • STAC: to persist a pure-rotation description of the goniostat and a set of collision maps for a range of detector distances • BEST: to calculate a set of possible strategies exploiting Kappa geometry
The future • Further testing and development • Extension of scope of model • All beamline instrumentation, not just goniostat • Output of strategy calculations, and data collection • Perform real data collections according to the calculated strategies • Collaboration between Global Phasing and Soleil
People involved • Sándor Brockhauser • EMBL Grenoble • Johan Unge, Gleb Bourenkov • EMBL Hamburg • CCPN: Rasmus Fogh, Wayne Boucher, Ernest Laue • Biochemistry Department, Cambridge
BioXDM coordinate systems • Described by: • The matrix required to convert from a canonical coordinate system • The incident beam direction • The component of the principal goniostat axis perpendicular to the beam • An orientation vector/matrix is: • A unit vector/orthogonal matrix with an associated coordinate system
BioXDM goniometry model • Completely general multi-axis (not Kappa specific) • Pure rotation • Each axis represented as direction (given by a unit vector) + setting • These directions may change from one data collection to another (e.g. By re-calibration) • No account taken of physical motors or translations
BioXDM collision map • The “axes” of the collision map are identified with “axes” of the goniostat • In the Kappa case, Omega and Kappa • A set of collision maps are stored, over several detector distances • A utility function provides an appropriate collision map for a specified detector distance • Each point on the map is an object in its own right
BioXDM and data modelling • Why do data modelling? Reasons include: • Emphasis on science first, then implementation • In the BioXDM context, provides “glue” to connect diverse applications together • c.f. BEST and STAC
BioXDM and CCPN • Currently use the CCPN approach • Python and Java API's are generated from the data model (with a small amount of hand-written code) • API's perform a lot of data integrity checking (derived from data model) that would be tedious and impractical to code by hand.
CCPN status • Java API now able to use an SQL backend via Hibernate (at least in prototype form) • Python API only supports XML file backend • Rely on ObjectDomain for data modelling • this is an unsupported product