aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2013-03-07 10:50:13 +0100
committerThomas White <taw@physics.org>2013-04-17 17:33:48 +0200
commitbc628cd85f512d962828e9b8c5df5a6e6d22fac5 (patch)
tree95d9ac47def582023b54884fab131bbc09a746b9 /libcrystfel
parent79993f9373e4a7fdcbff8a7d83af4b7289622cf3 (diff)
Add the possibility to have different partiality models
Diffstat (limited to 'libcrystfel')
-rw-r--r--libcrystfel/src/geometry.c2
-rw-r--r--libcrystfel/src/geometry.h18
2 files changed, 18 insertions, 2 deletions
diff --git a/libcrystfel/src/geometry.c b/libcrystfel/src/geometry.c
index 621c9484..450ebfaf 100644
--- a/libcrystfel/src/geometry.c
+++ b/libcrystfel/src/geometry.c
@@ -346,7 +346,7 @@ RefList *select_intersections(struct image *image, Crystal *cryst)
/* Calculate partialities and apply them to the image's reflections */
-void update_partialities(Crystal *cryst)
+void update_partialities(Crystal *cryst, PartialityModel pmodel)
{
Reflection *refl;
RefListIterator *iter;
diff --git a/libcrystfel/src/geometry.h b/libcrystfel/src/geometry.h
index aecdc28a..8b726ed7 100644
--- a/libcrystfel/src/geometry.h
+++ b/libcrystfel/src/geometry.h
@@ -43,10 +43,26 @@
extern "C" {
#endif
+/**
+ * PartialityModel:
+ * @PMODEL_SPHERE : Intersection of sphere with excited volume of reciprocal
+ * space.
+ * @PMODEL_UNITY : Set all all partialities and Lorentz factors to 1.
+ *
+ * A %PartialityModelModel describes a geometrical model which can be used to
+ * calculate spot partialities and Lorentz correction factors.
+ **/
+typedef enum {
+
+ PMODEL_SPHERE,
+ PMODEL_UNITY,
+
+} PartialityModel;
+
extern RefList *find_intersections(struct image *image, Crystal *cryst);
extern RefList *select_intersections(struct image *image, Crystal *cryst);
-extern void update_partialities(Crystal *cryst);
+extern void update_partialities(Crystal *cryst, PartialityModel pmodel);
#ifdef __cplusplus
}