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

Comparing trunk/src/applications/dynamicProps/DynamicProps.cpp (file contents):
Revision 1782 by gezelter, Wed Aug 22 02:28:28 2012 UTC vs.
Revision 1937 by gezelter, Tue Oct 29 16:02:58 2013 UTC

# Line 35 | Line 35
35   *                                                                      
36   * [1]  Meineke, et al., J. Comp. Chem. 26, 252-271 (2005).            
37   * [2]  Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006).          
38 < * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008).          
38 > * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008).          
39   * [4]  Kuang & Gezelter,  J. Chem. Phys. 133, 164101 (2010).
40   * [5]  Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011).
41   */
# Line 50 | Line 50
50   #include "utils/simError.h"
51  
52   #include "applications/dynamicProps/DynamicPropsCmd.h"
53 + #include "applications/dynamicProps/SelectionCorrFunc.hpp"
54   #include "applications/dynamicProps/DipoleCorrFunc.hpp"
55   #include "applications/dynamicProps/RCorrFunc.hpp"
56   #include "applications/dynamicProps/VCorrFunc.hpp"
57   #include "applications/dynamicProps/LegendreCorrFunc.hpp"
58 + #include "applications/dynamicProps/LegendreCorrFuncZ.hpp"
59   #include "applications/dynamicProps/RadialRCorrFunc.hpp"
60   #include "applications/dynamicProps/ThetaCorrFunc.hpp"
61   #include "applications/dynamicProps/DirectionalRCorrFunc.hpp"
# Line 61 | Line 63
63   #include "applications/dynamicProps/StressCorrFunc.hpp"
64   #include "applications/dynamicProps/SystemDipoleCorrFunc.hpp"
65   #include "applications/dynamicProps/MomentumCorrFunc.hpp"
66 + #include "applications/dynamicProps/cOHz.hpp"
67  
65
66
68   using namespace OpenMD;
69  
70   int main(int argc, char* argv[]){
# Line 75 | Line 76 | int main(int argc, char* argv[]){
76      exit(1) ;
77    }
78  
78
79    //get the dumpfile name and meta-data file name
80    std::string dumpFileName = args_info.input_arg;
81      
82    std::string sele1;
83    std::string sele2;
84 <
84 >  
85 >  // check the first selection argument, or set it to the environment
86 >  // variable, or failing that, set it to "select all"
87 >  
88    if (args_info.sele1_given) {
89      sele1 = args_info.sele1_arg;
90 <  }else {
90 >  } else {
91      char*  sele1Env= getenv("SELECTION1");
92      if (sele1Env) {
93        sele1 = sele1Env;
94 <    }else {
95 <      sprintf( painCave.errMsg,
93 <               "neither --sele1 option nor $SELECTION1 is set");
94 <      painCave.severity = OPENMD_ERROR;
95 <      painCave.isFatal = 1;
96 <      simError();
94 >    } else {
95 >      sele1 = "select all";
96      }
97    }
98 <    
98 >  
99 >  // check the second selection argument, or set it to the environment
100 >  // variable, or failing that, set it to the first selection
101 >  
102    if (args_info.sele2_given) {
103      sele2 = args_info.sele2_arg;
104 <  }else {
104 >  } else {
105      char* sele2Env = getenv("SELECTION2");
106      if (sele2Env) {
107        sele2 = sele2Env;            
108 <    } else {
108 >    } else {
109 >      //If sele2 is not specified, then the default behavior
110 >      //should be what is already intended for sele1
111        sele2 = sele1;
112      }
113    }
# Line 121 | Line 125 | int main(int argc, char* argv[]){
125    SimCreator creator;
126    SimInfo* info = creator.createSim(dumpFileName, false);
127  
124
128    TimeCorrFunc* corrFunc;
129    if(args_info.sdcorr_given){
130      corrFunc = new SystemDipoleCorrFunc(info, dumpFileName, sele1, sele2, memSize);
131 +  } else if (args_info.selecorr_given){
132 +    corrFunc = new SelectionCorrFunc(info, dumpFileName, sele1, sele2, memSize);
133    } else if (args_info.dcorr_given){
134      corrFunc = new DipoleCorrFunc(info, dumpFileName, sele1, sele2, memSize);
135    } else if (args_info.rcorr_given) {
# Line 149 | Line 154 | int main(int argc, char* argv[]){
154          order = args_info.order_arg;
155      else {
156        sprintf( painCave.errMsg,
157 <               "--order must be set if --lcoor is set\n");
157 >               "--order must be set if --lcorr is set\n");
158        painCave.severity = OPENMD_ERROR;
159        painCave.isFatal = 1;
160        simError();
161      }
162          
163      corrFunc = new LegendreCorrFunc(info, dumpFileName, sele1, sele2, order, memSize);
164 +  } else if (args_info.lcorrZ_given) {
165 +    int order;
166 +    if (args_info.order_given)
167 +        order = args_info.order_arg;
168 +    else {
169 +      sprintf( painCave.errMsg,
170 +               "--order must be set if --lcorrZ is set\n");
171 +      painCave.severity = OPENMD_ERROR;
172 +      painCave.isFatal = 1;
173 +      simError();
174 +    }
175 +        
176 +    corrFunc = new LegendreCorrFuncZ(info, dumpFileName, sele1, sele2, order, args_info.nzbins_arg, memSize);
177 +
178 +  } else if (args_info.cohZ_given) {
179 +    int order;
180 +    if (args_info.order_given)
181 +        order = args_info.order_arg;
182 +    else {
183 +      sprintf( painCave.errMsg,
184 +               "--order must be set if --cohZ is set\n");
185 +      painCave.severity = OPENMD_ERROR;
186 +      painCave.isFatal = 1;
187 +      simError();
188 +    }
189 +        
190 +    corrFunc = new COHZ(info, dumpFileName, sele1, sele2, order, args_info.nzbins_arg, memSize);
191 +
192    }
193  
194 +
195    if (args_info.output_given) {
196      corrFunc->setOutputName(args_info.output_arg);
197    }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines