fivec — Eulerian Five-Circle (Vlieg et al. 1987)#
Five-circle diffractometer: a standard fourcv() (Eulerian four-circle) mounted on a vertical mu base stage. Sample and detector are coupled through mu.
Walko (2016) designation: (S3D1)1
Coordinate basis: You (1999) (BASIS_YOU): vertical=+x, longitudinal=+y, transverse=+z.
Quick start#
import ad_hoc_diffractometer as ahd
g = ahd.presets.fivec()
g.wavelength = 1.0 # Å
print(g.summary())
Pre-built geometry definition#
This geometry is defined by the fivec() factory
function — see the source for the complete stage
and mode configuration.
Stage layout#
Static fallback (click to expand if the interactive figure above is blank)
Sample stages (base first):
Stage |
Axis |
Handedness |
Parent |
|---|---|---|---|
|
+vertical (+x) |
right-handed, shared base |
base |
|
−transverse (−z) |
left-handed |
|
|
+longitudinal (+y) |
right-handed |
|
|
−transverse (−z) |
left-handed |
|
Detector stages (base first):
Stage |
Axis |
Handedness |
Parent |
|---|---|---|---|
|
−transverse (−z) |
left-handed |
|
Shared stage: mu (base stage shared between sample and detector stacks)
Diffraction modes#
Set the active mode with g.mode_name = "<mode>".
Each mode is a ConstraintSet of 2 constraints
(N − 3 = 2 for N = 5 DOF).
With mu = 0, fivec() reduces identically to fourcv().
See Switch Diffraction Modes for usage and Work with Constraints and Diffraction Modes for
changing constraint values at run time.
bisecting_4c (default)#
SampleConstraint + BisectConstraint:
mu = 0, omega = ttheta / 2.
Reduces to standard four-circle bisecting geometry.
Computed |
omega, chi, phi, ttheta |
Constant during |
mu = 0 |
fixed_chi#
SampleConstraint × 2:
mu = 0.
chi is held at the value declared in the constraint (factory default: 90°).
The caller chooses the value by constructing a ConstraintSet; the constraint
persists until replaced — see Work with Constraints and Diffraction Modes.
Computed |
omega, phi, ttheta |
Constant during |
mu = 0, chi |
fixed_phi#
SampleConstraint × 2:
mu = 0.
phi is held at the value declared in the constraint (factory default: 0°).
The caller chooses the value by constructing a ConstraintSet.
Computed |
omega, chi, ttheta |
Constant during |
mu = 0, phi |
fixed_mu#
SampleConstraint + BisectConstraint:
omega = ttheta / 2.
mu is held at the value declared in the constraint (factory default: 0°).
The caller chooses the value by constructing a ConstraintSet.
Intended for non-zero mu once the tilted-plane solver is implemented.
Computed |
omega, chi, phi, ttheta |
Constant during |
mu |
fixed_omega_noncoplanar#
SampleConstraint × 2:
mu = 0.
omega is held at the value declared in the constraint (factory default: 0°).
The caller chooses the value by constructing a ConstraintSet.
Computed |
mu, chi, phi, ttheta |
Constant during |
mu = 0, omega |
API reference#
References#
Vlieg et al., J. Appl. Cryst. 20, 330–337 (1987). DOI: 10.1107/S0021889887087266
Walko, Ref. Module Mater. Sci. Mater. Eng. (2016).