/* * ForceAnnealingAction.def * * Created on: Aug 02, 2014 * Author: heber */ // all includes and forward declarations necessary for non-integral types below #include #include "Parameters/Validators/DummyValidator.hpp" #include "Parameters/Validators/GenericValidators.hpp" #include "Parameters/Validators/Ops_Validator.hpp" // i.e. there is an integer with variable name Z that can be found in // ValueStorage by the token "Z" -> first column: int, Z, "Z" // "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value #define paramtypes (boost::filesystem::path)(double)(unsigned int)(bool) #define paramtokens ("forces-file")("deltat")("steps")("output-every-step") #define paramdescriptions ("file containing")("time step width")("fixed number of optimization steps to be performed")("whether WorldTime should be increased and output written after every step, useful if optimization might hang") #define paramdefaults (PARAM_DEFAULT(""))(PARAM_DEFAULT(0.1))(NOPARAM_DEFAULT)(PARAM_DEFAULT("0")) #define paramreferences (forcesfile)(Deltat)(steps)(DoOutput) #define paramvalids \ (DummyValidator< boost::filesystem::path >()) \ (PositiveValidator< double >()) \ (NotZeroValidator< unsigned int >()) \ (DummyValidator()) #define statetypes (std::vector)(std::vector) #define statereferences (UndoInfo)(RedoInfo) // some defines for all the names, you may use ACTION, STATE and PARAMS #define CATEGORY Molecule #define MENUNAME "molecule" #define MENUPOSITION 12 #define ACTIONNAME ForceAnnealing #define TOKEN "force-annealing" // finally the information stored in the ActionTrait specialization #define DESCRIPTION "perform a single step optimizing the current forces acting on the atoms" #undef SHORTFORM