5 - 5.x runtime can be co-installed with the 4.x series.
6 - hkl.h contain all the Public API.
7 - A clear separation between the public and private API was
8 achieved, in order to propose a Long Time Support support of the
10 - c-tap-hardness library was embeded to provide the unit test
12 - gobject-instrospection provide the binding support. Look at this
13 [[https://wiki.gnome.org/action/show/Projects/GObjectIntrospection][page]] for more informations.
14 - Documentation was generated with sphinx and asymptote for the figures.
15 - New diffractometers added
16 - E4CH (eulerian 4 circles horizontal) geometry.
17 - MARS beamline (SOLEIL) eulerian 4 circles vertical geometry.
19 - SOLEIL SIRIUS TURRET
20 - A not yet public hkl3d library used only by the gui allow to
21 compute (Bullet) and display (OpenGL) collision for model
22 described using the COLLADA file format.
24 - add a --disable-hkl3d flag to avoid hkl3d library compilation.
25 - replace the --enable-ghkl with a --disable-gui.
26 - use ./configure --help for all the options
28 - Rewriten using Gtk instead of Gtkmm, in order to minimise the
29 required dependencies.
30 - Added a 3D view to display diffractometers and collisions.
31 - Added the K6C 3D model.
33 - Provide the garantie via unit tests that the python API will be
34 stable during all the 5.x lifetime.
35 - For other languages look at [[https://wiki.gnome.org/Projects/GObjectIntrospection/][here]].
38 * add the SOLEIL SIXS MED2+2 diffractometer
42 * add the SOLEIL MARS diffractometer
44 * add the PETRA3 P09 EH2 diffractometer
48 - add modes : hkl psi_constant_horizontal, constant_mu_horizontal
51 - add the constant_incidence mode
53 * add the sphinx documentation
56 * remove the usage.c file to avoid a GPL2-GPL3+ incompatibility
57 * update the documentation
58 * fix warning catched by clang
61 * add the ghkl manpage and .desktop file
62 * fix the ghkl quit menuitem bugs
65 * fix a few ghkl bugs (.ui files installation)
66 * add a --enable-ghkl=[yes,no] flag to allow compiling the gui interface
67 * do not forgot to link ghkl against gsl.
68 * display by default the preference panel of ghkl.
72 * add the autotools buildsystem and remove all other systems.
73 * add a GUI ghkl for testing purpose based on gtkmm.
74 * add the GNU info doc
75 * add the gtk-doc to document the api (work in progress)
76 * new structure for the HklDetector (prepare for 2D detectors)
77 * HklGeometryConfig shared between all equivalent HklGeometries.
78 * fix for 64 bits computers runtime error.
79 * add the GError class to report calculation errors (not yet used)
80 * new way to set the UB matrix of a sample (hkl_sample_set_UB).
83 - mode reflectivity (mu = gamma)
87 * add the psi_constant mode to the e4cv, e6c, k4cv and k6c geometries. (thanks teresa)
88 * upgrade the user guide to explain how to add a mode.
89 * the horizontal modes are also valid if omega = +-PI. (e6c, k6c)
90 * remove geometries with an invalid range from the list of solutions.
94 * Rewrote from scratch in C with the GSL library.
95 - now most of pseudo axes modes are numeric.
96 So a 6 circles mode is now a real 6 circles mode.
98 - PseudoAxisEngine "hkl": "h", "k", "l"
100 * Mode "constant_omega"
101 * Mode "constant_chi"
102 * Mode "constant_phi"
103 * Mode "double_diffraction"
104 - PseudoAxisEngine "psi": "psi"
107 - PseudoAxisEngine "hkl": "h", "k", "l"
109 * Mode "constant_omega"
110 * Mode "constant_chi"
111 * Mode "constant_phi"
112 * Mode "double_diffraction"
113 - PseudoAxisEngine "psi": "psi"
115 - PseudoAxisEngien "eulerians": "omega", "chi", "phi"
118 - PseudoAxisEngine "hkl": "h", "k", "l"
119 * Mode "bissector_vertical"
120 * Mode "constant_omega_vertical"
121 * Mode "constant_chi_vertical"
122 * Mode "constant_phi_vertical"
123 * Mode "double_diffraction_vertical"
124 * Mode "lifting_detector"
125 * Mode "bissector_horizontal"
126 * Mode "double_diffraction_horizontal"
127 - PseudoAxisEngine "psi": "psi"
130 - PseudoAxisEngine "hkl": "h", "k", "l"
131 * Mode "bissector_vertical"
132 * Mode "constant_omega_vertical"
133 * Mode "constant_chi_vertical"
134 * Mode "constant_phi_vertical"
135 * Mode "double_diffraction_vertical"
136 * Mode "lifting_detector"
137 * Mode "bissector_horizontal"
138 * Mode "constant_phi_horizontal"
139 * Mode "constant_kphi_horizontal"
140 * Mode "double_diffraction_horizontal"
141 - PseudoAxisEngine "psi": "psi"
143 - PseudoAxisEngien "eulerians": "omega", "chi", "phi"
148 * Refactoring of the sample part.
149 - It is now possible to create different kind of samples easily.
153 - Eulerian 6 Circles.
154 - kappa 4 Circles Vertical.
156 * Refactoring of the PseudoAxe part.
157 - Derived PseudoAxe can be created from an already existing PseudoAxe if the Geometry conversion exist.
158 - Better related PseudoAxes (ex Eulerians on a Kappa)
159 - The PseudoAxe is just a interface, computation is done by the PseudoAxeEngine.
160 - Eulerian 4 Circles Vertical
161 - "th2th" : derived from the twoC
162 - "q2th" : derived from the twoC
163 - "q" : derived from the twoC
164 - kappa 4 Circles Vertical
165 - "omega", "chi", "phi" : eulerian 4 circles Vertical pseudoAxes.
166 - "th2th" : derived from the twoC
167 - "q2th" : derived from the twoC
168 - "q" : derived from the twoC
169 - "psi" : derived from the Eulerian 4 Circlers Vertical.
170 - Eulerian 6 Circles:
172 - "q" : 2 * tau * sin(theta) / lambda
173 - "psi" : derived from the Eulerian 4 Circlers Vertical.
175 - "omega", "chi", "phi" : derived from the Kappa 4 Circles Vertical.
176 - "tth" derived from the Eulerian6C.
177 - "q" derived from the Eulerian6C.
178 - "psi" : derived from the Eulerian 4 Circlers Vertical.
180 * Refactoring of the Modes.
181 - Derived Mode can be created from an already existing Mode if the Geometry conversion exist.
182 - all Eulerian 4 Circles on the kappa4C, Eulerian6c and Kappa6C diffractometers.
188 - Eulerian 4 Circles Vertical.
193 - "th2th": omega - 2theta (domega = d2theta / 2)
194 - "q2th" : omega - 2theta (domega = d2theta / 2) but q2th = 2 tau sin(theta) / lambda
195 - "q" : 2 * tau * sin(theta) / lambda
196 - Eulerian 4 Circles Vertical
197 - "th2th": omega - 2theta (domega = d2theta / 2)
198 - "q2th" : omega - 2theta (domega = d2theta / 2) but q2th = 2 tau sin(theta) / lambda
199 - "q" : 2 * tau * sin(theta) / lambda
200 - "psi" : Rotation of the sample oaround the Q vector.
204 - "symetric" (omega = theta, 2theta = 2 * theta)
205 - "fix incidence" (omega = free, 2theta = 2 * theta)
206 - Eulerian 4 circles:
213 - all Eulerian 4 Circles modes.