aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2012-02-05 16:43:18 -0800
committerThomas White <taw@physics.org>2012-02-22 15:27:45 +0100
commit18f5b60f594dea2ab2087de78086c3687c472bcd (patch)
tree619a295d9d85e1e39b8bf2d1074072ded7ad3836
parent6e2199a3ce1addb3887d919efbb7e4c80709cee3 (diff)
Add new setting of 4/mmm
-rw-r--r--libcrystfel/src/symmetry.c12
-rw-r--r--tests/symmetry_check.c1
2 files changed, 13 insertions, 0 deletions
diff --git a/libcrystfel/src/symmetry.c b/libcrystfel/src/symmetry.c
index 68278b96..ba0f9f81 100644
--- a/libcrystfel/src/symmetry.c
+++ b/libcrystfel/src/symmetry.c
@@ -517,6 +517,17 @@ static SymOpList *make_4mmm()
}
+static SymOpList *make_4mmm_uaa()
+{
+ SymOpList *new = new_symoplist();
+ add_symop(new, v(1,0,0,0), v(0,0,0,1), v(0,-1,0,0), 4); /* 4 // h */
+ add_symop(new, v(-1,0,0,0), v(0,1,0,0), v(0,0,0,1), 2); /* m -| k */
+ add_symop(new, v(-1,0,0,0), v(0,1,0,0), v(0,0,0,1), 2); /* m -| h */
+ new->name = strdup("4/mmm_uaa");
+ return expand_ops(new);
+}
+
+
/************************** Trigonal (Rhombohedral) ***************************/
static SymOpList *make_3_R()
@@ -828,6 +839,7 @@ SymOpList *get_pointgroup(const char *sym)
if ( strcmp(sym, "4") == 0 ) return make_4();
if ( strcmp(sym, "-4") == 0 ) return make_4bar();
if ( strcmp(sym, "4/mmm") == 0 ) return make_4mmm();
+ if ( strcmp(sym, "4/mmm_uaa") == 0 ) return make_4mmm_uaa();
if ( strcmp(sym, "422") == 0 ) return make_422();
if ( strcmp(sym, "-42m") == 0 ) return make_4bar2m();
if ( strcmp(sym, "-4m2") == 0 ) return make_4barm2();
diff --git a/tests/symmetry_check.c b/tests/symmetry_check.c
index 7beb51b8..abeeae4e 100644
--- a/tests/symmetry_check.c
+++ b/tests/symmetry_check.c
@@ -261,6 +261,7 @@ int main(int argc, char *argv[])
check_pg_props( "-42m", 8, 0, &fail);
check_pg_props( "-4m2", 8, 0, &fail);
check_pg_props( "4/mmm", 16, 1, &fail);
+ check_pg_props( "4/mmm_uaa", 16, 1, &fail);
STATUS("\n");
check_pg_props( "3_R", 3, 0, &fail);