source: src/Actions/GlobalListOfActions.hpp@ 9a4772

Action_Thermostats Add_SelectAtomByNameAction Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_StructOpt_integration_tests AutomationFragmentation_failures Candidate_v1.6.1 ChemicalSpaceEvaluator EmpiricalPotential_contain_HomologyGraph_documentation Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph Fix_Verbose_Codepatterns ForceAnnealing_oldresults ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion Gui_displays_atomic_force_velocity IndependentFragmentGrids_IntegrationTest JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool PythonUI_with_named_parameters Recreated_GuiChecks StoppableMakroAction TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps
Last change on this file since 9a4772 was 310445, checked in by Frederik Heber <frederik.heber@…>, 8 years ago

Added RandomPerturbationAction.

  • this should be when doing structural optimization for getting given configurations out of ambivalent states, e.g. a water molecule whose three atoms define a straight line.
  • note that we need to use a sensible random number distribution, the default is not doing what's expected. Added to docu.
  • TESTS: Added regression test with undo/redo.
  • DOCU: Added documentation to userguide.
  • Property mode set to 100644
File size: 5.6 KB
Line 
1/*
2 * GlobalListOfActions.hpp
3 *
4 * Created on: Sep 21, 2011
5 * Author: heber
6 */
7
8#ifndef GLOBALLISTOFACTIONS_HPP_
9#define GLOBALLISTOFACTIONS_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16#include <boost/preprocessor/seq/push_back.hpp>
17#include <boost/preprocessor/seq/remove.hpp>
18
19// this is global list of actions valid for all cases
20// PLEASE adhere to the alphabetical ordering of the list of Actions
21// NOTE that Redo must remain at the front due to technical reasons
22#define GLOBALLISTOFACTIONS_initial \
23 (Redo) \
24 (AnalysisAverageMoleculeForce) \
25 (AnalysisDipoleAngularCorrelation) \
26 (AnalysisDipoleCorrelation) \
27 (AnalysisMolecularVolume) \
28 (AnalysisPairCorrelation) \
29 (AnalysisPointCorrelation) \
30 (AnalysisPrincipalAxisSystem) \
31 (AnalysisSurfaceCorrelation) \
32 (AtomAdd) \
33 (AtomChangeElement) \
34 (AtomMirror) \
35 (AtomRandomPerturbation) \
36 (AtomRemove) \
37 (AtomRotateAroundOriginByAngle) \
38 (AtomSaturate) \
39 (AtomSaveSelectedAtoms) \
40 (AtomTranslate) \
41 (AtomTranslateToOrigin) \
42 (BondAdd) \
43 (BondRemove) \
44 (BondSetDegree) \
45 (CommandDryRun) \
46 (CommandElementDb) \
47 (CommandBondLengthTable) \
48 (CommandFastParsing) \
49 (CommandHelp) \
50 (CommandHelpRedistribute) \
51 (CommandNoDryRun) \
52 (CommandSetRandomNumbersEngine) \
53 (CommandSetRandomNumbersDistribution) \
54 (CommandStoreSession) \
55 (CommandVerbose) \
56 (CommandVersion) \
57 (CommandWarranty) \
58 (FillRegularGrid) \
59 (FillSurface) \
60 (FillSuspendInMolecule) \
61 (FillVolume) \
62 (FragmentationAnalyseFragmentationResults) \
63 (FragmentationClearFragmentationResults) \
64 (FragmentationFragmentation) \
65 (FragmentationFragmentationAutomation) \
66 (FragmentationMolecularDynamics) \
67 (FragmentationParseFragmentJobs) \
68 (FragmentationParseFragmentResults) \
69 (FragmentationSaveFragmentResults) \
70 (FragmentationStoreSaturatedFragment) \
71 (FragmentationStructuralOptimization) \
72 (GeometryDistanceToVector) \
73 (GeometryInputToVector) \
74 (GeometryPlaneToVector) \
75 (GeometryPositionToVector) \
76 (GeometryRemove) \
77 (GraphUpdateMolecules) \
78 (GraphCorrectBondDegree) \
79 (GraphCreateAdjacency) \
80 (GraphDepthFirstSearch) \
81 (GraphDestroyAdjacency) \
82 (GraphSubgraphDissection) \
83 (MoleculeBondFile) \
84 (MoleculeChangeName) \
85 (MoleculeChangeBondAngle) \
86 (MoleculeCopy) \
87 (MoleculeForceAnnealing) \
88 (MoleculeLinearInterpolationofTrajectories) \
89 (MoleculeLoad) \
90 (MoleculeRemove) \
91 (MoleculeRotateAroundBond) \
92 (MoleculeRotateAroundSelfByAngle) \
93 (MoleculeRotateToPrincipalAxisSystem) \
94 (MoleculeSaveAdjacency) \
95 (MoleculeSaveBonds) \
96 (MoleculeSaveSelectedMolecules) \
97 (MoleculeSaveTemperature) \
98 (MoleculeStretchBond) \
99 (MoleculeTranslate) \
100 (MoleculeVerletIntegration) \
101 (PotentialFitPartialCharges) \
102 (PotentialParseAtomFragments) \
103 (PotentialParseHomologies) \
104 (PotentialParseParticleParameters) \
105 (PotentialParsePotentials) \
106 (PotentialSaveAtomFragments) \
107 (PotentialSaveHomologies) \
108 (PotentialSaveParticleParameters) \
109 (PotentialSavePotentials) \
110 (ParserSaveSelectedAtomsAsExtTypes) \
111 (ParserSetParserParameters) \
112 (ParserSetOutputFormats) \
113 (ParserSetTremoloAtomdata) \
114 (Undo) \
115 (SelectionAllAtoms) \
116 (SelectionAllAtomsInsideVolume) \
117 (SelectionAllAtomsOfMolecule) \
118 (SelectionAllMolecules) \
119 (SelectionAllShapes) \
120 (SelectionAtomByElement) \
121 (SelectionAtomById) \
122 (SelectionAtomByOrder) \
123 (SelectionClearAllAtoms) \
124 (SelectionClearAllMolecules) \
125 (SelectionInvertAtoms) \
126 (SelectionInvertMolecules) \
127 (SelectionMoleculeOfAtom) \
128 (SelectionMoleculeByFormula) \
129 (SelectionMoleculeById) \
130 (SelectionMoleculeByName) \
131 (SelectionMoleculeByOrder) \
132 (SelectionNotAllAtoms) \
133 (SelectionNotAllAtomsInsideVolume) \
134 (SelectionNotAllAtomsOfMolecule) \
135 (SelectionNotAllMolecules) \
136 (SelectionNotAllShapes) \
137 (SelectionNotAtomById) \
138 (SelectionNotAtomByElement) \
139 (SelectionNotAtomByOrder) \
140 (SelectionNotMoleculeOfAtom) \
141 (SelectionNotMoleculeByFormula) \
142 (SelectionNotMoleculeById) \
143 (SelectionNotMoleculeByName) \
144 (SelectionNotMoleculeByOrder) \
145 (SelectionNotShapeByName) \
146 (SelectionPopAtoms) \
147 (SelectionPushAtoms) \
148 (SelectionPopMolecules) \
149 (SelectionPushMolecules) \
150 (SelectionShapeByName) \
151 (ShapeCombineShapes) \
152 (ShapeCreateShape) \
153 (ShapeRemoveShape) \
154 (ShapeRotateShape) \
155 (ShapeStretchShape) \
156 (ShapeTranslateShape) \
157 (TesselationConvexEnvelope) \
158 (TesselationNonConvexEnvelope) \
159 (WorldAddEmptyBoundary) \
160 (WorldBoundInBox) \
161 (WorldCenterInBox) \
162 (WorldCenterOnEdge) \
163 (WorldChangeBox) \
164 (WorldInput) \
165 (WorldOutput) \
166 (WorldOutputAs) \
167 (WorldRepeatBox) \
168 (WorldScaleBox) \
169 (WorldSetBoundaryConditions) \
170 (WorldSetDefaultName) \
171 (WorldSetWorldTime) \
172 (WorldStepWorldTime)
173
174// extend list of actions in case levmar is available
175#ifdef HAVE_LEVMAR
176#define GLOBALLISTOFACTIONS_LEVMAR \
177 BOOST_PP_SEQ_PUSH_BACK( \
178 BOOST_PP_SEQ_PUSH_BACK( \
179 GLOBALLISTOFACTIONS_initial, \
180 PotentialFitPotential \
181 ), \
182 PotentialFitCompoundPotential \
183 )
184#else
185#define GLOBALLISTOFACTIONS_LEVMAR \
186 GLOBALLISTOFACTIONS_initial
187#endif /* HAVE_LEVMAR */
188
189// define final list
190#ifdef HAVE_PYTHON
191#define GLOBALLISTOFACTIONS_PYTHON \
192 BOOST_PP_SEQ_PUSH_BACK( \
193 GLOBALLISTOFACTIONS_LEVMAR, \
194 CommandLoadSession \
195 )
196#else
197#define GLOBALLISTOFACTIONS_PYTHON \
198 GLOBALLISTOFACTIONS_LEVMAR
199#endif
200
201#define GLOBALLISTOFACTIONS GLOBALLISTOFACTIONS_PYTHON
202
203// define python list
204// skips CommandLoadSession as this causes dangerous infinite loops
205#define GLOBALLISTOFPYTHONACTIONS \
206 GLOBALLISTOFACTIONS_LEVMAR
207
208#endif /* GLOBALLISTOFACTIONS_HPP_ */
209
Note: See TracBrowser for help on using the repository browser.