ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/tcProps/tcProps.c
(Generate patch)

Comparing trunk/tcProps/tcProps.c (file contents):
Revision 1058 by mmeineke, Wed Feb 18 21:20:51 2004 UTC vs.
Revision 1072 by mmeineke, Fri Feb 27 20:39:17 2004 UTC

# Line 2 | Line 2
2  
3   #include <stdio.h>
4   #include <stdlib.h>
5 + #include <string.h>
6  
7  
8   #include "params.h"
9   #include "tcProps.h"
10   #include "readWrite.h"
11   #include "scdCorr.h"
12 + #include "directorHead.h"
13 + #include "directorWhole.h"
14 + #inlcude "rmsd.h"
15  
16  
17   #define VERSION_MAJOR 0
# Line 30 | Line 34 | int main( int argC, char *argV[] ){
34    
35    struct atomCoord atoms[nAtoms];
36    int i,j,k;
33  char* inName;
34  int nFrames;
37    
38    char* outPrefix; // the output prefix
39    char currentFlag; // used in parsing the flags
40    int done = 0; // multipurpose boolean
41    int havePrefix; // boolean for the output prefix  
42 +  int haveMaxLength;
43    char* conversionCheck;
44    int conversionError;
45    int optionError;
# Line 44 | Line 47 | int main( int argC, char *argV[] ){
47    char* pair2;
48    int scdCorr;
49    double startTime;
50 +  double maxLength;
51 +  int directorHead, directorWhole;
52  
53    // system initialization
54    
# Line 55 | Line 60 | int main( int argC, char *argV[] ){
60    outPrefix = NULL;
61    inName = NULL;
62    
63 +  haveMaxLength = 0;
64    conversionError = 0;
65    optionError = 0;
66    havePrefix = 0;
67    scdCorr = 0;
68    startTime = 0.0;
69 +  directorHead = 0;
70 +  directorWhole = 0;
71    
72  
73    // parse the command line
# Line 231 | Line 239 | int main( int argC, char *argV[] ){
239            case 'l':
240              // -l <double>    set <double> to the maxLength
241  
242 <            haveMaxLength = true;
242 >            haveMaxLength = 1;
243              j++;
244              currentFlag = argV[i][j];
245                
# Line 292 | Line 300 | int main( int argC, char *argV[] ){
300              break;
301  
302            case 's':
303 <            // -s turn on separate output files
303 >            // -s turn on Scd corr
304  
305              scdCorr = 1;
306              break;
307  
308 +          case 'h':
309 +            // -h turn on director head
310  
311 +            directorHead = 1;
312 +            break;
313 +
314 +          case 'w':
315 +            // -h turn on director head
316 +
317 +            directorWhole = 1;
318 +            break;
319 +
320 +
321            default:
322  
323 <            sprintf(painCave.errMsg,
323 >            fprintf( stderr,
324                      "\n"
325                      "Bad option \"-%c\"\n", currentFlag);
326              usage();
# Line 336 | Line 356 | int main( int argC, char *argV[] ){
356      exit(0);
357    }
358  
359 +  if( outPrefix == NULL )
360 +    outPrefix = inName;
361  
362 +
363    // initialize the arrays
364  
365    for(i=0;i<nLipids;i++){
366  
367      atoms[nLipAtoms*i+0].type = HEAD;
368 +    atoms[nLipAtoms*i+0].mass = 72;
369      atoms[nLipAtoms*i+0].u[0] = 0.0;
370      atoms[nLipAtoms*i+0].u[1] = 0.0;
371      atoms[nLipAtoms*i+0].u[2] = 1.0;
372      
373 +    
374  
375      atoms[nLipAtoms*i+1].type = CH2;
376 +    atoms[nLipAtoms*i+1].mass = 14.03;
377  
378      atoms[nLipAtoms*i+2].type = CH;
379 +    atoms[nLipAtoms*i+2].mass = 13.02;
380  
381      atoms[nLipAtoms*i+3].type = CH2;
382 +    atoms[nLipAtoms*i+3].mass = 14.03;
383  
384      atoms[nLipAtoms*i+4].type = CH2;
385 +    atoms[nLipAtoms*i+4].mass = 14.03;
386  
387      atoms[nLipAtoms*i+5].type = CH2;
388 +    atoms[nLipAtoms*i+5].mass = 14.03;
389  
390      atoms[nLipAtoms*i+6].type = CH2;
391 +    atoms[nLipAtoms*i+6].mass = 14.03;
392  
393      atoms[nLipAtoms*i+7].type = CH2;
394 +    atoms[nLipAtoms*i+7].mass = 14.03;
395  
396      atoms[nLipAtoms*i+8].type = CH2;
397 +    atoms[nLipAtoms*i+8].mass = 14.03;
398  
399      atoms[nLipAtoms*i+9].type = CH2;
400 +    atoms[nLipAtoms*i+9].mass = 14.03;
401  
402      atoms[nLipAtoms*i+10].type = CH3;
403 +    atoms[nLipAtoms*i+10].mass = 15.04;
404  
405      atoms[nLipAtoms*i+11].type = CH2;
406 +    atoms[nLipAtoms*i+11].mass = 14.03;
407  
408      atoms[nLipAtoms*i+12].type = CH2;
409 +    atoms[nLipAtoms*i+12].mass = 14.03;
410  
411 <    atoms[nLipAtoms*i+13].type = CH2;
411 >    atoms[nLipAtoms*i+13].type = CH2;    
412 >    atoms[nLipAtoms*i+13].mass = 14.03;
413  
414      atoms[nLipAtoms*i+14].type = CH2;
415 +    atoms[nLipAtoms*i+14].mass = 14.03;
416    
417      atoms[nLipAtoms*i+15].type = CH2;
418 +    atoms[nLipAtoms*i+15].mass = 14.03;
419    
420      atoms[nLipAtoms*i+16].type = CH2;
421 +    atoms[nLipAtoms*i+16].mass = 14.03;
422    
423      atoms[nLipAtoms*i+17].type = CH2;
424 +    atoms[nLipAtoms*i+17].mass = 14.03;
425    
426      atoms[nLipAtoms*i+18].type = CH3;
427 +    atoms[nLipAtoms*i+18].mass = 15.04;
428    }
429    
430    for(i=(nLipAtoms*nLipids);i<nAtoms;i++){
431      atoms[i].type = SSD;
432 +    atoms[i].mass = 18.03;
433      atoms[i].u[0] = 0.0;
434      atoms[i].u[1] = 0.0;
435      atoms[i].u[2] = 1.0;
# Line 393 | Line 437 | int main( int argC, char *argV[] ){
437  
438    // read and set the frames
439    
440 <  openFile( inName );
440 >  openFile();
441  
442    fprintf( stdout,
443             "\n"
# Line 401 | Line 445 | int main( int argC, char *argV[] ){
445             inName );
446    fflush(stdout);
447  
448 <  setFrames( inName );
448 >  setFrames();
449    
450    fprintf( stdout,
451             "done.\n"
452 <           "nFrames = %d\n.",
452 >           "nFrames = %d.\n",
453             nFrames );
454    fflush(stdout);
455  
# Line 415 | Line 459 | int main( int argC, char *argV[] ){
459                "Calculating the Scd correlation\n" );
460      fflush( stdout );
461      
462 <    calcScdCorr( startTime );
462 >    calcScdCorr( startTime, atoms, outPrefix );
463    }
464 +
465 +  if(directorHead){
466 +
467 +    fprintf ( stdout,
468 +              "Calculating the Head director\n" );
469 +    fflush( stdout );
470 +    
471 +    calcDirHeadCorr( startTime, atoms, outPrefix );
472 +  }
473 +
474 +  if(directorWhole){
475 +
476 +    fprintf ( stdout,
477 +              "Calculating the bilayer director\n" );
478 +    fflush( stdout );
479 +    
480 +    calcDirWholeCorr( startTime, atoms, outPrefix );
481 +  }
482    
483  
484 +  closeFile();
485 +
486   }
487  
488  
# Line 440 | Line 504 | void usage(){
504                  "   -l <maxLength>  set the maximum value of r\n"
505                  "                     *Defaults to 1/2 smallest length of first frame.\n"
506                  "   -s              Calculate the Scd chain correlation.\n"
507 +                "   -h              Calculate the directors for the head groups\n"
508 +                "   -w              Calculate the director fro the bilayers\n"
509                  "\n"
510                  "   long:\n"
511                  "   -----\n"

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines