ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/trunk/src/applications/staticProps/StaticPropsCmd.cpp
(Generate patch)

Comparing trunk/src/applications/staticProps/StaticPropsCmd.cpp (file contents):
Revision 1993 by gezelter, Tue Apr 29 17:32:31 2014 UTC vs.
Revision 2031 by jmichalk, Fri Oct 31 18:40:40 2014 UTC

# Line 1 | Line 1
1   /*
2    File autogenerated by gengetopt version 2.22.4
3    generated with the following command:
4 <  gengetopt --file-name=StaticPropsCmd --unamed-opts
4 >  gengetopt -i StaticProps.ggo -F StaticPropsCmd -c cpp
5  
6    The developers of gengetopt consider the fixed text that goes in all
7    gengetopt output files to be in the public domain:
# Line 21 | Line 21
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 "StaticPropsCmd.h"
27  
28   const char *gengetopt_args_info_purpose = "";
29  
30 < const char *gengetopt_args_info_usage = "Usage: StaticProps [OPTIONS]... [FILES]...";
30 > const char *gengetopt_args_info_usage = "Usage: StaticProps [OPTIONS]...";
31  
32   const char *gengetopt_args_info_description = "";
33  
# Line 62 | Line 58 | const char *gengetopt_args_info_help[] = {
58    "      --begin=INT               begin internal index",
59    "      --end=INT                 end internal index",
60    "      --radius=DOUBLE           nanoparticle radius",
61 +  "  -v, --voxelSize=DOUBLE        voxel size (angstroms)",
62 +  "      --gaussWidth=DOUBLE       Gaussian width (angstroms)",
63    "\n Group: staticProps\n   an option of this group is required",
64    "      --bo                      bond order parameter (--rcut must be specified)",
65    "      --ior                     icosahedral bond order parameter as a function \n                                  of radius (--rcut must be specified)",
# Line 89 | Line 87 | const char *gengetopt_args_info_help[] = {
87    "      --rodlength               length of nanorod",
88    "  -Q, --tet_param               tetrahedrality order parameter (Qk)",
89    "      --tet_param_z             spatially-resolved tetrahedrality order \n                                  parameter Qk(z)",
90 +  "      --tet_param_xyz           volume-resolved tetrahedrality order parameter \n                                  Qk(x,y,z).  (voxelSize, rcut, and gaussWidth \n                                  must be specified)",
91    "      --rnemdz                  slab-resolved RNEMD statistics (temperature, \n                                  density, velocity)",
92    "      --rnemdr                  shell-resolved RNEMD statistics (temperature, \n                                  density, angular velocity)",
93    "      --rnemdrt                 shell and angle-resolved RNEMD statistics \n                                  (temperature, density, angular velocity)",
94 <  "      --uFreqMap                electrostatic potential to frequency map based \n                                  on the Cho nitrile fits",
94 >  "      --nitrile                 electrostatic potential to frequency map based \n                                  on the Cho nitrile fits",
95 >  "  -m, --multipole               average multipole moments contained within \n                                  cutoff spheres as a function of radius",
96 >  "      --surfDiffusion           X, Y, and R (surface diffusion if Z exposed and \n                                  bulk immobile) diffusion",
97      0
98   };
99  
# Line 146 | Line 147 | void clear_given (struct gengetopt_args_info *args_inf
147    args_info->begin_given = 0 ;
148    args_info->end_given = 0 ;
149    args_info->radius_given = 0 ;
150 +  args_info->voxelSize_given = 0 ;
151 +  args_info->gaussWidth_given = 0 ;
152    args_info->bo_given = 0 ;
153    args_info->ior_given = 0 ;
154    args_info->for_given = 0 ;
# Line 172 | Line 175 | void clear_given (struct gengetopt_args_info *args_inf
175    args_info->rodlength_given = 0 ;
176    args_info->tet_param_given = 0 ;
177    args_info->tet_param_z_given = 0 ;
178 +  args_info->tet_param_xyz_given = 0 ;
179    args_info->rnemdz_given = 0 ;
180    args_info->rnemdr_given = 0 ;
181    args_info->rnemdrt_given = 0 ;
182 <  args_info->uFreqMap_given = 0 ;
182 >  args_info->nitrile_given = 0 ;
183 >  args_info->multipole_given = 0 ;
184 >  args_info->surfDiffusion_given = 0 ;
185    args_info->staticProps_group_counter = 0 ;
186   }
187  
# Line 222 | Line 228 | void clear_args (struct gengetopt_args_info *args_info
228    args_info->begin_orig = NULL;
229    args_info->end_orig = NULL;
230    args_info->radius_orig = NULL;
231 +  args_info->voxelSize_orig = NULL;
232 +  args_info->gaussWidth_orig = NULL;
233    
234   }
235  
# Line 256 | Line 264 | void init_args_info(struct gengetopt_args_info *args_i
264    args_info->begin_help = gengetopt_args_info_help[23] ;
265    args_info->end_help = gengetopt_args_info_help[24] ;
266    args_info->radius_help = gengetopt_args_info_help[25] ;
267 <  args_info->bo_help = gengetopt_args_info_help[27] ;
268 <  args_info->ior_help = gengetopt_args_info_help[28] ;
269 <  args_info->for_help = gengetopt_args_info_help[29] ;
270 <  args_info->bad_help = gengetopt_args_info_help[30] ;
271 <  args_info->count_help = gengetopt_args_info_help[31] ;
272 <  args_info->gofr_help = gengetopt_args_info_help[32] ;
273 <  args_info->gofz_help = gengetopt_args_info_help[33] ;
274 <  args_info->r_theta_help = gengetopt_args_info_help[34] ;
275 <  args_info->r_omega_help = gengetopt_args_info_help[35] ;
276 <  args_info->r_z_help = gengetopt_args_info_help[36] ;
277 <  args_info->theta_omega_help = gengetopt_args_info_help[37] ;
278 <  args_info->gxyz_help = gengetopt_args_info_help[38] ;
279 <  args_info->twodgofr_help = gengetopt_args_info_help[39] ;
280 <  args_info->p2_help = gengetopt_args_info_help[40] ;
281 <  args_info->rp2_help = gengetopt_args_info_help[41] ;
282 <  args_info->scd_help = gengetopt_args_info_help[42] ;
283 <  args_info->density_help = gengetopt_args_info_help[43] ;
284 <  args_info->slab_density_help = gengetopt_args_info_help[44] ;
285 <  args_info->p_angle_help = gengetopt_args_info_help[45] ;
286 <  args_info->hxy_help = gengetopt_args_info_help[46] ;
287 <  args_info->rho_r_help = gengetopt_args_info_help[47] ;
288 <  args_info->angle_r_help = gengetopt_args_info_help[48] ;
289 <  args_info->hullvol_help = gengetopt_args_info_help[49] ;
290 <  args_info->rodlength_help = gengetopt_args_info_help[50] ;
291 <  args_info->tet_param_help = gengetopt_args_info_help[51] ;
292 <  args_info->tet_param_z_help = gengetopt_args_info_help[52] ;
293 <  args_info->rnemdz_help = gengetopt_args_info_help[53] ;
294 <  args_info->rnemdr_help = gengetopt_args_info_help[54] ;
295 <  args_info->rnemdrt_help = gengetopt_args_info_help[55] ;
296 <  args_info->uFreqMap_help = gengetopt_args_info_help[56] ;
267 >  args_info->voxelSize_help = gengetopt_args_info_help[26] ;
268 >  args_info->gaussWidth_help = gengetopt_args_info_help[27] ;
269 >  args_info->bo_help = gengetopt_args_info_help[29] ;
270 >  args_info->ior_help = gengetopt_args_info_help[30] ;
271 >  args_info->for_help = gengetopt_args_info_help[31] ;
272 >  args_info->bad_help = gengetopt_args_info_help[32] ;
273 >  args_info->count_help = gengetopt_args_info_help[33] ;
274 >  args_info->gofr_help = gengetopt_args_info_help[34] ;
275 >  args_info->gofz_help = gengetopt_args_info_help[35] ;
276 >  args_info->r_theta_help = gengetopt_args_info_help[36] ;
277 >  args_info->r_omega_help = gengetopt_args_info_help[37] ;
278 >  args_info->r_z_help = gengetopt_args_info_help[38] ;
279 >  args_info->theta_omega_help = gengetopt_args_info_help[39] ;
280 >  args_info->gxyz_help = gengetopt_args_info_help[40] ;
281 >  args_info->twodgofr_help = gengetopt_args_info_help[41] ;
282 >  args_info->p2_help = gengetopt_args_info_help[42] ;
283 >  args_info->rp2_help = gengetopt_args_info_help[43] ;
284 >  args_info->scd_help = gengetopt_args_info_help[44] ;
285 >  args_info->density_help = gengetopt_args_info_help[45] ;
286 >  args_info->slab_density_help = gengetopt_args_info_help[46] ;
287 >  args_info->p_angle_help = gengetopt_args_info_help[47] ;
288 >  args_info->hxy_help = gengetopt_args_info_help[48] ;
289 >  args_info->rho_r_help = gengetopt_args_info_help[49] ;
290 >  args_info->angle_r_help = gengetopt_args_info_help[50] ;
291 >  args_info->hullvol_help = gengetopt_args_info_help[51] ;
292 >  args_info->rodlength_help = gengetopt_args_info_help[52] ;
293 >  args_info->tet_param_help = gengetopt_args_info_help[53] ;
294 >  args_info->tet_param_z_help = gengetopt_args_info_help[54] ;
295 >  args_info->tet_param_xyz_help = gengetopt_args_info_help[55] ;
296 >  args_info->rnemdz_help = gengetopt_args_info_help[56] ;
297 >  args_info->rnemdr_help = gengetopt_args_info_help[57] ;
298 >  args_info->rnemdrt_help = gengetopt_args_info_help[58] ;
299 >  args_info->nitrile_help = gengetopt_args_info_help[59] ;
300 >  args_info->multipole_help = gengetopt_args_info_help[60] ;
301 >  args_info->surfDiffusion_help = gengetopt_args_info_help[61] ;
302    
303   }
304  
# Line 327 | Line 340 | cmdline_parser_init (struct gengetopt_args_info *args_
340    clear_given (args_info);
341    clear_args (args_info);
342    init_args_info (args_info);
330
331  args_info->inputs = 0;
332  args_info->inputs_num = 0;
343   }
344  
345   void
# Line 368 | Line 378 | cmdline_parser_release (struct gengetopt_args_info *ar
378   static void
379   cmdline_parser_release (struct gengetopt_args_info *args_info)
380   {
381 <  unsigned int i;
381 >
382    free_string_field (&(args_info->input_arg));
383    free_string_field (&(args_info->input_orig));
384    free_string_field (&(args_info->output_arg));
# Line 401 | Line 411 | cmdline_parser_release (struct gengetopt_args_info *ar
411    free_string_field (&(args_info->begin_orig));
412    free_string_field (&(args_info->end_orig));
413    free_string_field (&(args_info->radius_orig));
414 +  free_string_field (&(args_info->voxelSize_orig));
415 +  free_string_field (&(args_info->gaussWidth_orig));
416    
417    
406  for (i = 0; i < args_info->inputs_num; ++i)
407    free (args_info->inputs [i]);
418  
409  if (args_info->inputs_num)
410    free (args_info->inputs);
411
419    clear_given (args_info);
420   }
421  
# Line 488 | Line 495 | cmdline_parser_dump(FILE *outfile, struct gengetopt_ar
495      write_into_file(outfile, "end", args_info->end_orig, 0);
496    if (args_info->radius_given)
497      write_into_file(outfile, "radius", args_info->radius_orig, 0);
498 +  if (args_info->voxelSize_given)
499 +    write_into_file(outfile, "voxelSize", args_info->voxelSize_orig, 0);
500 +  if (args_info->gaussWidth_given)
501 +    write_into_file(outfile, "gaussWidth", args_info->gaussWidth_orig, 0);
502    if (args_info->bo_given)
503      write_into_file(outfile, "bo", 0, 0 );
504    if (args_info->ior_given)
# Line 540 | Line 551 | cmdline_parser_dump(FILE *outfile, struct gengetopt_ar
551      write_into_file(outfile, "tet_param", 0, 0 );
552    if (args_info->tet_param_z_given)
553      write_into_file(outfile, "tet_param_z", 0, 0 );
554 +  if (args_info->tet_param_xyz_given)
555 +    write_into_file(outfile, "tet_param_xyz", 0, 0 );
556    if (args_info->rnemdz_given)
557      write_into_file(outfile, "rnemdz", 0, 0 );
558    if (args_info->rnemdr_given)
559      write_into_file(outfile, "rnemdr", 0, 0 );
560    if (args_info->rnemdrt_given)
561      write_into_file(outfile, "rnemdrt", 0, 0 );
562 <  if (args_info->uFreqMap_given)
563 <    write_into_file(outfile, "uFreqMap", 0, 0 );
562 >  if (args_info->nitrile_given)
563 >    write_into_file(outfile, "nitrile", 0, 0 );
564 >  if (args_info->multipole_given)
565 >    write_into_file(outfile, "multipole", 0, 0 );
566 >  if (args_info->surfDiffusion_given)
567 >    write_into_file(outfile, "surfDiffusion", 0, 0 );
568    
569  
570    i = EXIT_SUCCESS;
# Line 627 | Line 644 | reset_group_staticProps(struct gengetopt_args_info *ar
644    args_info->rodlength_given = 0 ;
645    args_info->tet_param_given = 0 ;
646    args_info->tet_param_z_given = 0 ;
647 +  args_info->tet_param_xyz_given = 0 ;
648    args_info->rnemdz_given = 0 ;
649    args_info->rnemdr_given = 0 ;
650    args_info->rnemdrt_given = 0 ;
651 <  args_info->uFreqMap_given = 0 ;
651 >  args_info->nitrile_given = 0 ;
652 >  args_info->multipole_given = 0 ;
653 >  args_info->surfDiffusion_given = 0 ;
654  
655    args_info->staticProps_group_counter = 0;
656   }
# Line 902 | Line 922 | cmdline_parser_internal (
922          { "begin",      1, NULL, 0 },
923          { "end",        1, NULL, 0 },
924          { "radius",     1, NULL, 0 },
925 +        { "voxelSize",  1, NULL, 'v' },
926 +        { "gaussWidth", 1, NULL, 0 },
927          { "bo", 0, NULL, 0 },
928          { "ior",        0, NULL, 0 },
929          { "for",        0, NULL, 0 },
# Line 928 | Line 950 | cmdline_parser_internal (
950          { "rodlength",  0, NULL, 0 },
951          { "tet_param",  0, NULL, 'Q' },
952          { "tet_param_z",        0, NULL, 0 },
953 +        { "tet_param_xyz",      0, NULL, 0 },
954          { "rnemdz",     0, NULL, 0 },
955          { "rnemdr",     0, NULL, 0 },
956          { "rnemdrt",    0, NULL, 0 },
957 <        { "uFreqMap",   0, NULL, 0 },
957 >        { "nitrile",    0, NULL, 0 },
958 >        { "multipole",  0, NULL, 'm' },
959 >        { "surfDiffusion",      0, NULL, 0 },
960          { 0,  0, 0, 0 }
961        };
962  
963 <      c = getopt_long (argc, argv, "hVi:o:n:b:x:y:a:c:z:gpsdQ", long_options, &option_index);
963 >      c = getopt_long (argc, argv, "hVi:o:n:b:x:y:a:c:z:v:gpsdQm", long_options, &option_index);
964  
965        if (c == -1) break;       /* Exit from `while (1)' loop.  */
966  
# Line 1059 | Line 1084 | cmdline_parser_internal (
1084              goto failure;
1085          
1086            break;
1087 +        case 'v':       /* voxel size (angstroms).  */
1088 +        
1089 +        
1090 +          if (update_arg( (void *)&(args_info->voxelSize_arg),
1091 +               &(args_info->voxelSize_orig), &(args_info->voxelSize_given),
1092 +              &(local_args_info.voxelSize_given), optarg, 0, 0, ARG_DOUBLE,
1093 +              check_ambiguity, override, 0, 0,
1094 +              "voxelSize", 'v',
1095 +              additional_error))
1096 +            goto failure;
1097 +        
1098 +          break;
1099          case 'g':       /* g(r).  */
1100          
1101            if (args_info->staticProps_group_counter && override)
# Line 1134 | Line 1171 | cmdline_parser_internal (
1171              goto failure;
1172          
1173            break;
1174 +        case 'm':       /* average multipole moments contained within cutoff spheres as a function of radius.  */
1175 +        
1176 +          if (args_info->staticProps_group_counter && override)
1177 +            reset_group_staticProps (args_info);
1178 +          args_info->staticProps_group_counter += 1;
1179 +        
1180 +          if (update_arg( 0 ,
1181 +               0 , &(args_info->multipole_given),
1182 +              &(local_args_info.multipole_given), optarg, 0, 0, ARG_NO,
1183 +              check_ambiguity, override, 0, 0,
1184 +              "multipole", 'm',
1185 +              additional_error))
1186 +            goto failure;
1187 +        
1188 +          break;
1189  
1190          case 0: /* Long option with no short option */
1191            /* number of bins in z axis.  */
# Line 1346 | Line 1398 | cmdline_parser_internal (
1398                goto failure;
1399            
1400            }
1401 +          /* Gaussian width (angstroms).  */
1402 +          else if (strcmp (long_options[option_index].name, "gaussWidth") == 0)
1403 +          {
1404 +          
1405 +          
1406 +            if (update_arg( (void *)&(args_info->gaussWidth_arg),
1407 +                 &(args_info->gaussWidth_orig), &(args_info->gaussWidth_given),
1408 +                &(local_args_info.gaussWidth_given), optarg, 0, 0, ARG_DOUBLE,
1409 +                check_ambiguity, override, 0, 0,
1410 +                "gaussWidth", '-',
1411 +                additional_error))
1412 +              goto failure;
1413 +          
1414 +          }
1415            /* bond order parameter (--rcut must be specified).  */
1416            else if (strcmp (long_options[option_index].name, "bo") == 0)
1417            {
# Line 1699 | Line 1765 | cmdline_parser_internal (
1765                  &(local_args_info.tet_param_z_given), optarg, 0, 0, ARG_NO,
1766                  check_ambiguity, override, 0, 0,
1767                  "tet_param_z", '-',
1768 +                additional_error))
1769 +              goto failure;
1770 +          
1771 +          }
1772 +          /* volume-resolved tetrahedrality order parameter Qk(x,y,z).  (voxelSize, rcut, and gaussWidth must be specified).  */
1773 +          else if (strcmp (long_options[option_index].name, "tet_param_xyz") == 0)
1774 +          {
1775 +          
1776 +            if (args_info->staticProps_group_counter && override)
1777 +              reset_group_staticProps (args_info);
1778 +            args_info->staticProps_group_counter += 1;
1779 +          
1780 +            if (update_arg( 0 ,
1781 +                 0 , &(args_info->tet_param_xyz_given),
1782 +                &(local_args_info.tet_param_xyz_given), optarg, 0, 0, ARG_NO,
1783 +                check_ambiguity, override, 0, 0,
1784 +                "tet_param_xyz", '-',
1785                  additional_error))
1786                goto failure;
1787            
# Line 1755 | Line 1838 | cmdline_parser_internal (
1838            
1839            }
1840            /* electrostatic potential to frequency map based on the Cho nitrile fits.  */
1841 <          else if (strcmp (long_options[option_index].name, "uFreqMap") == 0)
1841 >          else if (strcmp (long_options[option_index].name, "nitrile") == 0)
1842            {
1843            
1844              if (args_info->staticProps_group_counter && override)
# Line 1763 | Line 1846 | cmdline_parser_internal (
1846              args_info->staticProps_group_counter += 1;
1847            
1848              if (update_arg( 0 ,
1849 <                 0 , &(args_info->uFreqMap_given),
1850 <                &(local_args_info.uFreqMap_given), optarg, 0, 0, ARG_NO,
1849 >                 0 , &(args_info->nitrile_given),
1850 >                &(local_args_info.nitrile_given), optarg, 0, 0, ARG_NO,
1851                  check_ambiguity, override, 0, 0,
1852 <                "uFreqMap", '-',
1852 >                "nitrile", '-',
1853                  additional_error))
1854                goto failure;
1855            
1856            }
1857 +          /* X, Y, and R (surface diffusion if Z exposed and bulk immobile) diffusion.  */
1858 +          else if (strcmp (long_options[option_index].name, "surfDiffusion") == 0)
1859 +          {
1860            
1861 +            if (args_info->staticProps_group_counter && override)
1862 +              reset_group_staticProps (args_info);
1863 +            args_info->staticProps_group_counter += 1;
1864 +          
1865 +            if (update_arg( 0 ,
1866 +                 0 , &(args_info->surfDiffusion_given),
1867 +                &(local_args_info.surfDiffusion_given), optarg, 0, 0, ARG_NO,
1868 +                check_ambiguity, override, 0, 0,
1869 +                "surfDiffusion", '-',
1870 +                additional_error))
1871 +              goto failure;
1872 +          
1873 +          }
1874 +          
1875            break;
1876          case '?':       /* Invalid option.  */
1877            /* `getopt_long' already printed an error message.  */
# Line 1801 | Line 1901 | cmdline_parser_internal (
1901    if ( error )
1902      return (EXIT_FAILURE);
1903  
1804  if (optind < argc)
1805    {
1806      int i = 0 ;
1807      int found_prog_name = 0;
1808      /* whether program name, i.e., argv[0], is in the remaining args
1809         (this may happen with some implementations of getopt,
1810          but surely not with the one included by gengetopt) */
1811
1812      i = optind;
1813      while (i < argc)
1814        if (argv[i++] == argv[0]) {
1815          found_prog_name = 1;
1816          break;
1817        }
1818      i = 0;
1819
1820      args_info->inputs_num = argc - optind - found_prog_name;
1821      args_info->inputs =
1822        (char **)(malloc ((args_info->inputs_num)*sizeof(char *))) ;
1823      while (optind < argc)
1824        if (argv[optind++] != argv[0])
1825          args_info->inputs[ i++ ] = gengetopt_strdup (argv[optind-1]) ;
1826    }
1827
1904    return 0;
1905  
1906   failure:

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines