aboutsummaryrefslogtreecommitdiff
path: root/src/pattern_sim.h
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2011-11-15 16:04:46 +0100
committerThomas White <taw@physics.org>2012-02-22 15:27:40 +0100
commit2c238039c2efda1788ea72c9fb41ff354acc8e97 (patch)
tree34c30c1a29e5bbbc50d25cb62aabe05cb196abb1 /src/pattern_sim.h
parent3c896e8741763b66fa056d6c8d79557225e66ad2 (diff)
Move the "indexed reflection array" thing to where it can't do any harm
Diffstat (limited to 'src/pattern_sim.h')
-rw-r--r--src/pattern_sim.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/pattern_sim.h b/src/pattern_sim.h
new file mode 100644
index 00000000..4476a34a
--- /dev/null
+++ b/src/pattern_sim.h
@@ -0,0 +1,50 @@
+/*
+ * pattern_sim.h
+ *
+ * Simulate diffraction patterns from small crystals
+ *
+ * (c) 2006-2011 Thomas White <taw@physics.org>
+ *
+ * Part of CrystFEL - crystallography with a FEL
+ *
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#ifndef PATTERN_SIM_H
+#define PATTERN_SIM_H
+
+
+/* Maxmimum index to hold values up to (can be increased if necessary)
+ * WARNING: Altering this value constitutes an ABI change, and means you must
+ * update data/diffraction.cl then recompile and reinstall everything. */
+#define INDMAX 140
+
+/* Array size */
+#define IDIM (INDMAX*2 +1)
+#define LIST_SIZE (IDIM*IDIM*IDIM)
+
+/* Create functions for storing reflection intensities indexed as h,k,l */
+#define LABEL(x) x##_intensity
+#define TYPE double
+#include "list_tmp.h"
+
+/* CAs above, but for phase values */
+#define LABEL(x) x##_phase
+#define TYPE double
+#include "list_tmp.h"
+
+/* As above, but for (unsigned) integer counts */
+#define LABEL(x) x##_count
+#define TYPE unsigned int
+#include "list_tmp.h"
+
+/* As above, but for simple flags */
+#define LABEL(x) x##_flag
+#define TYPE unsigned char
+#include "list_tmp.h"
+
+
+#endif /* PATTERN_SIM_H */