source: src/Actions/PotentialAction/FitPotentialAction.def@ 97dff0

Last change on this file since 97dff0 was 5eaa23, checked in by Frederik Heber <heber@…>, 11 years ago

Added sensible default values to MolecularDynamics sequence of Actions.

  • Property mode set to 100644
File size: 2.7 KB
Line 
1/*
2 * FitPotentialAction.def
3 *
4 * Created on: Apr 08, 2013
5 * Author: heber
6 */
7
8// all includes and forward declarations necessary for non-integral types below
9#include <boost/filesystem/path.hpp>
10#include <string>
11#include <vector>
12
13#include "Parameters/Validators/DummyValidator.hpp"
14#include "Parameters/Validators/GenericValidators.hpp"
15#include "Parameters/Validators/Ops_Validator.hpp"
16#include "Parameters/Validators/RangeValidator.hpp"
17#include "Parameters/Validators/STLVectorValidator.hpp"
18#include "Parameters/Validators/Specific/ElementValidator.hpp"
19#include "Parameters/Validators/Specific/EmptyStringValidator.hpp"
20#include "Parameters/Validators/Specific/FilePresentValidator.hpp"
21#include "Parameters/Validators/Specific/PotentialTypeValidator.hpp"
22
23// i.e. there is an integer with variable name Z that can be found in
24// ValueStorage by the token "Z" -> first column: int, Z, "Z"
25// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
26#define paramtypes (boost::filesystem::path)(std::string)(boost::filesystem::path)(std::vector<const element *>)(std::vector<const element *>)(unsigned int)(double)
27#define paramtokens ("training-file")("potential-type")("potential-file")("potential-charges")("fragment-charges")("take-best-of")("set-threshold")
28#define paramdescriptions ("optional file to write training data to")("potential type to fit")("potential file specifying multiple potentials to fit")("charges specifying the potential")("charges specifying the fragment")("take the best among this many approximations")("Require L2 error to be smaller than threshold, overrides number of attempts")
29#define paramdefaults (PARAM_DEFAULT(""))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(3))(PARAM_DEFAULT(1.))
30#define paramreferences (training_file)(potentialtype)(potential_file)(charges)(fragment)(best_of_howmany)(threshold)
31#define paramvalids \
32(DummyValidator<boost::filesystem::path>()) \
33(EmptyStringValidator() || PotentialTypeValidator()) \
34(DummyValidator<boost::filesystem::path>()) \
35(STLVectorValidator< std::vector<const element *> >(0,99, ElementValidator())) \
36(STLVectorValidator< std::vector<const element *> >(1,99, ElementValidator())) \
37(PositiveValidator<unsigned int>()) \
38(PositiveValidator<double>())
39
40#undef statetypes
41#undef statereferences
42
43// some defines for all the names, you may use ACTION, STATE and PARAMS
44#define CATEGORY Potential
45#define MENUNAME "potential"
46#define MENUPOSITION 3
47#define ACTIONNAME FitPotential
48#define TOKEN "fit-potential"
49
50
51// finally the information stored in the ActionTrait specialization
52#define DESCRIPTION "fit an empirical potential to the given part of a specified fragment"
53#undef SHORTFORM
Note: See TracBrowser for help on using the repository browser.