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/Ops_Validator.hpp"
|
---|
15 | #include "Parameters/Validators/RangeValidator.hpp"
|
---|
16 | #include "Parameters/Validators/STLVectorValidator.hpp"
|
---|
17 | #include "Parameters/Validators/Specific/ElementValidator.hpp"
|
---|
18 | #include "Parameters/Validators/Specific/EmptyStringValidator.hpp"
|
---|
19 | #include "Parameters/Validators/Specific/FilePresentValidator.hpp"
|
---|
20 | #include "Parameters/Validators/Specific/PotentialTypeValidator.hpp"
|
---|
21 |
|
---|
22 | // i.e. there is an integer with variable name Z that can be found in
|
---|
23 | // ValueStorage by the token "Z" -> first column: int, Z, "Z"
|
---|
24 | // "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
|
---|
25 | #define paramtypes (boost::filesystem::path)(boost::filesystem::path)(std::string)(boost::filesystem::path)(std::vector<const element *>)(std::vector<const element *>)(unsigned int)
|
---|
26 | #define paramtokens ("homology-file")("training-file")("potential-type")("potential-file")("potential-charges")("fragment-charges")("take-best-of")
|
---|
27 | #define paramdescriptions ("homology file to parse")("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")
|
---|
28 | #define paramdefaults (NOPARAM_DEFAULT)(PARAM_DEFAULT(""))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(3))
|
---|
29 | #define paramreferences (homology_file)(training_file)(potentialtype)(potential_file)(charges)(fragment)(best_of_howmany)
|
---|
30 | #define paramvalids \
|
---|
31 | (FilePresentValidator()) \
|
---|
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 | (RangeValidator< unsigned int>(1,99))
|
---|
38 |
|
---|
39 | #undef statetypes
|
---|
40 | #undef statereferences
|
---|
41 |
|
---|
42 | // some defines for all the names, you may use ACTION, STATE and PARAMS
|
---|
43 | #define CATEGORY Fragmentation
|
---|
44 | #define MENUNAME "fragmentation"
|
---|
45 | #define MENUPOSITION 6
|
---|
46 | #define ACTIONNAME FitPotential
|
---|
47 | #define TOKEN "fit-potential"
|
---|
48 |
|
---|
49 |
|
---|
50 | // finally the information stored in the ActionTrait specialization
|
---|
51 | #define DESCRIPTION "fit an empirical potential to the given part of a specified fragment"
|
---|
52 | #undef SHORTFORM
|
---|