From 890e89537f6bbd1f82e45828c71abf91ec020151 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Tue, 11 Mar 2014 17:09:12 +0100 Subject: ambigator: Add --start-assignments --- src/ambigator.c | 65 +++++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 52 insertions(+), 13 deletions(-) (limited to 'src') diff --git a/src/ambigator.c b/src/ambigator.c index bf9db16a..ba154cd5 100644 --- a/src/ambigator.c +++ b/src/ambigator.c @@ -61,19 +61,20 @@ static void show_help(const char *s) printf( "Resolve indexing ambiguities.\n" "\n" -" -h, --help Display this help message.\n" +" -h, --help Display this help message.\n" "\n" -" -o, --output= Output stream.\n" -" -y, --symmetry= Actual (\"target\") symmetry.\n" -" -w Apparent (\"source\" or \"twinned\") symmetry.\n" -" -n, --iterations= Iterate times.\n" -" --highres= High resolution cutoff in A.\n" -" --lowres= Low resolution cutoff in A.\n" -" --end-assignments= Save end assignments to file .\n" -" --fg-graph= Save f and g correlation values to file .\n" -" --ncorr= Use correlations per crystal. Default 1000\n" -" -j Use threads for CC calculation.\n" -" --really-random Be non-deterministic.\n" +" -o, --output= Output stream.\n" +" -y, --symmetry= Actual (\"target\") symmetry.\n" +" -w Apparent (\"source\" or \"twinned\") symmetry.\n" +" -n, --iterations= Iterate times.\n" +" --highres= High resolution cutoff in A.\n" +" --lowres= Low resolution cutoff in A.\n" +" --start-assignments= Read starting assignments from file.\n" +" --end-assignments= Save end assignments to file.\n" +" --fg-graph= Save f and g correlation values to file.\n" +" --ncorr= Use correlations per crystal. Default 1000\n" +" -j Use threads for CC calculation.\n" +" --really-random Be non-deterministic.\n" ); } @@ -697,6 +698,7 @@ int main(int argc, char *argv[]) int c; const char *infile; char *outfile = NULL; + char *start_ass_fn = NULL; char *end_ass_fn = NULL; char *fg_graph_fn = NULL; char *s_sym_str = NULL; @@ -736,6 +738,7 @@ int main(int argc, char *argv[]) {"end-assignments", 1, NULL, 4}, {"fg-graph", 1, NULL, 5}, {"ncorr", 1, NULL, 6}, + {"start-assignments", 1, NULL, 7}, {"really-random", 0, &config_random, 1}, @@ -809,6 +812,10 @@ int main(int argc, char *argv[]) } break; + case 7 : + start_ass_fn = strdup(optarg); + break; + case 0 : break; @@ -965,8 +972,40 @@ int main(int argc, char *argv[]) fclose(fh); } + if ( start_ass_fn != NULL ) { + + FILE *fh; + fh = fopen(start_ass_fn, "r"); + if ( fh == NULL ) { + ERROR("Failed to open '%s'\n", start_ass_fn); + return 1; + } + + for ( i=0; i 0.5); + } + } + for ( i=0; i 0.5); orig_assignments[i] = assignments[i]; } -- cgit v1.2.3