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 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 - New Pseudo Axes engines.
22 - A not yet public hkl3d library used only by the gui allow to
23 compute (Bullet) and display (OpenGL) collision for model
24 described using the COLLADA file format.
26 - add a --disable-hkl3d flag to avoid hkl3d library compilation.
27 - replace the --enable-ghkl with a --disable-gui.
28 - use ./configure --help for all the options
30 - Rewriten using Gtk instead of Gtkmm, in order to minimise the
31 required dependencies.
32 - Added a 3D view to display diffractometers and collisions.
33 - Added the K6C 3D model.
35 - Provide the garantie via unit tests that the python API will be
36 stable during all the 5.x lifetime.
37 - For other languages look at [[https://wiki.gnome.org/Projects/GObjectIntrospection/][here]].
40 * add the SOLEIL SIXS MED2+2 diffractometer
44 * add the SOLEIL MARS diffractometer
46 * add the PETRA3 P09 EH2 diffractometer
50 - add modes : hkl psi_constant_horizontal, constant_mu_horizontal
53 - add the constant_incidence mode
55 * add the sphinx documentation
58 * remove the usage.c file to avoid a GPL2-GPL3+ incompatibility
59 * update the documentation
60 * fix warning catched by clang
63 * add the ghkl manpage and .desktop file
64 * fix the ghkl quit menuitem bugs
67 * fix a few ghkl bugs (.ui files installation)
68 * add a --enable-ghkl=[yes,no] flag to allow compiling the gui interface
69 * do not forgot to link ghkl against gsl.
70 * display by default the preference panel of ghkl.
74 * add the autotools buildsystem and remove all other systems.
75 * add a GUI ghkl for testing purpose based on gtkmm.
76 * add the GNU info doc
77 * add the gtk-doc to document the api (work in progress)
78 * new structure for the HklDetector (prepare for 2D detectors)
79 * HklGeometryConfig shared between all equivalent HklGeometries.
80 * fix for 64 bits computers runtime error.
81 * add the GError class to report calculation errors (not yet used)
82 * new way to set the UB matrix of a sample (hkl_sample_set_UB).
85 - mode reflectivity (mu = gamma)
89 * add the psi_constant mode to the e4cv, e6c, k4cv and k6c geometries. (thanks teresa)
90 * upgrade the user guide to explain how to add a mode.
91 * the horizontal modes are also valid if omega = +-PI. (e6c, k6c)
92 * remove geometries with an invalid range from the list of solutions.
96 * Rewrote from scratch in C with the GSL library.
97 - now most of pseudo axes modes are numeric.
98 So a 6 circles mode is now a real 6 circles mode.
100 - PseudoAxisEngine "hkl": "h", "k", "l"
102 * Mode "constant_omega"
103 * Mode "constant_chi"
104 * Mode "constant_phi"
105 * Mode "double_diffraction"
106 - PseudoAxisEngine "psi": "psi"
109 - PseudoAxisEngine "hkl": "h", "k", "l"
111 * Mode "constant_omega"
112 * Mode "constant_chi"
113 * Mode "constant_phi"
114 * Mode "double_diffraction"
115 - PseudoAxisEngine "psi": "psi"
117 - PseudoAxisEngien "eulerians": "omega", "chi", "phi"
120 - PseudoAxisEngine "hkl": "h", "k", "l"
121 * Mode "bissector_vertical"
122 * Mode "constant_omega_vertical"
123 * Mode "constant_chi_vertical"
124 * Mode "constant_phi_vertical"
125 * Mode "double_diffraction_vertical"
126 * Mode "lifting_detector"
127 * Mode "bissector_horizontal"
128 * Mode "double_diffraction_horizontal"
129 - PseudoAxisEngine "psi": "psi"
132 - PseudoAxisEngine "hkl": "h", "k", "l"
133 * Mode "bissector_vertical"
134 * Mode "constant_omega_vertical"
135 * Mode "constant_chi_vertical"
136 * Mode "constant_phi_vertical"
137 * Mode "double_diffraction_vertical"
138 * Mode "lifting_detector"
139 * Mode "bissector_horizontal"
140 * Mode "constant_phi_horizontal"
141 * Mode "constant_kphi_horizontal"
142 * Mode "double_diffraction_horizontal"
143 - PseudoAxisEngine "psi": "psi"
145 - PseudoAxisEngien "eulerians": "omega", "chi", "phi"
150 * Refactoring of the sample part.
151 - It is now possible to create different kind of samples easily.
155 - Eulerian 6 Circles.
156 - kappa 4 Circles Vertical.
158 * Refactoring of the PseudoAxe part.
159 - Derived PseudoAxe can be created from an already existing PseudoAxe if the Geometry conversion exist.
160 - Better related PseudoAxes (ex Eulerians on a Kappa)
161 - The PseudoAxe is just a interface, computation is done by the PseudoAxeEngine.
162 - Eulerian 4 Circles Vertical
163 - "th2th" : derived from the twoC
164 - "q2th" : derived from the twoC
165 - "q" : derived from the twoC
166 - kappa 4 Circles Vertical
167 - "omega", "chi", "phi" : eulerian 4 circles Vertical pseudoAxes.
168 - "th2th" : derived from the twoC
169 - "q2th" : derived from the twoC
170 - "q" : derived from the twoC
171 - "psi" : derived from the Eulerian 4 Circlers Vertical.
172 - Eulerian 6 Circles:
174 - "q" : 2 * tau * sin(theta) / lambda
175 - "psi" : derived from the Eulerian 4 Circlers Vertical.
177 - "omega", "chi", "phi" : derived from the Kappa 4 Circles Vertical.
178 - "tth" derived from the Eulerian6C.
179 - "q" derived from the Eulerian6C.
180 - "psi" : derived from the Eulerian 4 Circlers Vertical.
182 * Refactoring of the Modes.
183 - Derived Mode can be created from an already existing Mode if the Geometry conversion exist.
184 - all Eulerian 4 Circles on the kappa4C, Eulerian6c and Kappa6C diffractometers.
190 - Eulerian 4 Circles Vertical.
195 - "th2th": omega - 2theta (domega = d2theta / 2)
196 - "q2th" : omega - 2theta (domega = d2theta / 2) but q2th = 2 tau sin(theta) / lambda
197 - "q" : 2 * tau * sin(theta) / lambda
198 - Eulerian 4 Circles Vertical
199 - "th2th": omega - 2theta (domega = d2theta / 2)
200 - "q2th" : omega - 2theta (domega = d2theta / 2) but q2th = 2 tau sin(theta) / lambda
201 - "q" : 2 * tau * sin(theta) / lambda
202 - "psi" : Rotation of the sample oaround the Q vector.
206 - "symetric" (omega = theta, 2theta = 2 * theta)
207 - "fix incidence" (omega = free, 2theta = 2 * theta)
208 - Eulerian 4 circles:
215 - all Eulerian 4 Circles modes.