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

Comparing trunk/src/applications/staticProps/StaticProps.cpp (file contents):
Revision 1041 by gezelter, Wed Sep 20 20:13:40 2006 UTC vs.
Revision 1213 by xsun, Wed Jan 23 21:21:50 2008 UTC

# Line 52 | Line 52
52   #include "applications/staticProps/StaticPropsCmd.h"
53   #include "applications/staticProps/StaticAnalyser.hpp"
54   #include "applications/staticProps/GofR.hpp"
55 + #include "applications/staticProps/GofZ.hpp"
56   #include "applications/staticProps/GofRAngle.hpp"
57   #include "applications/staticProps/GofAngle2.hpp"
58   #include "applications/staticProps/GofXyz.hpp"
59   #include "applications/staticProps/P2OrderParameter.hpp"
60   #include "applications/staticProps/BondOrderParameter.hpp"
61 + #include "applications/staticProps/BOPofR.hpp"
62   #include "applications/staticProps/RippleOP.hpp"
63   #include "applications/staticProps/SCDOrderParameter.hpp"
64   #include "applications/staticProps/DensityPlot.hpp"
65   #include "applications/staticProps/RhoZ.hpp"
66 + #include "applications/staticProps/BondAngleDistribution.hpp"
67 + #include "applications/staticProps/NanoVolume.hpp"
68   #if defined(HAVE_FFTW_H) || defined(HAVE_DFFTW_H) || defined(HAVE_FFTW3_H)
69   #include "applications/staticProps/Hxy.hpp"
70   #endif
71 + #include "applications/staticProps/RhoR.hpp"
72  
73   using namespace oopse;
74  
# Line 163 | Line 168 | int main(int argc, char* argv[]){
168  
169    //parse md file and set up the system
170    SimCreator creator;
171 +  std::cout << "dumpFile = " << dumpFileName << "\n";
172    SimInfo* info = creator.createSim(dumpFileName);
173  
174    RealType maxLen;
# Line 177 | Line 183 | int main(int argc, char* argv[]){
183    if (args_info.gofr_given){
184      analyser= new GofR(info, dumpFileName, sele1, sele2, maxLen,
185                         args_info.nbins_arg);        
186 +  } else if (args_info.gofz_given) {
187 +    analyser= new GofZ(info, dumpFileName, sele1, sele2, maxLen,
188 +                       args_info.nbins_arg);        
189    } else if (args_info.r_theta_given) {
190      analyser  = new GofRTheta(info, dumpFileName, sele1, sele2, maxLen,
191                                args_info.nbins_arg, args_info.nanglebins_arg);
# Line 202 | Line 211 | int main(int argc, char* argv[]){
211    } else if (args_info.rp2_given){
212      analyser = new RippleOP(info, dumpFileName, sele1, sele2);
213    } else if (args_info.bo_given){
214 <    if (args_info.rcut_given && args_info.LegendreL_given) {
214 >    if (args_info.rcut_given) {
215        analyser = new BondOrderParameter(info, dumpFileName, sele1,
216                                          args_info.rcut_arg,
208                                        args_info.LegendreL_arg,
217                                          args_info.nbins_arg);
218      } else {
219        sprintf( painCave.errMsg,
220 <               "Both the cutoff radius (rcut) and LegendreL must be specified when calculating Bond Order Parameters");
220 >               "A cutoff radius (rcut) must be specified when calculating Bond Order Parameters");
221 >      painCave.severity = OOPSE_ERROR;
222 >      painCave.isFatal = 1;
223 >      simError();
224 >    }
225 >  } else if (args_info.bor_given){
226 >    if (args_info.rcut_given) {
227 >      analyser = new BOPofR(info, dumpFileName, sele1, args_info.rcut_arg,
228 >                            args_info.nbins_arg, maxLen);
229 >    } else {
230 >      sprintf( painCave.errMsg,
231 >               "A cutoff radius (rcut) must be specified when calculating Bond Order Parameters");
232        painCave.severity = OOPSE_ERROR;
233        painCave.isFatal = 1;
234        simError();
235      }
236 +  } else if (args_info.bad_given){
237 +    if (args_info.rcut_given) {
238 +      analyser = new BondAngleDistribution(info, dumpFileName, sele1, args_info.rcut_arg,
239 +                            args_info.nbins_arg);
240 +    } else {
241 +      sprintf( painCave.errMsg,
242 +               "A cutoff radius (rcut) must be specified when calculating Bond Angle Distributions");
243 +      painCave.severity = OOPSE_ERROR;
244 +      painCave.isFatal = 1;
245 +      simError();
246 +    }
247    } else if (args_info.scd_given) {
248      if (batchMode) {
249        analyser  = new SCDOrderParameter(info, dumpFileName, args_info.molname_arg,
# Line 233 | Line 263 | int main(int argc, char* argv[]){
263      analyser = new Hxy(info, dumpFileName, sele1, args_info.nbins_x_arg,
264                         args_info.nbins_y_arg, args_info.nbins_arg);
265   #endif
266 +  }else if (args_info.rho_r_given) {
267 +    if (args_info.radius_given){
268 +      analyser = new RhoR(info, dumpFileName, sele1, maxLen,args_info.nbins_arg,args_info.radius_arg);
269 +    }else{
270 +      sprintf( painCave.errMsg,
271 +               "A particle radius (radius) must be specified when calculating Rho(r)");
272 +      painCave.severity = OOPSE_ERROR;
273 +      painCave.isFatal = 1;
274 +      simError();
275 +    }
276 +        }else if (args_info.hullvol_given) {
277 +    analyser = new NanoVolume(info, dumpFileName, sele1);
278    }
279    
280    if (args_info.output_given) {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines