| 44 |
|
args_info->output_given = 0 ; |
| 45 |
|
args_info->step_given = 0 ; |
| 46 |
|
args_info->nrbins_given = 0 ; |
| 47 |
+ |
args_info->nbins_x_given = 0 ; |
| 48 |
+ |
args_info->nbins_y_given = 0 ; |
| 49 |
|
args_info->nanglebins_given = 0 ; |
| 50 |
|
args_info->length_given = 0 ; |
| 51 |
|
args_info->zoffset_given = 0 ; |
| 62 |
|
args_info->theta_omega_given = 0 ; |
| 63 |
|
args_info->gxyz_given = 0 ; |
| 64 |
|
args_info->p2_given = 0 ; |
| 65 |
+ |
args_info->rp2_given = 0 ; |
| 66 |
|
args_info->scd_given = 0 ; |
| 67 |
|
args_info->density_given = 0 ; |
| 68 |
|
args_info->slab_density_given = 0 ; |
| 69 |
+ |
args_info->hxy_given = 0 ; |
| 70 |
|
args_info->staticProps_group_counter = 0 ; |
| 71 |
|
} |
| 72 |
|
|
| 81 |
|
args_info->step_orig = NULL; |
| 82 |
|
args_info->nrbins_arg = 100; |
| 83 |
|
args_info->nrbins_orig = NULL; |
| 84 |
+ |
args_info->nbins_x_arg = 100; |
| 85 |
+ |
args_info->nbins_x_orig = NULL; |
| 86 |
+ |
args_info->nbins_y_arg = 100; |
| 87 |
+ |
args_info->nbins_y_orig = NULL; |
| 88 |
|
args_info->nanglebins_arg = 50; |
| 89 |
|
args_info->nanglebins_orig = NULL; |
| 90 |
|
args_info->length_orig = NULL; |
| 122 |
|
printf("%s\n"," -o, --output=filename output file name"); |
| 123 |
|
printf("%s\n"," -n, --step=INT process every n frame (default=`1')"); |
| 124 |
|
printf("%s\n"," -r, --nrbins=INT number of bins for distance (default=`100')"); |
| 125 |
+ |
printf("%s\n"," -x, --nbins_x=INT number of bins in x axis (default=`100')"); |
| 126 |
+ |
printf("%s\n"," -y, --nbins_y=INT number of bins in y axis (default=`100')"); |
| 127 |
|
printf("%s\n"," -a, --nanglebins=INT number of bins for cos(angle) (default=`50')"); |
| 128 |
|
printf("%s\n"," -l, --length=DOUBLE maximum length (Defaults to 1/2 smallest length \n of first frame)"); |
| 129 |
|
printf("%s\n"," -z, --zoffset=DOUBLE Where to set the zero for the slab_density \n calculation (default=`0')"); |
| 141 |
|
printf("%s\n"," --theta_omega g(cos(theta), cos(omega))"); |
| 142 |
|
printf("%s\n"," --gxyz g(x, y, z)"); |
| 143 |
|
printf("%s\n"," --p2 p2 order parameter (--sele1 and --sele2 must be \n specified)"); |
| 144 |
+ |
printf("%s\n"," --rp2 rp2 order parameter (--sele1 and --sele2 must \n be specified)"); |
| 145 |
|
printf("%s\n"," --scd scd order parameter(either --sele1, --sele2, \n --sele3 are specified or --molname, --begin, \n --end are specified)"); |
| 146 |
|
printf("%s\n"," --density density plot (--sele1 must be specified)"); |
| 147 |
|
printf("%s\n"," --slab_density slab density (--sele1 must be specified)"); |
| 148 |
+ |
printf("%s\n"," --hxy hxy (--sele1 must be specified)"); |
| 149 |
|
|
| 150 |
|
} |
| 151 |
|
|
| 190 |
|
free (args_info->nrbins_orig); /* free previous argument */ |
| 191 |
|
args_info->nrbins_orig = 0; |
| 192 |
|
} |
| 193 |
+ |
if (args_info->nbins_x_orig) |
| 194 |
+ |
{ |
| 195 |
+ |
free (args_info->nbins_x_orig); /* free previous argument */ |
| 196 |
+ |
args_info->nbins_x_orig = 0; |
| 197 |
+ |
} |
| 198 |
+ |
if (args_info->nbins_y_orig) |
| 199 |
+ |
{ |
| 200 |
+ |
free (args_info->nbins_y_orig); /* free previous argument */ |
| 201 |
+ |
args_info->nbins_y_orig = 0; |
| 202 |
+ |
} |
| 203 |
|
if (args_info->nanglebins_orig) |
| 204 |
|
{ |
| 205 |
|
free (args_info->nanglebins_orig); /* free previous argument */ |
| 325 |
|
fprintf(outfile, "%s=\"%s\"\n", "nrbins", args_info->nrbins_orig); |
| 326 |
|
} else { |
| 327 |
|
fprintf(outfile, "%s\n", "nrbins"); |
| 328 |
+ |
} |
| 329 |
+ |
} |
| 330 |
+ |
if (args_info->nbins_x_given) { |
| 331 |
+ |
if (args_info->nbins_x_orig) { |
| 332 |
+ |
fprintf(outfile, "%s=\"%s\"\n", "nbins_x", args_info->nbins_x_orig); |
| 333 |
+ |
} else { |
| 334 |
+ |
fprintf(outfile, "%s\n", "nbins_x"); |
| 335 |
+ |
} |
| 336 |
+ |
} |
| 337 |
+ |
if (args_info->nbins_y_given) { |
| 338 |
+ |
if (args_info->nbins_y_orig) { |
| 339 |
+ |
fprintf(outfile, "%s=\"%s\"\n", "nbins_y", args_info->nbins_y_orig); |
| 340 |
+ |
} else { |
| 341 |
+ |
fprintf(outfile, "%s\n", "nbins_y"); |
| 342 |
|
} |
| 343 |
|
} |
| 344 |
|
if (args_info->nanglebins_given) { |
| 429 |
|
if (args_info->p2_given) { |
| 430 |
|
fprintf(outfile, "%s\n", "p2"); |
| 431 |
|
} |
| 432 |
+ |
if (args_info->rp2_given) { |
| 433 |
+ |
fprintf(outfile, "%s\n", "rp2"); |
| 434 |
+ |
} |
| 435 |
|
if (args_info->scd_given) { |
| 436 |
|
fprintf(outfile, "%s\n", "scd"); |
| 437 |
|
} |
| 441 |
|
if (args_info->slab_density_given) { |
| 442 |
|
fprintf(outfile, "%s\n", "slab_density"); |
| 443 |
|
} |
| 444 |
+ |
if (args_info->hxy_given) { |
| 445 |
+ |
fprintf(outfile, "%s\n", "hxy"); |
| 446 |
+ |
} |
| 447 |
|
|
| 448 |
|
fclose (outfile); |
| 449 |
|
|
| 489 |
|
args_info->theta_omega_given = 0 ; |
| 490 |
|
args_info->gxyz_given = 0 ; |
| 491 |
|
args_info->p2_given = 0 ; |
| 492 |
+ |
args_info->rp2_given = 0 ; |
| 493 |
|
args_info->scd_given = 0 ; |
| 494 |
|
args_info->density_given = 0 ; |
| 495 |
|
args_info->slab_density_given = 0 ; |
| 496 |
+ |
args_info->hxy_given = 0 ; |
| 497 |
|
|
| 498 |
|
args_info->staticProps_group_counter = 0; |
| 499 |
|
} |
| 587 |
|
{ "output", 1, NULL, 'o' }, |
| 588 |
|
{ "step", 1, NULL, 'n' }, |
| 589 |
|
{ "nrbins", 1, NULL, 'r' }, |
| 590 |
+ |
{ "nbins_x", 1, NULL, 'x' }, |
| 591 |
+ |
{ "nbins_y", 1, NULL, 'y' }, |
| 592 |
|
{ "nanglebins", 1, NULL, 'a' }, |
| 593 |
|
{ "length", 1, NULL, 'l' }, |
| 594 |
|
{ "zoffset", 1, NULL, 'z' }, |
| 605 |
|
{ "theta_omega", 0, NULL, 0 }, |
| 606 |
|
{ "gxyz", 0, NULL, 0 }, |
| 607 |
|
{ "p2", 0, NULL, 0 }, |
| 608 |
+ |
{ "rp2", 0, NULL, 0 }, |
| 609 |
|
{ "scd", 0, NULL, 0 }, |
| 610 |
|
{ "density", 0, NULL, 0 }, |
| 611 |
|
{ "slab_density", 0, NULL, 0 }, |
| 612 |
+ |
{ "hxy", 0, NULL, 0 }, |
| 613 |
|
{ NULL, 0, NULL, 0 } |
| 614 |
|
}; |
| 615 |
|
|
| 616 |
|
stop_char = 0; |
| 617 |
< |
c = getopt_long (argc, argv, "hVi:o:n:r:a:l:z:", long_options, &option_index); |
| 617 |
> |
c = getopt_long (argc, argv, "hVi:o:n:r:x:y:a:l:z:", long_options, &option_index); |
| 618 |
|
|
| 619 |
|
if (c == -1) break; /* Exit from `while (1)' loop. */ |
| 620 |
|
|
| 704 |
|
if (args_info->nrbins_orig) |
| 705 |
|
free (args_info->nrbins_orig); /* free previous string */ |
| 706 |
|
args_info->nrbins_orig = gengetopt_strdup (optarg); |
| 707 |
+ |
break; |
| 708 |
+ |
|
| 709 |
+ |
case 'x': /* number of bins in x axis. */ |
| 710 |
+ |
if (local_args_info.nbins_x_given) |
| 711 |
+ |
{ |
| 712 |
+ |
fprintf (stderr, "%s: `--nbins_x' (`-x') option given more than once%s\n", argv[0], (additional_error ? additional_error : "")); |
| 713 |
+ |
goto failure; |
| 714 |
+ |
} |
| 715 |
+ |
if (args_info->nbins_x_given && ! override) |
| 716 |
+ |
continue; |
| 717 |
+ |
local_args_info.nbins_x_given = 1; |
| 718 |
+ |
args_info->nbins_x_given = 1; |
| 719 |
+ |
args_info->nbins_x_arg = strtol (optarg, &stop_char, 0); |
| 720 |
+ |
if (!(stop_char && *stop_char == '\0')) { |
| 721 |
+ |
fprintf(stderr, "%s: invalid numeric value: %s\n", argv[0], optarg); |
| 722 |
+ |
goto failure; |
| 723 |
+ |
} |
| 724 |
+ |
if (args_info->nbins_x_orig) |
| 725 |
+ |
free (args_info->nbins_x_orig); /* free previous string */ |
| 726 |
+ |
args_info->nbins_x_orig = gengetopt_strdup (optarg); |
| 727 |
+ |
break; |
| 728 |
+ |
|
| 729 |
+ |
case 'y': /* number of bins in y axis. */ |
| 730 |
+ |
if (local_args_info.nbins_y_given) |
| 731 |
+ |
{ |
| 732 |
+ |
fprintf (stderr, "%s: `--nbins_y' (`-y') option given more than once%s\n", argv[0], (additional_error ? additional_error : "")); |
| 733 |
+ |
goto failure; |
| 734 |
+ |
} |
| 735 |
+ |
if (args_info->nbins_y_given && ! override) |
| 736 |
+ |
continue; |
| 737 |
+ |
local_args_info.nbins_y_given = 1; |
| 738 |
+ |
args_info->nbins_y_given = 1; |
| 739 |
+ |
args_info->nbins_y_arg = strtol (optarg, &stop_char, 0); |
| 740 |
+ |
if (!(stop_char && *stop_char == '\0')) { |
| 741 |
+ |
fprintf(stderr, "%s: invalid numeric value: %s\n", argv[0], optarg); |
| 742 |
+ |
goto failure; |
| 743 |
+ |
} |
| 744 |
+ |
if (args_info->nbins_y_orig) |
| 745 |
+ |
free (args_info->nbins_y_orig); /* free previous string */ |
| 746 |
+ |
args_info->nbins_y_orig = gengetopt_strdup (optarg); |
| 747 |
|
break; |
| 748 |
|
|
| 749 |
|
case 'a': /* number of bins for cos(angle). */ |
| 1047 |
|
args_info->staticProps_group_counter += 1; |
| 1048 |
|
break; |
| 1049 |
|
} |
| 1050 |
+ |
/* rp2 order parameter (--sele1 and --sele2 must be specified). */ |
| 1051 |
+ |
else if (strcmp (long_options[option_index].name, "rp2") == 0) |
| 1052 |
+ |
{ |
| 1053 |
+ |
if (local_args_info.rp2_given) |
| 1054 |
+ |
{ |
| 1055 |
+ |
fprintf (stderr, "%s: `--rp2' option given more than once%s\n", argv[0], (additional_error ? additional_error : "")); |
| 1056 |
+ |
goto failure; |
| 1057 |
+ |
} |
| 1058 |
+ |
if (args_info->rp2_given && ! override) |
| 1059 |
+ |
continue; |
| 1060 |
+ |
local_args_info.rp2_given = 1; |
| 1061 |
+ |
args_info->rp2_given = 1; |
| 1062 |
+ |
if (args_info->staticProps_group_counter && override) |
| 1063 |
+ |
reset_group_staticProps (args_info); |
| 1064 |
+ |
args_info->staticProps_group_counter += 1; |
| 1065 |
+ |
break; |
| 1066 |
+ |
} |
| 1067 |
|
/* scd order parameter(either --sele1, --sele2, --sele3 are specified or --molname, --begin, --end are specified). */ |
| 1068 |
|
else if (strcmp (long_options[option_index].name, "scd") == 0) |
| 1069 |
|
{ |
| 1115 |
|
args_info->staticProps_group_counter += 1; |
| 1116 |
|
break; |
| 1117 |
|
} |
| 1118 |
+ |
/* hxy (--sele1 must be specified). */ |
| 1119 |
+ |
else if (strcmp (long_options[option_index].name, "hxy") == 0) |
| 1120 |
+ |
{ |
| 1121 |
+ |
if (local_args_info.hxy_given) |
| 1122 |
+ |
{ |
| 1123 |
+ |
fprintf (stderr, "%s: `--hxy' option given more than once%s\n", argv[0], (additional_error ? additional_error : "")); |
| 1124 |
+ |
goto failure; |
| 1125 |
+ |
} |
| 1126 |
+ |
if (args_info->hxy_given && ! override) |
| 1127 |
+ |
continue; |
| 1128 |
+ |
local_args_info.hxy_given = 1; |
| 1129 |
+ |
args_info->hxy_given = 1; |
| 1130 |
+ |
if (args_info->staticProps_group_counter && override) |
| 1131 |
+ |
reset_group_staticProps (args_info); |
| 1132 |
+ |
args_info->staticProps_group_counter += 1; |
| 1133 |
+ |
break; |
| 1134 |
+ |
} |
| 1135 |
|
|
| 1136 |
|
break; |
| 1137 |
|
case '?': /* Invalid option. */ |