21 |
|
#define FIX_UNUSED(X) (void) (X) /* avoid warnings for unused params */ |
22 |
|
#endif |
23 |
|
|
24 |
– |
#ifdef WIN32 |
25 |
– |
#include "utils/wingetopt.h" |
26 |
– |
#else |
24 |
|
#include <getopt.h> |
28 |
– |
#endif |
25 |
|
|
26 |
|
#include "DynamicPropsCmd.h" |
27 |
|
|
39 |
|
" --sele1=selection script select first stuntdouble set", |
40 |
|
" --sele2=selection script select second stuntdouble set (if sele2 is not \n set, use script from sele1)", |
41 |
|
" --order=INT Lengendre Polynomial Order", |
42 |
+ |
" -z, --nzbins=INT Number of Z bins (default=`100')", |
43 |
|
" -m, --memory=memory specification\n Available memory (defaults to 2G) \n (default=`2G')", |
44 |
|
"\n Group: dynamicProps\n an option of this group is required", |
45 |
|
" -s, --selecorr selection correlation function", |
47 |
|
" -v, --vcorr velocity correlation function", |
48 |
|
" -d, --dcorr dipole correlation function", |
49 |
|
" -l, --lcorr Lengendre correlation function", |
50 |
+ |
" --lcorrZ Lengendre correlation function binned by Z", |
51 |
|
" -M, --sdcorr System dipole correlation function", |
52 |
|
" --r_rcorr Radial rmsd", |
53 |
|
" --thetacorr Angular rmsd", |
88 |
|
args_info->sele1_given = 0 ; |
89 |
|
args_info->sele2_given = 0 ; |
90 |
|
args_info->order_given = 0 ; |
91 |
+ |
args_info->nzbins_given = 0 ; |
92 |
|
args_info->memory_given = 0 ; |
93 |
|
args_info->selecorr_given = 0 ; |
94 |
|
args_info->rcorr_given = 0 ; |
95 |
|
args_info->vcorr_given = 0 ; |
96 |
|
args_info->dcorr_given = 0 ; |
97 |
|
args_info->lcorr_given = 0 ; |
98 |
+ |
args_info->lcorrZ_given = 0 ; |
99 |
|
args_info->sdcorr_given = 0 ; |
100 |
|
args_info->r_rcorr_given = 0 ; |
101 |
|
args_info->thetacorr_given = 0 ; |
119 |
|
args_info->sele2_arg = NULL; |
120 |
|
args_info->sele2_orig = NULL; |
121 |
|
args_info->order_orig = NULL; |
122 |
+ |
args_info->nzbins_arg = 100; |
123 |
+ |
args_info->nzbins_orig = NULL; |
124 |
|
args_info->memory_arg = gengetopt_strdup ("2G"); |
125 |
|
args_info->memory_orig = NULL; |
126 |
|
|
138 |
|
args_info->sele1_help = gengetopt_args_info_help[4] ; |
139 |
|
args_info->sele2_help = gengetopt_args_info_help[5] ; |
140 |
|
args_info->order_help = gengetopt_args_info_help[6] ; |
141 |
< |
args_info->memory_help = gengetopt_args_info_help[7] ; |
142 |
< |
args_info->selecorr_help = gengetopt_args_info_help[9] ; |
143 |
< |
args_info->rcorr_help = gengetopt_args_info_help[10] ; |
144 |
< |
args_info->vcorr_help = gengetopt_args_info_help[11] ; |
145 |
< |
args_info->dcorr_help = gengetopt_args_info_help[12] ; |
146 |
< |
args_info->lcorr_help = gengetopt_args_info_help[13] ; |
147 |
< |
args_info->sdcorr_help = gengetopt_args_info_help[14] ; |
148 |
< |
args_info->r_rcorr_help = gengetopt_args_info_help[15] ; |
149 |
< |
args_info->thetacorr_help = gengetopt_args_info_help[16] ; |
150 |
< |
args_info->drcorr_help = gengetopt_args_info_help[17] ; |
151 |
< |
args_info->helfandEcorr_help = gengetopt_args_info_help[18] ; |
152 |
< |
args_info->momentum_help = gengetopt_args_info_help[19] ; |
153 |
< |
args_info->stresscorr_help = gengetopt_args_info_help[20] ; |
141 |
> |
args_info->nzbins_help = gengetopt_args_info_help[7] ; |
142 |
> |
args_info->memory_help = gengetopt_args_info_help[8] ; |
143 |
> |
args_info->selecorr_help = gengetopt_args_info_help[10] ; |
144 |
> |
args_info->rcorr_help = gengetopt_args_info_help[11] ; |
145 |
> |
args_info->vcorr_help = gengetopt_args_info_help[12] ; |
146 |
> |
args_info->dcorr_help = gengetopt_args_info_help[13] ; |
147 |
> |
args_info->lcorr_help = gengetopt_args_info_help[14] ; |
148 |
> |
args_info->lcorrZ_help = gengetopt_args_info_help[15] ; |
149 |
> |
args_info->sdcorr_help = gengetopt_args_info_help[16] ; |
150 |
> |
args_info->r_rcorr_help = gengetopt_args_info_help[17] ; |
151 |
> |
args_info->thetacorr_help = gengetopt_args_info_help[18] ; |
152 |
> |
args_info->drcorr_help = gengetopt_args_info_help[19] ; |
153 |
> |
args_info->helfandEcorr_help = gengetopt_args_info_help[20] ; |
154 |
> |
args_info->momentum_help = gengetopt_args_info_help[21] ; |
155 |
> |
args_info->stresscorr_help = gengetopt_args_info_help[22] ; |
156 |
|
|
157 |
|
} |
158 |
|
|
245 |
|
free_string_field (&(args_info->sele2_arg)); |
246 |
|
free_string_field (&(args_info->sele2_orig)); |
247 |
|
free_string_field (&(args_info->order_orig)); |
248 |
+ |
free_string_field (&(args_info->nzbins_orig)); |
249 |
|
free_string_field (&(args_info->memory_arg)); |
250 |
|
free_string_field (&(args_info->memory_orig)); |
251 |
|
|
297 |
|
write_into_file(outfile, "sele2", args_info->sele2_orig, 0); |
298 |
|
if (args_info->order_given) |
299 |
|
write_into_file(outfile, "order", args_info->order_orig, 0); |
300 |
+ |
if (args_info->nzbins_given) |
301 |
+ |
write_into_file(outfile, "nzbins", args_info->nzbins_orig, 0); |
302 |
|
if (args_info->memory_given) |
303 |
|
write_into_file(outfile, "memory", args_info->memory_orig, 0); |
304 |
|
if (args_info->selecorr_given) |
311 |
|
write_into_file(outfile, "dcorr", 0, 0 ); |
312 |
|
if (args_info->lcorr_given) |
313 |
|
write_into_file(outfile, "lcorr", 0, 0 ); |
314 |
+ |
if (args_info->lcorrZ_given) |
315 |
+ |
write_into_file(outfile, "lcorrZ", 0, 0 ); |
316 |
|
if (args_info->sdcorr_given) |
317 |
|
write_into_file(outfile, "sdcorr", 0, 0 ); |
318 |
|
if (args_info->r_rcorr_given) |
385 |
|
args_info->vcorr_given = 0 ; |
386 |
|
args_info->dcorr_given = 0 ; |
387 |
|
args_info->lcorr_given = 0 ; |
388 |
+ |
args_info->lcorrZ_given = 0 ; |
389 |
|
args_info->sdcorr_given = 0 ; |
390 |
|
args_info->r_rcorr_given = 0 ; |
391 |
|
args_info->thetacorr_given = 0 ; |
641 |
|
{ "sele1", 1, NULL, 0 }, |
642 |
|
{ "sele2", 1, NULL, 0 }, |
643 |
|
{ "order", 1, NULL, 0 }, |
644 |
+ |
{ "nzbins", 1, NULL, 'z' }, |
645 |
|
{ "memory", 1, NULL, 'm' }, |
646 |
|
{ "selecorr", 0, NULL, 's' }, |
647 |
|
{ "rcorr", 0, NULL, 'r' }, |
648 |
|
{ "vcorr", 0, NULL, 'v' }, |
649 |
|
{ "dcorr", 0, NULL, 'd' }, |
650 |
|
{ "lcorr", 0, NULL, 'l' }, |
651 |
+ |
{ "lcorrZ", 0, NULL, 0 }, |
652 |
|
{ "sdcorr", 0, NULL, 'M' }, |
653 |
|
{ "r_rcorr", 0, NULL, 0 }, |
654 |
|
{ "thetacorr", 0, NULL, 0 }, |
659 |
|
{ 0, 0, 0, 0 } |
660 |
|
}; |
661 |
|
|
662 |
< |
c = getopt_long (argc, argv, "hVi:o:m:srvdlMp", long_options, &option_index); |
662 |
> |
c = getopt_long (argc, argv, "hVi:o:z:m:srvdlMp", long_options, &option_index); |
663 |
|
|
664 |
|
if (c == -1) break; /* Exit from `while (1)' loop. */ |
665 |
|
|
695 |
|
&(local_args_info.output_given), optarg, 0, 0, ARG_STRING, |
696 |
|
check_ambiguity, override, 0, 0, |
697 |
|
"output", 'o', |
698 |
+ |
additional_error)) |
699 |
+ |
goto failure; |
700 |
+ |
|
701 |
+ |
break; |
702 |
+ |
case 'z': /* Number of Z bins. */ |
703 |
+ |
|
704 |
+ |
|
705 |
+ |
if (update_arg( (void *)&(args_info->nzbins_arg), |
706 |
+ |
&(args_info->nzbins_orig), &(args_info->nzbins_given), |
707 |
+ |
&(local_args_info.nzbins_given), optarg, 0, "100", ARG_INT, |
708 |
+ |
check_ambiguity, override, 0, 0, |
709 |
+ |
"nzbins", 'z', |
710 |
|
additional_error)) |
711 |
|
goto failure; |
712 |
|
|
868 |
|
&(local_args_info.order_given), optarg, 0, 0, ARG_INT, |
869 |
|
check_ambiguity, override, 0, 0, |
870 |
|
"order", '-', |
871 |
+ |
additional_error)) |
872 |
+ |
goto failure; |
873 |
+ |
|
874 |
+ |
} |
875 |
+ |
/* Lengendre correlation function binned by Z. */ |
876 |
+ |
else if (strcmp (long_options[option_index].name, "lcorrZ") == 0) |
877 |
+ |
{ |
878 |
+ |
|
879 |
+ |
if (args_info->dynamicProps_group_counter && override) |
880 |
+ |
reset_group_dynamicProps (args_info); |
881 |
+ |
args_info->dynamicProps_group_counter += 1; |
882 |
+ |
|
883 |
+ |
if (update_arg( 0 , |
884 |
+ |
0 , &(args_info->lcorrZ_given), |
885 |
+ |
&(local_args_info.lcorrZ_given), optarg, 0, 0, ARG_NO, |
886 |
+ |
check_ambiguity, override, 0, 0, |
887 |
+ |
"lcorrZ", '-', |
888 |
|
additional_error)) |
889 |
|
goto failure; |
890 |
|
|