Scine::Sparrow  5.0.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
AM1Settings.h
Go to the documentation of this file.
1 
8 #ifndef SPARROW_AM1SETTINGS_H
9 #define SPARROW_AM1SETTINGS_H
10 
11 #include <Utils/Settings.h>
13 #include <utility>
14 namespace Scine {
15 namespace Sparrow {
16 
25  public:
27  AM1TypeSettings(std::string settingsDescription) : Settings(std::move(settingsDescription)) {
31  Utils::UniversalSettings::BoolDescriptor useNDDODipoleApprox("Sets use of NDDO dipole approximation.");
32  useNDDODipoleApprox.setDefaultValue(true);
33  _fields.push_back(Utils::SettingsNames::NDDODipoleApproximation, std::move(useNDDODipoleApprox));
34 
35  resetToDefaults();
36  }
37 };
38 
39 class AM1Settings : public AM1TypeSettings {
40  public:
41  static constexpr const char* settingsDescription = "AM1Settings";
42  AM1Settings() : AM1TypeSettings(settingsDescription) {
43  // Method
44  Utils::UniversalSettings::StringDescriptor method("The method to be used.");
45  method.setDefaultValue("am1");
46  _fields.push_back(Utils::SettingsNames::method, method);
47 
48  resetToDefaults();
49  }
50 };
51 
52 class RM1Settings : public AM1TypeSettings {
53  public:
54  static constexpr const char* settingsDescription = "RM1Settings";
55  RM1Settings() : AM1TypeSettings(settingsDescription) {
56  // Method
57  Utils::UniversalSettings::StringDescriptor method("The method to be used.");
58  method.setDefaultValue("rm1");
59  _fields.push_back(Utils::SettingsNames::method, method);
60 
61  resetToDefaults();
62  }
63 };
64 
65 class PM3Settings : public AM1TypeSettings {
66  public:
67  static constexpr const char* settingsDescription = "PM3Settings";
68  PM3Settings() : AM1TypeSettings(settingsDescription) {
69  // Method
70  Utils::UniversalSettings::StringDescriptor method("The method to be used.");
71  method.setDefaultValue("pm3");
72  _fields.push_back(Utils::SettingsNames::method, method);
73 
74  resetToDefaults();
75  }
76 };
77 
78 } // namespace Sparrow
79 } // namespace Scine
80 
81 #endif // SPARROW_AM1SETTINGS_H
AM1TypeSettings(std::string settingsDescription)
Take the names from the derived class and use them.
Definition: AM1Settings.h:27
Definition: AM1Settings.h:65
static void populateLcaoSettings(SettingsCollection &settings)
static void populateSemiEmpiricalSettings(SettingsCollection &settings, std::string defaultParameterFile="parameter.json")
Definition: AM1Settings.h:52
The Settings specific to all the AM1-type methods, i.e. AM1, RM1, PM3. This class uses the curiously ...
Definition: AM1Settings.h:24
Definition: AM1Settings.h:39
static void populateScfSettings(SettingsCollection &settings)