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 |
|
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) |
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, |
325 |
– |
args_info.seleoffset_arg, args_info.nbins_arg); |
326 |
– |
else |
327 |
– |
analyser = new pAngle(info, dumpFileName, sele1, |
385 |
|
args_info.nbins_arg); |
386 |
|
} else { |
387 |
|
sprintf( painCave.errMsg, |