| 77 |
|
#include "applications/staticProps/AngleR.hpp" |
| 78 |
|
#include "applications/staticProps/TetrahedralityParam.hpp" |
| 79 |
|
#include "applications/staticProps/TetrahedralityParamZ.hpp" |
| 80 |
+ |
#include "applications/staticProps/TetrahedralityParamXYZ.hpp" |
| 81 |
|
#include "applications/staticProps/RNEMDStats.hpp" |
| 82 |
+ |
#include "applications/staticProps/NitrileFrequencyMap.hpp" |
| 83 |
+ |
#include "applications/staticProps/MultipoleSum.hpp" |
| 84 |
|
|
| 85 |
|
using namespace OpenMD; |
| 86 |
|
|
| 245 |
|
painCave.isFatal = 1; |
| 246 |
|
simError(); |
| 247 |
|
} |
| 248 |
< |
|
| 248 |
> |
} else if (args_info.multipole_given){ |
| 249 |
> |
analyser = new MultipoleSum(info, dumpFileName, sele1, |
| 250 |
> |
maxLen, args_info.nbins_arg); |
| 251 |
|
} else if (args_info.tet_param_given) { |
| 252 |
|
if (args_info.rcut_given) { |
| 253 |
|
analyser = new TetrahedralityParam(info, dumpFileName, sele1, |
| 272 |
|
painCave.isFatal = 1; |
| 273 |
|
simError(); |
| 274 |
|
} |
| 275 |
< |
} else if (args_info.bor_given){ |
| 275 |
> |
} else if (args_info.tet_param_xyz_given) { |
| 276 |
> |
if (!args_info.rcut_given) { |
| 277 |
> |
sprintf( painCave.errMsg, |
| 278 |
> |
"A cutoff radius (rcut) must be specified when calculating" |
| 279 |
> |
" Tetrahedrality Parameters"); |
| 280 |
> |
painCave.severity = OPENMD_ERROR; |
| 281 |
> |
painCave.isFatal = 1; |
| 282 |
> |
simError(); |
| 283 |
> |
} |
| 284 |
> |
if (!args_info.voxelSize_given) { |
| 285 |
> |
sprintf( painCave.errMsg, |
| 286 |
> |
"A voxel size must be specified when calculating" |
| 287 |
> |
" volume-resolved Tetrahedrality Parameters"); |
| 288 |
> |
painCave.severity = OPENMD_ERROR; |
| 289 |
> |
painCave.isFatal = 1; |
| 290 |
> |
simError(); |
| 291 |
> |
} |
| 292 |
> |
if (!args_info.gaussWidth_given) { |
| 293 |
> |
sprintf( painCave.errMsg, |
| 294 |
> |
"A gaussian width must be specified when calculating" |
| 295 |
> |
" volume-resolved Tetrahedrality Parameters"); |
| 296 |
> |
painCave.severity = OPENMD_ERROR; |
| 297 |
> |
painCave.isFatal = 1; |
| 298 |
> |
simError(); |
| 299 |
> |
} |
| 300 |
> |
analyser = new TetrahedralityParamXYZ(info, dumpFileName, sele1, sele2, |
| 301 |
> |
args_info.rcut_arg, |
| 302 |
> |
args_info.voxelSize_arg, |
| 303 |
> |
args_info.gaussWidth_arg); |
| 304 |
> |
} else if (args_info.ior_given){ |
| 305 |
|
if (args_info.rcut_given) { |
| 306 |
< |
analyser = new BOPofR(info, dumpFileName, sele1, args_info.rcut_arg, |
| 306 |
> |
analyser = new IcosahedralOfR(info, dumpFileName, sele1, |
| 307 |
> |
args_info.rcut_arg, |
| 308 |
> |
args_info.nbins_arg, maxLen); |
| 309 |
> |
} else { |
| 310 |
> |
sprintf( painCave.errMsg, |
| 311 |
> |
"A cutoff radius (rcut) must be specified when calculating Bond Order Parameters"); |
| 312 |
> |
painCave.severity = OPENMD_ERROR; |
| 313 |
> |
painCave.isFatal = 1; |
| 314 |
> |
simError(); |
| 315 |
> |
} |
| 316 |
> |
} else if (args_info.for_given){ |
| 317 |
> |
if (args_info.rcut_given) { |
| 318 |
> |
analyser = new FCCOfR(info, dumpFileName, sele1, args_info.rcut_arg, |
| 319 |
|
args_info.nbins_arg, maxLen); |
| 320 |
|
} else { |
| 321 |
|
sprintf( painCave.errMsg, |
| 360 |
|
} else if (args_info.rnemdrt_given) { |
| 361 |
|
analyser = new RNEMDRTheta(info, dumpFileName, sele1, |
| 362 |
|
args_info.nbins_arg, args_info.nanglebins_arg); |
| 363 |
+ |
} else if (args_info.nitrile_given) { |
| 364 |
+ |
analyser = new NitrileFrequencyMap(info, dumpFileName, sele1, |
| 365 |
+ |
args_info.nbins_arg); |
| 366 |
|
} else if (args_info.p_angle_given) { |
| 367 |
< |
analyser = new pAngle(info, dumpFileName, sele1, args_info.nbins_arg); |
| 367 |
> |
if (args_info.sele1_given) { |
| 368 |
> |
if (args_info.sele2_given) |
| 369 |
> |
analyser = new pAngle(info, dumpFileName, sele1, sele2, |
| 370 |
> |
args_info.nbins_arg); |
| 371 |
> |
else |
| 372 |
> |
if (args_info.seleoffset_given) { |
| 373 |
> |
if (args_info.seleoffset2_given) { |
| 374 |
> |
analyser = new pAngle(info, dumpFileName, sele1, |
| 375 |
> |
args_info.seleoffset_arg, |
| 376 |
> |
args_info.seleoffset2_arg, |
| 377 |
> |
args_info.nbins_arg); |
| 378 |
> |
} else { |
| 379 |
> |
analyser = new pAngle(info, dumpFileName, sele1, |
| 380 |
> |
args_info.seleoffset_arg, |
| 381 |
> |
args_info.nbins_arg); |
| 382 |
> |
} |
| 383 |
> |
} else |
| 384 |
> |
analyser = new pAngle(info, dumpFileName, sele1, |
| 385 |
> |
args_info.nbins_arg); |
| 386 |
> |
} else { |
| 387 |
> |
sprintf( painCave.errMsg, |
| 388 |
> |
"At least one selection script (--sele1) must be specified when " |
| 389 |
> |
"calculating P(angle) distributions"); |
| 390 |
> |
painCave.severity = OPENMD_ERROR; |
| 391 |
> |
painCave.isFatal = 1; |
| 392 |
> |
simError(); |
| 393 |
> |
} |
| 394 |
|
#if defined(HAVE_FFTW_H) || defined(HAVE_DFFTW_H) || defined(HAVE_FFTW3_H) |
| 395 |
|
}else if (args_info.hxy_given) { |
| 396 |
|
analyser = new Hxy(info, dumpFileName, sele1, args_info.nbins_x_arg, |