ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/src/applications/dump2Xyz/Dump2XYZCmd.c
(Generate patch)

Comparing trunk/OOPSE-4/src/applications/dump2Xyz/Dump2XYZCmd.c (file contents):
Revision 2053 by tim, Fri Feb 18 23:07:32 2005 UTC vs.
Revision 2097 by tim, Wed Mar 9 17:30:29 2005 UTC

# Line 40 | Line 40 | cmdline_parser_print_help (void)
40    printf("  -i, --input=filename               input dump file\n");
41    printf("  -o, --output=filename              output file name\n");
42    printf("  -n, --frame=INT                    print every n frame  (default=`1')\n");
43  printf("  -d, --dipole                       print the dipole moments  (default=off)\n");
43    printf("  -w, --water                        skip the the waters  (default=off)\n");
44    printf("  -m, --periodicBox                  map to the periodic box  (default=off)\n");
45    printf("  -z, --zconstraint                  replace the atom types of zconstraint \n                                       molecules  (default=off)\n");
46    printf("  -r, --rigidbody                    add a pseudo COM atom to rigidbody  \n                                       (default=off)\n");
47    printf("  -t, --watertype                    replace the atom type of water model  \n                                       (default=on)\n");
48 <  printf("  -g, --ignore=atomtype              ignore the atom types\n");
50 <  printf("  -s, --selection=selection script  selection syntax:\n"
51 <         "                                    select DMPC -- select DMPC molecule\n"
52 <         "                                    select DMPC.* -- select all atoms and all rigidbodies belong to DMPC molecule(same as above)\n"
53 <         "                                    select not DMPC -- select all atoms and all rigidbodies do not belong to DMPC molecule\n"
54 <         "                                    select C* and 4 to 7 -- select stuntdoubles which match C* and which index is between [4, 7)\n"
55 <         "                                    select 5 -- select stuntdobule whose global index is 5\n"
56 <         "                                    select within (5.0, HDP or PO4) -- select stuntdoubles which is within 5 A to HDP or PO4\n"
57 <         "                                    select DMPC.3 -- select stuntdouble which internal index is 3\n"
58 <         "                                    select DMPC.DMPC_RB_*.* --select atoms belong to rigid body inside DMPC molecule \n");
48 >  printf("  -s, --selection=selection script   general selection syntax(now only support \n                                       select atoms within a specified range)\n");
49    printf("      --originsele=selection script  select origin\n");
50    printf("      --refsele=selection script     select reference\n");
51    printf("      --repeatX=INT                  The number of images to repeat in the x \n                                       direction  (default=`0')\n");
# Line 82 | Line 72 | cmdline_parser (int argc, char * const *argv, struct g
72   cmdline_parser (int argc, char * const *argv, struct gengetopt_args_info *args_info)
73   {
74    int c;        /* Character of the parsed option.  */
85  int i;        /* Counter */
86  struct ignore_list
87  {
88    char * ignore_arg;
89    struct ignore_list * next;
90  };
91  struct ignore_list * ignore_list = NULL,* ignore_new = NULL;
92  
75    int missing_required_options = 0;
76  
77    args_info->help_given = 0 ;
# Line 97 | Line 79 | cmdline_parser (int argc, char * const *argv, struct g
79    args_info->input_given = 0 ;
80    args_info->output_given = 0 ;
81    args_info->frame_given = 0 ;
100  args_info->dipole_given = 0 ;
82    args_info->water_given = 0 ;
83    args_info->periodicBox_given = 0 ;
84    args_info->zconstraint_given = 0 ;
85    args_info->rigidbody_given = 0 ;
86    args_info->watertype_given = 0 ;
106  args_info->ignore_given = 0 ;
87    args_info->selection_given = 0 ;
88    args_info->originsele_given = 0 ;
89    args_info->refsele_given = 0 ;
# Line 114 | Line 94 | cmdline_parser (int argc, char * const *argv, struct g
94    args_info->input_arg = NULL; \
95    args_info->output_arg = NULL; \
96    args_info->frame_arg = 1 ;\
117  args_info->dipole_flag = 0;\
97    args_info->water_flag = 0;\
98    args_info->periodicBox_flag = 0;\
99    args_info->zconstraint_flag = 0;\
100    args_info->rigidbody_flag = 0;\
101    args_info->watertype_flag = 1;\
123  args_info->ignore_arg = NULL; \
102    args_info->selection_arg = NULL; \
103    args_info->originsele_arg = NULL; \
104    args_info->refsele_arg = NULL; \
# Line 147 | Line 125 | cmdline_parser (int argc, char * const *argv, struct g
125          { "input",      1, NULL, 'i' },
126          { "output",     1, NULL, 'o' },
127          { "frame",      1, NULL, 'n' },
150        { "dipole",     0, NULL, 'd' },
128          { "water",      0, NULL, 'w' },
129          { "periodicBox",        0, NULL, 'm' },
130          { "zconstraint",        0, NULL, 'z' },
131          { "rigidbody",  0, NULL, 'r' },
132          { "watertype",  0, NULL, 't' },
156        { "ignore",     1, NULL, 'g' },
133          { "selection",  1, NULL, 's' },
134          { "originsele", 1, NULL, 0 },
135          { "refsele",    1, NULL, 0 },
# Line 164 | Line 140 | cmdline_parser (int argc, char * const *argv, struct g
140        };
141  
142        stop_char = 0;
143 <      c = getopt_long (argc, argv, "hVi:o:n:dwmzrtg:s:", long_options, &option_index);
143 >      c = getopt_long (argc, argv, "hVi:o:n:wmzrts:", long_options, &option_index);
144  
145        if (c == -1) break;       /* Exit from `while (1)' loop.  */
146  
# Line 213 | Line 189 | cmdline_parser (int argc, char * const *argv, struct g
189            args_info->frame_arg = strtol (optarg,&stop_char,0);
190            break;
191  
216        case 'd':       /* print the dipole moments.  */
217          if (args_info->dipole_given)
218            {
219              fprintf (stderr, "%s: `--dipole' (`-d') option given more than once\n", CMDLINE_PARSER_PACKAGE);
220              clear_args ();
221              exit (EXIT_FAILURE);
222            }
223          args_info->dipole_given = 1;
224          args_info->dipole_flag = !(args_info->dipole_flag);
225          break;
226
192          case 'w':       /* skip the the waters.  */
193            if (args_info->water_given)
194              {
# Line 279 | Line 244 | cmdline_parser (int argc, char * const *argv, struct g
244            args_info->watertype_flag = !(args_info->watertype_flag);
245            break;
246  
282        case 'g':       /* ignore the atom types.  */
283          args_info->ignore_given++;
284          ignore_new = (struct ignore_list *) malloc (sizeof (struct ignore_list));
285          ignore_new->next = ignore_list;
286          ignore_list = ignore_new;
287          ignore_new->ignore_arg = gengetopt_strdup (optarg);
288          break;
289
247          case 's':       /* general selection syntax(now only support select atoms within a specified range).  */
248            if (args_info->selection_given)
249              {
# Line 390 | Line 347 | cmdline_parser (int argc, char * const *argv, struct g
347    if ( missing_required_options )
348      exit (EXIT_FAILURE);
349  
393  if (args_info->ignore_given)
394    {
395      args_info->ignore_arg = (char * *) malloc (args_info->ignore_given * sizeof (char *));
396      for (i = 0; i < args_info->ignore_given; i++)
397        {
398          args_info->ignore_arg [i] = ignore_list->ignore_arg;
399          ignore_list = ignore_list->next;
400        }
401    }
402  
350    return 0;
351   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines