--- trunk/src/applications/staticProps/StaticProps.cpp 2006/11/10 18:45:29 1091 +++ trunk/src/applications/staticProps/StaticProps.cpp 2008/06/30 17:53:42 1267 @@ -52,15 +52,19 @@ #include "applications/staticProps/StaticPropsCmd.h" #include "applications/staticProps/StaticAnalyser.hpp" #include "applications/staticProps/GofR.hpp" +#include "applications/staticProps/GofZ.hpp" #include "applications/staticProps/GofRAngle.hpp" #include "applications/staticProps/GofAngle2.hpp" #include "applications/staticProps/GofXyz.hpp" #include "applications/staticProps/P2OrderParameter.hpp" #include "applications/staticProps/BondOrderParameter.hpp" +#include "applications/staticProps/BOPofR.hpp" #include "applications/staticProps/RippleOP.hpp" #include "applications/staticProps/SCDOrderParameter.hpp" #include "applications/staticProps/DensityPlot.hpp" #include "applications/staticProps/RhoZ.hpp" +#include "applications/staticProps/BondAngleDistribution.hpp" +#include "applications/staticProps/NanoVolume.hpp" #if defined(HAVE_FFTW_H) || defined(HAVE_DFFTW_H) || defined(HAVE_FFTW3_H) #include "applications/staticProps/Hxy.hpp" #endif @@ -179,6 +183,9 @@ int main(int argc, char* argv[]){ if (args_info.gofr_given){ analyser= new GofR(info, dumpFileName, sele1, sele2, maxLen, args_info.nbins_arg); + } else if (args_info.gofz_given) { + analyser= new GofZ(info, dumpFileName, sele1, sele2, maxLen, + args_info.nbins_arg); } else if (args_info.r_theta_given) { analyser = new GofRTheta(info, dumpFileName, sele1, sele2, maxLen, args_info.nbins_arg, args_info.nanglebins_arg); @@ -208,6 +215,17 @@ int main(int argc, char* argv[]){ analyser = new BondOrderParameter(info, dumpFileName, sele1, args_info.rcut_arg, args_info.nbins_arg); + } else { + sprintf( painCave.errMsg, + "A cutoff radius (rcut) must be specified when calculating Bond Order Parameters"); + painCave.severity = OOPSE_ERROR; + painCave.isFatal = 1; + simError(); + } + } else if (args_info.bor_given){ + if (args_info.rcut_given) { + analyser = new BOPofR(info, dumpFileName, sele1, args_info.rcut_arg, + args_info.nbins_arg, maxLen); } else { sprintf( painCave.errMsg, "A cutoff radius (rcut) must be specified when calculating Bond Order Parameters"); @@ -215,6 +233,17 @@ int main(int argc, char* argv[]){ painCave.isFatal = 1; simError(); } + } else if (args_info.bad_given){ + if (args_info.rcut_given) { + analyser = new BondAngleDistribution(info, dumpFileName, sele1, args_info.rcut_arg, + args_info.nbins_arg); + } else { + sprintf( painCave.errMsg, + "A cutoff radius (rcut) must be specified when calculating Bond Angle Distributions"); + painCave.severity = OOPSE_ERROR; + painCave.isFatal = 1; + simError(); + } } else if (args_info.scd_given) { if (batchMode) { analyser = new SCDOrderParameter(info, dumpFileName, args_info.molname_arg, @@ -224,11 +253,10 @@ int main(int argc, char* argv[]){ analyser = new SCDOrderParameter(info, dumpFileName, sele1, sele2, sele3); } }else if (args_info.density_given) { - analyser= new DensityPlot(info, dumpFileName, sele1, sele2, maxLen, + analyser= new DensityPlot(info, dumpFileName, sele1, sele2, maxLen, args_info.nbins_arg); } else if (args_info.slab_density_given) { - Mat3x3d hmat = info->getSnapshotManager()->getCurrentSnapshot()->getHmat(); - analyser = new RhoZ(info, dumpFileName, sele1, hmat(2, 2), args_info.nbins_arg); + analyser = new RhoZ(info, dumpFileName, sele1, args_info.nbins_arg); #if defined(HAVE_FFTW_H) || defined(HAVE_DFFTW_H) || defined(HAVE_FFTW3_H) }else if (args_info.hxy_given) { analyser = new Hxy(info, dumpFileName, sele1, args_info.nbins_x_arg, @@ -244,6 +272,8 @@ int main(int argc, char* argv[]){ painCave.isFatal = 1; simError(); } + }else if (args_info.hullvol_given) { + analyser = new NanoVolume(info, dumpFileName, sele1); } if (args_info.output_given) {