| 47 |
|
" --nbins_z=INT number of bins in z axis (default=`100')", |
| 48 |
|
" -a, --nanglebins=INT number of bins for cos(angle) (default=`50')", |
| 49 |
|
" -c, --rcut=DOUBLE cutoff radius (rcut)", |
| 50 |
+ |
" --thetacut=DOUBLE cutoff angle (thetacut)", |
| 51 |
|
" --dz=DOUBLE slab width (dz)", |
| 52 |
|
" --length=DOUBLE maximum length (Defaults to 1/2 smallest length \n of first frame)", |
| 53 |
|
" --zlength=DOUBLE maximum length (Defaults to 1/2 smallest length \n of first frame)", |
| 98 |
|
" --rnemdrt shell and angle-resolved RNEMD statistics \n (temperature, density, angular velocity)", |
| 99 |
|
" --nitrile electrostatic potential to frequency map based \n on the Cho nitrile fits", |
| 100 |
|
" -m, --multipole average multipole moments contained within \n cutoff spheres as a function of radius", |
| 101 |
+ |
" --surfDiffusion X, Y, and R (surface diffusion if Z exposed and \n bulk immobile) diffusion", |
| 102 |
+ |
" --hbond Hydrogen Bonding statistics using geometric \n criteria (rcut and thetacut must be \n specified)", |
| 103 |
|
0 |
| 104 |
|
}; |
| 105 |
|
|
| 138 |
|
args_info->nbins_z_given = 0 ; |
| 139 |
|
args_info->nanglebins_given = 0 ; |
| 140 |
|
args_info->rcut_given = 0 ; |
| 141 |
+ |
args_info->thetacut_given = 0 ; |
| 142 |
|
args_info->dz_given = 0 ; |
| 143 |
|
args_info->length_given = 0 ; |
| 144 |
|
args_info->zlength_given = 0 ; |
| 188 |
|
args_info->rnemdrt_given = 0 ; |
| 189 |
|
args_info->nitrile_given = 0 ; |
| 190 |
|
args_info->multipole_given = 0 ; |
| 191 |
+ |
args_info->surfDiffusion_given = 0 ; |
| 192 |
+ |
args_info->hbond_given = 0 ; |
| 193 |
|
args_info->staticProps_group_counter = 0 ; |
| 194 |
|
} |
| 195 |
|
|
| 214 |
|
args_info->nanglebins_arg = 50; |
| 215 |
|
args_info->nanglebins_orig = NULL; |
| 216 |
|
args_info->rcut_orig = NULL; |
| 217 |
+ |
args_info->thetacut_orig = NULL; |
| 218 |
|
args_info->dz_orig = NULL; |
| 219 |
|
args_info->length_orig = NULL; |
| 220 |
|
args_info->zlength_orig = NULL; |
| 258 |
|
args_info->nbins_z_help = gengetopt_args_info_help[8] ; |
| 259 |
|
args_info->nanglebins_help = gengetopt_args_info_help[9] ; |
| 260 |
|
args_info->rcut_help = gengetopt_args_info_help[10] ; |
| 261 |
< |
args_info->dz_help = gengetopt_args_info_help[11] ; |
| 262 |
< |
args_info->length_help = gengetopt_args_info_help[12] ; |
| 263 |
< |
args_info->zlength_help = gengetopt_args_info_help[13] ; |
| 264 |
< |
args_info->zoffset_help = gengetopt_args_info_help[14] ; |
| 265 |
< |
args_info->sele1_help = gengetopt_args_info_help[15] ; |
| 266 |
< |
args_info->sele2_help = gengetopt_args_info_help[16] ; |
| 267 |
< |
args_info->sele3_help = gengetopt_args_info_help[17] ; |
| 268 |
< |
args_info->refsele_help = gengetopt_args_info_help[18] ; |
| 269 |
< |
args_info->comsele_help = gengetopt_args_info_help[19] ; |
| 270 |
< |
args_info->seleoffset_help = gengetopt_args_info_help[20] ; |
| 271 |
< |
args_info->seleoffset2_help = gengetopt_args_info_help[21] ; |
| 272 |
< |
args_info->molname_help = gengetopt_args_info_help[22] ; |
| 273 |
< |
args_info->begin_help = gengetopt_args_info_help[23] ; |
| 274 |
< |
args_info->end_help = gengetopt_args_info_help[24] ; |
| 275 |
< |
args_info->radius_help = gengetopt_args_info_help[25] ; |
| 276 |
< |
args_info->voxelSize_help = gengetopt_args_info_help[26] ; |
| 277 |
< |
args_info->gaussWidth_help = gengetopt_args_info_help[27] ; |
| 278 |
< |
args_info->bo_help = gengetopt_args_info_help[29] ; |
| 279 |
< |
args_info->ior_help = gengetopt_args_info_help[30] ; |
| 280 |
< |
args_info->for_help = gengetopt_args_info_help[31] ; |
| 281 |
< |
args_info->bad_help = gengetopt_args_info_help[32] ; |
| 282 |
< |
args_info->count_help = gengetopt_args_info_help[33] ; |
| 283 |
< |
args_info->gofr_help = gengetopt_args_info_help[34] ; |
| 284 |
< |
args_info->gofz_help = gengetopt_args_info_help[35] ; |
| 285 |
< |
args_info->r_theta_help = gengetopt_args_info_help[36] ; |
| 286 |
< |
args_info->r_omega_help = gengetopt_args_info_help[37] ; |
| 287 |
< |
args_info->r_z_help = gengetopt_args_info_help[38] ; |
| 288 |
< |
args_info->theta_omega_help = gengetopt_args_info_help[39] ; |
| 289 |
< |
args_info->gxyz_help = gengetopt_args_info_help[40] ; |
| 290 |
< |
args_info->twodgofr_help = gengetopt_args_info_help[41] ; |
| 291 |
< |
args_info->p2_help = gengetopt_args_info_help[42] ; |
| 292 |
< |
args_info->rp2_help = gengetopt_args_info_help[43] ; |
| 293 |
< |
args_info->scd_help = gengetopt_args_info_help[44] ; |
| 294 |
< |
args_info->density_help = gengetopt_args_info_help[45] ; |
| 295 |
< |
args_info->slab_density_help = gengetopt_args_info_help[46] ; |
| 296 |
< |
args_info->p_angle_help = gengetopt_args_info_help[47] ; |
| 297 |
< |
args_info->hxy_help = gengetopt_args_info_help[48] ; |
| 298 |
< |
args_info->rho_r_help = gengetopt_args_info_help[49] ; |
| 299 |
< |
args_info->angle_r_help = gengetopt_args_info_help[50] ; |
| 300 |
< |
args_info->hullvol_help = gengetopt_args_info_help[51] ; |
| 301 |
< |
args_info->rodlength_help = gengetopt_args_info_help[52] ; |
| 302 |
< |
args_info->tet_param_help = gengetopt_args_info_help[53] ; |
| 303 |
< |
args_info->tet_param_z_help = gengetopt_args_info_help[54] ; |
| 304 |
< |
args_info->tet_param_xyz_help = gengetopt_args_info_help[55] ; |
| 305 |
< |
args_info->rnemdz_help = gengetopt_args_info_help[56] ; |
| 306 |
< |
args_info->rnemdr_help = gengetopt_args_info_help[57] ; |
| 307 |
< |
args_info->rnemdrt_help = gengetopt_args_info_help[58] ; |
| 308 |
< |
args_info->nitrile_help = gengetopt_args_info_help[59] ; |
| 309 |
< |
args_info->multipole_help = gengetopt_args_info_help[60] ; |
| 261 |
> |
args_info->thetacut_help = gengetopt_args_info_help[11] ; |
| 262 |
> |
args_info->dz_help = gengetopt_args_info_help[12] ; |
| 263 |
> |
args_info->length_help = gengetopt_args_info_help[13] ; |
| 264 |
> |
args_info->zlength_help = gengetopt_args_info_help[14] ; |
| 265 |
> |
args_info->zoffset_help = gengetopt_args_info_help[15] ; |
| 266 |
> |
args_info->sele1_help = gengetopt_args_info_help[16] ; |
| 267 |
> |
args_info->sele2_help = gengetopt_args_info_help[17] ; |
| 268 |
> |
args_info->sele3_help = gengetopt_args_info_help[18] ; |
| 269 |
> |
args_info->refsele_help = gengetopt_args_info_help[19] ; |
| 270 |
> |
args_info->comsele_help = gengetopt_args_info_help[20] ; |
| 271 |
> |
args_info->seleoffset_help = gengetopt_args_info_help[21] ; |
| 272 |
> |
args_info->seleoffset2_help = gengetopt_args_info_help[22] ; |
| 273 |
> |
args_info->molname_help = gengetopt_args_info_help[23] ; |
| 274 |
> |
args_info->begin_help = gengetopt_args_info_help[24] ; |
| 275 |
> |
args_info->end_help = gengetopt_args_info_help[25] ; |
| 276 |
> |
args_info->radius_help = gengetopt_args_info_help[26] ; |
| 277 |
> |
args_info->voxelSize_help = gengetopt_args_info_help[27] ; |
| 278 |
> |
args_info->gaussWidth_help = gengetopt_args_info_help[28] ; |
| 279 |
> |
args_info->bo_help = gengetopt_args_info_help[30] ; |
| 280 |
> |
args_info->ior_help = gengetopt_args_info_help[31] ; |
| 281 |
> |
args_info->for_help = gengetopt_args_info_help[32] ; |
| 282 |
> |
args_info->bad_help = gengetopt_args_info_help[33] ; |
| 283 |
> |
args_info->count_help = gengetopt_args_info_help[34] ; |
| 284 |
> |
args_info->gofr_help = gengetopt_args_info_help[35] ; |
| 285 |
> |
args_info->gofz_help = gengetopt_args_info_help[36] ; |
| 286 |
> |
args_info->r_theta_help = gengetopt_args_info_help[37] ; |
| 287 |
> |
args_info->r_omega_help = gengetopt_args_info_help[38] ; |
| 288 |
> |
args_info->r_z_help = gengetopt_args_info_help[39] ; |
| 289 |
> |
args_info->theta_omega_help = gengetopt_args_info_help[40] ; |
| 290 |
> |
args_info->gxyz_help = gengetopt_args_info_help[41] ; |
| 291 |
> |
args_info->twodgofr_help = gengetopt_args_info_help[42] ; |
| 292 |
> |
args_info->p2_help = gengetopt_args_info_help[43] ; |
| 293 |
> |
args_info->rp2_help = gengetopt_args_info_help[44] ; |
| 294 |
> |
args_info->scd_help = gengetopt_args_info_help[45] ; |
| 295 |
> |
args_info->density_help = gengetopt_args_info_help[46] ; |
| 296 |
> |
args_info->slab_density_help = gengetopt_args_info_help[47] ; |
| 297 |
> |
args_info->p_angle_help = gengetopt_args_info_help[48] ; |
| 298 |
> |
args_info->hxy_help = gengetopt_args_info_help[49] ; |
| 299 |
> |
args_info->rho_r_help = gengetopt_args_info_help[50] ; |
| 300 |
> |
args_info->angle_r_help = gengetopt_args_info_help[51] ; |
| 301 |
> |
args_info->hullvol_help = gengetopt_args_info_help[52] ; |
| 302 |
> |
args_info->rodlength_help = gengetopt_args_info_help[53] ; |
| 303 |
> |
args_info->tet_param_help = gengetopt_args_info_help[54] ; |
| 304 |
> |
args_info->tet_param_z_help = gengetopt_args_info_help[55] ; |
| 305 |
> |
args_info->tet_param_xyz_help = gengetopt_args_info_help[56] ; |
| 306 |
> |
args_info->rnemdz_help = gengetopt_args_info_help[57] ; |
| 307 |
> |
args_info->rnemdr_help = gengetopt_args_info_help[58] ; |
| 308 |
> |
args_info->rnemdrt_help = gengetopt_args_info_help[59] ; |
| 309 |
> |
args_info->nitrile_help = gengetopt_args_info_help[60] ; |
| 310 |
> |
args_info->multipole_help = gengetopt_args_info_help[61] ; |
| 311 |
> |
args_info->surfDiffusion_help = gengetopt_args_info_help[62] ; |
| 312 |
> |
args_info->hbond_help = gengetopt_args_info_help[63] ; |
| 313 |
|
|
| 314 |
|
} |
| 315 |
|
|
| 404 |
|
free_string_field (&(args_info->nbins_z_orig)); |
| 405 |
|
free_string_field (&(args_info->nanglebins_orig)); |
| 406 |
|
free_string_field (&(args_info->rcut_orig)); |
| 407 |
+ |
free_string_field (&(args_info->thetacut_orig)); |
| 408 |
|
free_string_field (&(args_info->dz_orig)); |
| 409 |
|
free_string_field (&(args_info->length_orig)); |
| 410 |
|
free_string_field (&(args_info->zlength_orig)); |
| 485 |
|
write_into_file(outfile, "nanglebins", args_info->nanglebins_orig, 0); |
| 486 |
|
if (args_info->rcut_given) |
| 487 |
|
write_into_file(outfile, "rcut", args_info->rcut_orig, 0); |
| 488 |
+ |
if (args_info->thetacut_given) |
| 489 |
+ |
write_into_file(outfile, "thetacut", args_info->thetacut_orig, 0); |
| 490 |
|
if (args_info->dz_given) |
| 491 |
|
write_into_file(outfile, "dz", args_info->dz_orig, 0); |
| 492 |
|
if (args_info->length_given) |
| 585 |
|
write_into_file(outfile, "nitrile", 0, 0 ); |
| 586 |
|
if (args_info->multipole_given) |
| 587 |
|
write_into_file(outfile, "multipole", 0, 0 ); |
| 588 |
+ |
if (args_info->surfDiffusion_given) |
| 589 |
+ |
write_into_file(outfile, "surfDiffusion", 0, 0 ); |
| 590 |
+ |
if (args_info->hbond_given) |
| 591 |
+ |
write_into_file(outfile, "hbond", 0, 0 ); |
| 592 |
|
|
| 593 |
|
|
| 594 |
|
i = EXIT_SUCCESS; |
| 674 |
|
args_info->rnemdrt_given = 0 ; |
| 675 |
|
args_info->nitrile_given = 0 ; |
| 676 |
|
args_info->multipole_given = 0 ; |
| 677 |
+ |
args_info->surfDiffusion_given = 0 ; |
| 678 |
+ |
args_info->hbond_given = 0 ; |
| 679 |
|
|
| 680 |
|
args_info->staticProps_group_counter = 0; |
| 681 |
|
} |
| 932 |
|
{ "nbins_z", 1, NULL, 0 }, |
| 933 |
|
{ "nanglebins", 1, NULL, 'a' }, |
| 934 |
|
{ "rcut", 1, NULL, 'c' }, |
| 935 |
+ |
{ "thetacut", 1, NULL, 0 }, |
| 936 |
|
{ "dz", 1, NULL, 0 }, |
| 937 |
|
{ "length", 1, NULL, 0 }, |
| 938 |
|
{ "zlength", 1, NULL, 0 }, |
| 982 |
|
{ "rnemdrt", 0, NULL, 0 }, |
| 983 |
|
{ "nitrile", 0, NULL, 0 }, |
| 984 |
|
{ "multipole", 0, NULL, 'm' }, |
| 985 |
+ |
{ "surfDiffusion", 0, NULL, 0 }, |
| 986 |
+ |
{ "hbond", 0, NULL, 0 }, |
| 987 |
|
{ 0, 0, 0, 0 } |
| 988 |
|
}; |
| 989 |
|
|
| 1229 |
|
goto failure; |
| 1230 |
|
|
| 1231 |
|
} |
| 1232 |
+ |
/* cutoff angle (thetacut). */ |
| 1233 |
+ |
else if (strcmp (long_options[option_index].name, "thetacut") == 0) |
| 1234 |
+ |
{ |
| 1235 |
+ |
|
| 1236 |
+ |
|
| 1237 |
+ |
if (update_arg( (void *)&(args_info->thetacut_arg), |
| 1238 |
+ |
&(args_info->thetacut_orig), &(args_info->thetacut_given), |
| 1239 |
+ |
&(local_args_info.thetacut_given), optarg, 0, 0, ARG_DOUBLE, |
| 1240 |
+ |
check_ambiguity, override, 0, 0, |
| 1241 |
+ |
"thetacut", '-', |
| 1242 |
+ |
additional_error)) |
| 1243 |
+ |
goto failure; |
| 1244 |
+ |
|
| 1245 |
+ |
} |
| 1246 |
|
/* slab width (dz). */ |
| 1247 |
|
else if (strcmp (long_options[option_index].name, "dz") == 0) |
| 1248 |
|
{ |
| 1895 |
|
goto failure; |
| 1896 |
|
|
| 1897 |
|
} |
| 1898 |
+ |
/* X, Y, and R (surface diffusion if Z exposed and bulk immobile) diffusion. */ |
| 1899 |
+ |
else if (strcmp (long_options[option_index].name, "surfDiffusion") == 0) |
| 1900 |
+ |
{ |
| 1901 |
+ |
|
| 1902 |
+ |
if (args_info->staticProps_group_counter && override) |
| 1903 |
+ |
reset_group_staticProps (args_info); |
| 1904 |
+ |
args_info->staticProps_group_counter += 1; |
| 1905 |
|
|
| 1906 |
+ |
if (update_arg( 0 , |
| 1907 |
+ |
0 , &(args_info->surfDiffusion_given), |
| 1908 |
+ |
&(local_args_info.surfDiffusion_given), optarg, 0, 0, ARG_NO, |
| 1909 |
+ |
check_ambiguity, override, 0, 0, |
| 1910 |
+ |
"surfDiffusion", '-', |
| 1911 |
+ |
additional_error)) |
| 1912 |
+ |
goto failure; |
| 1913 |
+ |
|
| 1914 |
+ |
} |
| 1915 |
+ |
/* Hydrogen Bonding statistics using geometric criteria (rcut and thetacut must be specified). */ |
| 1916 |
+ |
else if (strcmp (long_options[option_index].name, "hbond") == 0) |
| 1917 |
+ |
{ |
| 1918 |
+ |
|
| 1919 |
+ |
if (args_info->staticProps_group_counter && override) |
| 1920 |
+ |
reset_group_staticProps (args_info); |
| 1921 |
+ |
args_info->staticProps_group_counter += 1; |
| 1922 |
+ |
|
| 1923 |
+ |
if (update_arg( 0 , |
| 1924 |
+ |
0 , &(args_info->hbond_given), |
| 1925 |
+ |
&(local_args_info.hbond_given), optarg, 0, 0, ARG_NO, |
| 1926 |
+ |
check_ambiguity, override, 0, 0, |
| 1927 |
+ |
"hbond", '-', |
| 1928 |
+ |
additional_error)) |
| 1929 |
+ |
goto failure; |
| 1930 |
+ |
|
| 1931 |
+ |
} |
| 1932 |
+ |
|
| 1933 |
|
break; |
| 1934 |
|
case '?': /* Invalid option. */ |
| 1935 |
|
/* `getopt_long' already printed an error message. */ |