| 1 |  | /* | 
| 2 |  | File autogenerated by gengetopt version 2.22.4 | 
| 3 |  | generated with the following command: | 
| 4 | < | gengetopt -F DynamicPropsCmd -u | 
| 4 | > | gengetopt --file-name=DynamicPropsCmd --unamed-opts | 
| 5 |  |  | 
| 6 |  | The developers of gengetopt consider the fixed text that goes in all | 
| 7 |  | gengetopt output files to be in the public domain: | 
| 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 | 
| 27 |  | #include <getopt.h> | 
| 28 | + | #endif | 
| 29 |  |  | 
| 30 |  | #include "DynamicPropsCmd.h" | 
| 31 |  |  | 
| 43 |  | "      --sele1=selection script  select first stuntdouble set", | 
| 44 |  | "      --sele2=selection script  select second stuntdouble set (if sele2 is not \n                                  set, use script from sele1)", | 
| 45 |  | "      --order=INT               Lengendre Polynomial Order", | 
| 46 | + | "  -z, --nzbins=INT              Number of Z bins  (default=`100')", | 
| 47 |  | "  -m, --memory=memory specification\n                                Available memory (defaults to 2G)  \n                                  (default=`2G')", | 
| 48 |  | "\n Group: dynamicProps\n   an option of this group is required", | 
| 49 | + | "  -s, --selecorr                selection correlation function", | 
| 50 |  | "  -r, --rcorr                   rmsd", | 
| 51 |  | "  -v, --vcorr                   velocity correlation function", | 
| 52 | + | "      --vcorrZ                  velocity correlation function along z-axis", | 
| 53 | + | "      --vcorrR                  velocity correlation function projected \n                                  radially", | 
| 54 |  | "  -d, --dcorr                   dipole correlation function", | 
| 55 |  | "  -l, --lcorr                   Lengendre correlation function", | 
| 56 | < | "  -s, --sdcorr                  System dipole correlation function", | 
| 56 | > | "      --lcorrZ                  Lengendre correlation function binned by Z", | 
| 57 | > | "      --cohZ                    Lengendre correlation function for OH bond \n                                  vectors binned by Z", | 
| 58 | > | "  -M, --sdcorr                  System dipole correlation function", | 
| 59 |  | "      --r_rcorr                 Radial rmsd", | 
| 60 |  | "      --thetacorr               Angular rmsd", | 
| 61 |  | "      --drcorr                  Directional rmsd for particles with unit \n                                  vectors", | 
| 62 |  | "      --helfandEcorr            Helfand moment for thermal conductvity", | 
| 63 |  | "  -p, --momentum                Helfand momentum for viscosity", | 
| 64 |  | "      --stresscorr              Stress tensor correlation function", | 
| 65 | + | "  -b, --bondcorr                Bond extension correlation function", | 
| 66 | + | "  -f, --freqfluccorr            Frequency Fluctuation correlation function", | 
| 67 |  | 0 | 
| 68 |  | }; | 
| 69 |  |  | 
| 97 |  | args_info->sele1_given = 0 ; | 
| 98 |  | args_info->sele2_given = 0 ; | 
| 99 |  | args_info->order_given = 0 ; | 
| 100 | + | args_info->nzbins_given = 0 ; | 
| 101 |  | args_info->memory_given = 0 ; | 
| 102 | + | args_info->selecorr_given = 0 ; | 
| 103 |  | args_info->rcorr_given = 0 ; | 
| 104 |  | args_info->vcorr_given = 0 ; | 
| 105 | + | args_info->vcorrZ_given = 0 ; | 
| 106 | + | args_info->vcorrR_given = 0 ; | 
| 107 |  | args_info->dcorr_given = 0 ; | 
| 108 |  | args_info->lcorr_given = 0 ; | 
| 109 | + | args_info->lcorrZ_given = 0 ; | 
| 110 | + | args_info->cohZ_given = 0 ; | 
| 111 |  | args_info->sdcorr_given = 0 ; | 
| 112 |  | args_info->r_rcorr_given = 0 ; | 
| 113 |  | args_info->thetacorr_given = 0 ; | 
| 115 |  | args_info->helfandEcorr_given = 0 ; | 
| 116 |  | args_info->momentum_given = 0 ; | 
| 117 |  | args_info->stresscorr_given = 0 ; | 
| 118 | + | args_info->bondcorr_given = 0 ; | 
| 119 | + | args_info->freqfluccorr_given = 0 ; | 
| 120 |  | args_info->dynamicProps_group_counter = 0 ; | 
| 121 |  | } | 
| 122 |  |  | 
| 133 |  | args_info->sele2_arg = NULL; | 
| 134 |  | args_info->sele2_orig = NULL; | 
| 135 |  | args_info->order_orig = NULL; | 
| 136 | + | args_info->nzbins_arg = 100; | 
| 137 | + | args_info->nzbins_orig = NULL; | 
| 138 |  | args_info->memory_arg = gengetopt_strdup ("2G"); | 
| 139 |  | args_info->memory_orig = NULL; | 
| 140 |  |  | 
| 152 |  | args_info->sele1_help = gengetopt_args_info_help[4] ; | 
| 153 |  | args_info->sele2_help = gengetopt_args_info_help[5] ; | 
| 154 |  | args_info->order_help = gengetopt_args_info_help[6] ; | 
| 155 | < | args_info->memory_help = gengetopt_args_info_help[7] ; | 
| 156 | < | args_info->rcorr_help = gengetopt_args_info_help[9] ; | 
| 157 | < | args_info->vcorr_help = gengetopt_args_info_help[10] ; | 
| 158 | < | args_info->dcorr_help = gengetopt_args_info_help[11] ; | 
| 159 | < | args_info->lcorr_help = gengetopt_args_info_help[12] ; | 
| 160 | < | args_info->sdcorr_help = gengetopt_args_info_help[13] ; | 
| 161 | < | args_info->r_rcorr_help = gengetopt_args_info_help[14] ; | 
| 162 | < | args_info->thetacorr_help = gengetopt_args_info_help[15] ; | 
| 163 | < | args_info->drcorr_help = gengetopt_args_info_help[16] ; | 
| 164 | < | args_info->helfandEcorr_help = gengetopt_args_info_help[17] ; | 
| 165 | < | args_info->momentum_help = gengetopt_args_info_help[18] ; | 
| 166 | < | args_info->stresscorr_help = gengetopt_args_info_help[19] ; | 
| 155 | > | args_info->nzbins_help = gengetopt_args_info_help[7] ; | 
| 156 | > | args_info->memory_help = gengetopt_args_info_help[8] ; | 
| 157 | > | args_info->selecorr_help = gengetopt_args_info_help[10] ; | 
| 158 | > | args_info->rcorr_help = gengetopt_args_info_help[11] ; | 
| 159 | > | args_info->vcorr_help = gengetopt_args_info_help[12] ; | 
| 160 | > | args_info->vcorrZ_help = gengetopt_args_info_help[13] ; | 
| 161 | > | args_info->vcorrR_help = gengetopt_args_info_help[14] ; | 
| 162 | > | args_info->dcorr_help = gengetopt_args_info_help[15] ; | 
| 163 | > | args_info->lcorr_help = gengetopt_args_info_help[16] ; | 
| 164 | > | args_info->lcorrZ_help = gengetopt_args_info_help[17] ; | 
| 165 | > | args_info->cohZ_help = gengetopt_args_info_help[18] ; | 
| 166 | > | args_info->sdcorr_help = gengetopt_args_info_help[19] ; | 
| 167 | > | args_info->r_rcorr_help = gengetopt_args_info_help[20] ; | 
| 168 | > | args_info->thetacorr_help = gengetopt_args_info_help[21] ; | 
| 169 | > | args_info->drcorr_help = gengetopt_args_info_help[22] ; | 
| 170 | > | args_info->helfandEcorr_help = gengetopt_args_info_help[23] ; | 
| 171 | > | args_info->momentum_help = gengetopt_args_info_help[24] ; | 
| 172 | > | args_info->stresscorr_help = gengetopt_args_info_help[25] ; | 
| 173 | > | args_info->bondcorr_help = gengetopt_args_info_help[26] ; | 
| 174 | > | args_info->freqfluccorr_help = gengetopt_args_info_help[27] ; | 
| 175 |  |  | 
| 176 |  | } | 
| 177 |  |  | 
| 264 |  | free_string_field (&(args_info->sele2_arg)); | 
| 265 |  | free_string_field (&(args_info->sele2_orig)); | 
| 266 |  | free_string_field (&(args_info->order_orig)); | 
| 267 | + | free_string_field (&(args_info->nzbins_orig)); | 
| 268 |  | free_string_field (&(args_info->memory_arg)); | 
| 269 |  | free_string_field (&(args_info->memory_orig)); | 
| 270 |  |  | 
| 316 |  | write_into_file(outfile, "sele2", args_info->sele2_orig, 0); | 
| 317 |  | if (args_info->order_given) | 
| 318 |  | write_into_file(outfile, "order", args_info->order_orig, 0); | 
| 319 | + | if (args_info->nzbins_given) | 
| 320 | + | write_into_file(outfile, "nzbins", args_info->nzbins_orig, 0); | 
| 321 |  | if (args_info->memory_given) | 
| 322 |  | write_into_file(outfile, "memory", args_info->memory_orig, 0); | 
| 323 | + | if (args_info->selecorr_given) | 
| 324 | + | write_into_file(outfile, "selecorr", 0, 0 ); | 
| 325 |  | if (args_info->rcorr_given) | 
| 326 |  | write_into_file(outfile, "rcorr", 0, 0 ); | 
| 327 |  | if (args_info->vcorr_given) | 
| 328 |  | write_into_file(outfile, "vcorr", 0, 0 ); | 
| 329 | + | if (args_info->vcorrZ_given) | 
| 330 | + | write_into_file(outfile, "vcorrZ", 0, 0 ); | 
| 331 | + | if (args_info->vcorrR_given) | 
| 332 | + | write_into_file(outfile, "vcorrR", 0, 0 ); | 
| 333 |  | if (args_info->dcorr_given) | 
| 334 |  | write_into_file(outfile, "dcorr", 0, 0 ); | 
| 335 |  | if (args_info->lcorr_given) | 
| 336 |  | write_into_file(outfile, "lcorr", 0, 0 ); | 
| 337 | + | if (args_info->lcorrZ_given) | 
| 338 | + | write_into_file(outfile, "lcorrZ", 0, 0 ); | 
| 339 | + | if (args_info->cohZ_given) | 
| 340 | + | write_into_file(outfile, "cohZ", 0, 0 ); | 
| 341 |  | if (args_info->sdcorr_given) | 
| 342 |  | write_into_file(outfile, "sdcorr", 0, 0 ); | 
| 343 |  | if (args_info->r_rcorr_given) | 
| 352 |  | write_into_file(outfile, "momentum", 0, 0 ); | 
| 353 |  | if (args_info->stresscorr_given) | 
| 354 |  | write_into_file(outfile, "stresscorr", 0, 0 ); | 
| 355 | + | if (args_info->bondcorr_given) | 
| 356 | + | write_into_file(outfile, "bondcorr", 0, 0 ); | 
| 357 | + | if (args_info->freqfluccorr_given) | 
| 358 | + | write_into_file(outfile, "freqfluccorr", 0, 0 ); | 
| 359 |  |  | 
| 360 |  |  | 
| 361 |  | i = EXIT_SUCCESS; | 
| 409 |  | if (! args_info->dynamicProps_group_counter) | 
| 410 |  | return; | 
| 411 |  |  | 
| 412 | + | args_info->selecorr_given = 0 ; | 
| 413 |  | args_info->rcorr_given = 0 ; | 
| 414 |  | args_info->vcorr_given = 0 ; | 
| 415 | + | args_info->vcorrZ_given = 0 ; | 
| 416 | + | args_info->vcorrR_given = 0 ; | 
| 417 |  | args_info->dcorr_given = 0 ; | 
| 418 |  | args_info->lcorr_given = 0 ; | 
| 419 | + | args_info->lcorrZ_given = 0 ; | 
| 420 | + | args_info->cohZ_given = 0 ; | 
| 421 |  | args_info->sdcorr_given = 0 ; | 
| 422 |  | args_info->r_rcorr_given = 0 ; | 
| 423 |  | args_info->thetacorr_given = 0 ; | 
| 425 |  | args_info->helfandEcorr_given = 0 ; | 
| 426 |  | args_info->momentum_given = 0 ; | 
| 427 |  | args_info->stresscorr_given = 0 ; | 
| 428 | + | args_info->bondcorr_given = 0 ; | 
| 429 | + | args_info->freqfluccorr_given = 0 ; | 
| 430 |  |  | 
| 431 |  | args_info->dynamicProps_group_counter = 0; | 
| 432 |  | } | 
| 675 |  | { "sele1",      1, NULL, 0 }, | 
| 676 |  | { "sele2",      1, NULL, 0 }, | 
| 677 |  | { "order",      1, NULL, 0 }, | 
| 678 | + | { "nzbins",     1, NULL, 'z' }, | 
| 679 |  | { "memory",     1, NULL, 'm' }, | 
| 680 | + | { "selecorr",   0, NULL, 's' }, | 
| 681 |  | { "rcorr",      0, NULL, 'r' }, | 
| 682 |  | { "vcorr",      0, NULL, 'v' }, | 
| 683 | + | { "vcorrZ",     0, NULL, 0 }, | 
| 684 | + | { "vcorrR",     0, NULL, 0 }, | 
| 685 |  | { "dcorr",      0, NULL, 'd' }, | 
| 686 |  | { "lcorr",      0, NULL, 'l' }, | 
| 687 | < | { "sdcorr",     0, NULL, 's' }, | 
| 687 | > | { "lcorrZ",     0, NULL, 0 }, | 
| 688 | > | { "cohZ",       0, NULL, 0 }, | 
| 689 | > | { "sdcorr",     0, NULL, 'M' }, | 
| 690 |  | { "r_rcorr",    0, NULL, 0 }, | 
| 691 |  | { "thetacorr",  0, NULL, 0 }, | 
| 692 |  | { "drcorr",     0, NULL, 0 }, | 
| 693 |  | { "helfandEcorr",       0, NULL, 0 }, | 
| 694 |  | { "momentum",   0, NULL, 'p' }, | 
| 695 |  | { "stresscorr", 0, NULL, 0 }, | 
| 696 | + | { "bondcorr",   0, NULL, 'b' }, | 
| 697 | + | { "freqfluccorr",       0, NULL, 'f' }, | 
| 698 |  | { 0,  0, 0, 0 } | 
| 699 |  | }; | 
| 700 |  |  | 
| 701 | < | c = getopt_long (argc, argv, "hVi:o:m:rvdlsp", long_options, &option_index); | 
| 701 | > | c = getopt_long (argc, argv, "hVi:o:z:m:srvdlMpbf", long_options, &option_index); | 
| 702 |  |  | 
| 703 |  | if (c == -1) break;       /* Exit from `while (1)' loop.  */ | 
| 704 |  |  | 
| 738 |  | goto failure; | 
| 739 |  |  | 
| 740 |  | break; | 
| 741 | + | case 'z':       /* Number of Z bins.  */ | 
| 742 | + |  | 
| 743 | + |  | 
| 744 | + | if (update_arg( (void *)&(args_info->nzbins_arg), | 
| 745 | + | &(args_info->nzbins_orig), &(args_info->nzbins_given), | 
| 746 | + | &(local_args_info.nzbins_given), optarg, 0, "100", ARG_INT, | 
| 747 | + | check_ambiguity, override, 0, 0, | 
| 748 | + | "nzbins", 'z', | 
| 749 | + | additional_error)) | 
| 750 | + | goto failure; | 
| 751 | + |  | 
| 752 | + | break; | 
| 753 |  | case 'm':       /* Available memory (defaults to 2G).  */ | 
| 754 |  |  | 
| 755 |  |  | 
| 762 |  | goto failure; | 
| 763 |  |  | 
| 764 |  | break; | 
| 765 | + | case 's':       /* selection correlation function.  */ | 
| 766 | + |  | 
| 767 | + | if (args_info->dynamicProps_group_counter && override) | 
| 768 | + | reset_group_dynamicProps (args_info); | 
| 769 | + | args_info->dynamicProps_group_counter += 1; | 
| 770 | + |  | 
| 771 | + | if (update_arg( 0 , | 
| 772 | + | 0 , &(args_info->selecorr_given), | 
| 773 | + | &(local_args_info.selecorr_given), optarg, 0, 0, ARG_NO, | 
| 774 | + | check_ambiguity, override, 0, 0, | 
| 775 | + | "selecorr", 's', | 
| 776 | + | additional_error)) | 
| 777 | + | goto failure; | 
| 778 | + |  | 
| 779 | + | break; | 
| 780 |  | case 'r':       /* rmsd.  */ | 
| 781 |  |  | 
| 782 |  | if (args_info->dynamicProps_group_counter && override) | 
| 837 |  | goto failure; | 
| 838 |  |  | 
| 839 |  | break; | 
| 840 | < | case 's':       /* System dipole correlation function.  */ | 
| 840 | > | case 'M':       /* System dipole correlation function.  */ | 
| 841 |  |  | 
| 842 |  | if (args_info->dynamicProps_group_counter && override) | 
| 843 |  | reset_group_dynamicProps (args_info); | 
| 847 |  | 0 , &(args_info->sdcorr_given), | 
| 848 |  | &(local_args_info.sdcorr_given), optarg, 0, 0, ARG_NO, | 
| 849 |  | check_ambiguity, override, 0, 0, | 
| 850 | < | "sdcorr", 's', | 
| 850 | > | "sdcorr", 'M', | 
| 851 |  | additional_error)) | 
| 852 |  | goto failure; | 
| 853 |  |  | 
| 867 |  | goto failure; | 
| 868 |  |  | 
| 869 |  | break; | 
| 870 | + | case 'b':       /* Bond extension correlation function.  */ | 
| 871 | + |  | 
| 872 | + | if (args_info->dynamicProps_group_counter && override) | 
| 873 | + | reset_group_dynamicProps (args_info); | 
| 874 | + | args_info->dynamicProps_group_counter += 1; | 
| 875 | + |  | 
| 876 | + | if (update_arg( 0 , | 
| 877 | + | 0 , &(args_info->bondcorr_given), | 
| 878 | + | &(local_args_info.bondcorr_given), optarg, 0, 0, ARG_NO, | 
| 879 | + | check_ambiguity, override, 0, 0, | 
| 880 | + | "bondcorr", 'b', | 
| 881 | + | additional_error)) | 
| 882 | + | goto failure; | 
| 883 | + |  | 
| 884 | + | break; | 
| 885 | + | case 'f':       /* Frequency Fluctuation correlation function.  */ | 
| 886 | + |  | 
| 887 | + | if (args_info->dynamicProps_group_counter && override) | 
| 888 | + | reset_group_dynamicProps (args_info); | 
| 889 | + | args_info->dynamicProps_group_counter += 1; | 
| 890 | + |  | 
| 891 | + | if (update_arg( 0 , | 
| 892 | + | 0 , &(args_info->freqfluccorr_given), | 
| 893 | + | &(local_args_info.freqfluccorr_given), optarg, 0, 0, ARG_NO, | 
| 894 | + | check_ambiguity, override, 0, 0, | 
| 895 | + | "freqfluccorr", 'f', | 
| 896 | + | additional_error)) | 
| 897 | + | goto failure; | 
| 898 | + |  | 
| 899 | + | break; | 
| 900 |  |  | 
| 901 |  | case 0: /* Long option with no short option */ | 
| 902 |  | /* select first stuntdouble set.  */ | 
| 941 |  | goto failure; | 
| 942 |  |  | 
| 943 |  | } | 
| 944 | + | /* velocity correlation function along z-axis.  */ | 
| 945 | + | else if (strcmp (long_options[option_index].name, "vcorrZ") == 0) | 
| 946 | + | { | 
| 947 | + |  | 
| 948 | + | if (args_info->dynamicProps_group_counter && override) | 
| 949 | + | reset_group_dynamicProps (args_info); | 
| 950 | + | args_info->dynamicProps_group_counter += 1; | 
| 951 | + |  | 
| 952 | + | if (update_arg( 0 , | 
| 953 | + | 0 , &(args_info->vcorrZ_given), | 
| 954 | + | &(local_args_info.vcorrZ_given), optarg, 0, 0, ARG_NO, | 
| 955 | + | check_ambiguity, override, 0, 0, | 
| 956 | + | "vcorrZ", '-', | 
| 957 | + | additional_error)) | 
| 958 | + | goto failure; | 
| 959 | + |  | 
| 960 | + | } | 
| 961 | + | /* velocity correlation function projected radially.  */ | 
| 962 | + | else if (strcmp (long_options[option_index].name, "vcorrR") == 0) | 
| 963 | + | { | 
| 964 | + |  | 
| 965 | + | if (args_info->dynamicProps_group_counter && override) | 
| 966 | + | reset_group_dynamicProps (args_info); | 
| 967 | + | args_info->dynamicProps_group_counter += 1; | 
| 968 | + |  | 
| 969 | + | if (update_arg( 0 , | 
| 970 | + | 0 , &(args_info->vcorrR_given), | 
| 971 | + | &(local_args_info.vcorrR_given), optarg, 0, 0, ARG_NO, | 
| 972 | + | check_ambiguity, override, 0, 0, | 
| 973 | + | "vcorrR", '-', | 
| 974 | + | additional_error)) | 
| 975 | + | goto failure; | 
| 976 | + |  | 
| 977 | + | } | 
| 978 | + | /* Lengendre correlation function binned by Z.  */ | 
| 979 | + | else if (strcmp (long_options[option_index].name, "lcorrZ") == 0) | 
| 980 | + | { | 
| 981 | + |  | 
| 982 | + | if (args_info->dynamicProps_group_counter && override) | 
| 983 | + | reset_group_dynamicProps (args_info); | 
| 984 | + | args_info->dynamicProps_group_counter += 1; | 
| 985 | + |  | 
| 986 | + | if (update_arg( 0 , | 
| 987 | + | 0 , &(args_info->lcorrZ_given), | 
| 988 | + | &(local_args_info.lcorrZ_given), optarg, 0, 0, ARG_NO, | 
| 989 | + | check_ambiguity, override, 0, 0, | 
| 990 | + | "lcorrZ", '-', | 
| 991 | + | additional_error)) | 
| 992 | + | goto failure; | 
| 993 | + |  | 
| 994 | + | } | 
| 995 | + | /* Lengendre correlation function for OH bond vectors binned by Z.  */ | 
| 996 | + | else if (strcmp (long_options[option_index].name, "cohZ") == 0) | 
| 997 | + | { | 
| 998 | + |  | 
| 999 | + | if (args_info->dynamicProps_group_counter && override) | 
| 1000 | + | reset_group_dynamicProps (args_info); | 
| 1001 | + | args_info->dynamicProps_group_counter += 1; | 
| 1002 | + |  | 
| 1003 | + | if (update_arg( 0 , | 
| 1004 | + | 0 , &(args_info->cohZ_given), | 
| 1005 | + | &(local_args_info.cohZ_given), optarg, 0, 0, ARG_NO, | 
| 1006 | + | check_ambiguity, override, 0, 0, | 
| 1007 | + | "cohZ", '-', | 
| 1008 | + | additional_error)) | 
| 1009 | + | goto failure; | 
| 1010 | + |  | 
| 1011 | + | } | 
| 1012 |  | /* Radial rmsd.  */ | 
| 1013 |  | else if (strcmp (long_options[option_index].name, "r_rcorr") == 0) | 
| 1014 |  | { |