source: src/Actions/FragmentationAction/FragmentationAutomationAction.def@ ac9dc8

Action_Thermostats Add_AtomRandomPerturbation Add_RotateAroundBondAction Add_SelectAtomByNameAction Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_StructOpt_integration_tests AutomationFragmentation_failures Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator Docu_Python_wait EmpiricalPotential_contain_HomologyGraph_documentation Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph Fix_ChronosMutex Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion GeometryObjects Gui_displays_atomic_force_velocity IndependentFragmentGrids_IntegrationTest JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks RotateToPrincipalAxisSystem_UndoRedo StoppableMakroAction TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps Ubuntu_1604_changes
Last change on this file since ac9dc8 was 703369, checked in by Frederik Heber <heber@…>, 8 years ago

FIX: FragmentationAutomation limited nfc to 20 and grid to 10 artifically.

  • now, these values only have to be positive. The user knows what he's doing.
  • Property mode set to 100644
File size: 3.2 KB
Line 
1/*
2 * FragmentationAutomationAction.def
3 *
4 * Created on: May 18, 2012
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 <limits>
11#include <string>
12#include <vector>
13
14#include "Parameters/Validators/DummyValidator.hpp"
15#include "Parameters/Validators/Ops_Validator.hpp"
16#include "Parameters/Validators/RangeValidator.hpp"
17#include "Parameters/Validators/Specific/BoxLengthValidator.hpp"
18
19// i.e. there is an integer with variable name Z that can be found in
20// ValueStorage by the token "Z" -> first column: int, Z, "Z"
21// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
22#define paramtypes (std::string)(std::string)(boost::filesystem::path)(double)(unsigned int)(unsigned int)(unsigned int)(bool)(bool)(bool)(bool)(bool)
23#define paramtokens ("server-address")("server-port")("fragment-executable")("max-meshwidth")("grid-level")("near-field-cells")("interpolation-degree")("DoLongrange")("DoValenceOnly")("DoPrintDebug")("DoSmearElectronicCharges")("UseImplicitCharges")
24#define paramdescriptions ("hostname of server")("controller port of server")("executable to launch on clients")("maximum allowed mesh width, i.e. discrete points may be at most that far apart on the fragment grids")("resolution of multigrid")("number of cells used in smearing out core charge")("interpolation degree for getting the nuclei potential from the grid")("whether to calculate long-range contributions")("whether the sampling uses only the valence electron and nuclei charge")("whether to print grids for debug visualization")("whether to smear out electronic charge distributions with bsplines or not")("whether to model any non-selected atoms by partial charges implicitly")
25#define paramdefaults (PARAM_DEFAULT("127.0.0.1"))(NOPARAM_DEFAULT)(PARAM_DEFAULT("mpqc"))(PARAM_DEFAULT(0.))(PARAM_DEFAULT(5))(PARAM_DEFAULT(3))(PARAM_DEFAULT(3))(PARAM_DEFAULT("0"))(PARAM_DEFAULT("0"))(PARAM_DEFAULT("0"))(PARAM_DEFAULT("0"))(PARAM_DEFAULT("0"))
26#define paramreferences (host)(port)(executable)(max_meshwidth)(level)(near_field_cells)(interpolation_degree)(DoLongrange)(DoValenceOnly)(DoPrintDebug)(DoSmearCharges)(UseImplicitCharges)
27#define paramvalids \
28(DummyValidator< std::string >()) \
29(DummyValidator< std::string >()) \
30(DummyValidator< boost::filesystem::path >()) \
31(BoxLengthValidator()) \
32(RangeValidator< unsigned int >(1, std::numeric_limits<unsigned int>::max())) \
33(RangeValidator< unsigned int >(1, std::numeric_limits<unsigned int>::max())) \
34(RangeValidator< unsigned int >(1, 10)) \
35(DummyValidator< bool >()) \
36(DummyValidator< bool >()) \
37(DummyValidator< bool >()) \
38(DummyValidator< bool >()) \
39(DummyValidator< bool >())
40
41#undef statetypes
42#undef statereferences
43
44// some defines for all the names, you may use ACTION, STATE and PARAMS
45#define CATEGORY Fragmentation
46#define MENUNAME "fragmentation"
47#define MENUPOSITION 3
48#define ACTIONNAME FragmentationAutomation
49#define TOKEN "fragment-automation"
50
51// if base class is undefined, it defaults to Action
52#define BASECLASS Process
53
54// finally the information stored in the ActionTrait specialization
55#define DESCRIPTION "calculates each fragment by using a server with a client pool"
56#undef SHORTFORM
Note: See TracBrowser for help on using the repository browser.