diff options
author | Thomas White <taw@physics.org> | 2023-06-20 11:10:25 +0200 |
---|---|---|
committer | Thomas White <taw@physics.org> | 2023-07-28 13:22:05 +0200 |
commit | 538e990e4667c45e537755799d82ab8a56fdd1f4 (patch) | |
tree | 8df331f5110e7c21c86ddb01334ac1e88894655f /libcrystfel/src/predict-refine.h | |
parent | 36d71427be23ef836440d81db8e9dde828947863 (diff) |
Move gradients to predict-refine
Makes sense for the _dev and _gradient functions to be in the same
place.,
Diffstat (limited to 'libcrystfel/src/predict-refine.h')
-rw-r--r-- | libcrystfel/src/predict-refine.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/libcrystfel/src/predict-refine.h b/libcrystfel/src/predict-refine.h index e74e00a8..c667dc6d 100644 --- a/libcrystfel/src/predict-refine.h +++ b/libcrystfel/src/predict-refine.h @@ -30,6 +30,36 @@ #define PREDICT_REFINE_H struct reflpeak; + +/** Enumeration of parameters which may want to be refined */ +enum gparam { + GPARAM_ASX, + GPARAM_ASY, + GPARAM_ASZ, + GPARAM_BSX, + GPARAM_BSY, + GPARAM_BSZ, + GPARAM_CSX, + GPARAM_CSY, + GPARAM_CSZ, + GPARAM_R, + GPARAM_DIV, + GPARAM_DETX, + GPARAM_DETY, + GPARAM_CLEN, + GPARAM_OSF, /* Linear scale factor */ + GPARAM_BFAC, /* D-W scale factor */ + GPARAM_ANG1, /* Out of plane rotation angles of crystal */ + GPARAM_ANG2, + GPARAM_WAVELENGTH, + GPARAM_ROTX, /* Detector panel rotation about +x */ + GPARAM_ROTY, /* Detector panel rotation about +y */ + GPARAM_ROTZ, /* Detector panel rotation about +z */ + + GPARAM_EOL /* End of list */ +}; + + #include "crystal.h" #include "crystfel-mille.h" @@ -50,8 +80,19 @@ extern int refine_prediction(struct image *image, Crystal *cr, Mille *mille); extern int refine_radius(Crystal *cr, struct image *image); +extern double r_dev(struct reflpeak *rp); + extern double fs_dev(struct reflpeak *rp, struct detgeom *det); extern double ss_dev(struct reflpeak *rp, struct detgeom *det); +extern double r_gradient(UnitCell *cell, int k, Reflection *refl, + struct image *image); + +extern double fs_gradient(int param, Reflection *refl, UnitCell *cell, + struct detgeom_panel *p); + +extern double ss_gradient(int param, Reflection *refl, UnitCell *cell, + struct detgeom_panel *p); + #endif /* PREDICT_REFINE_H */ |