File ScfOptions.h

Copyright

This code is licensed under the 3-clause BSD license.

Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.

See LICENSE.txt for details.

namespace Scine

This header file contains functions that allow for common notation for common things that can be done at a different degree of derivatives.

This header contains alias definitions defining which classes to use for the different degrees of derivatives.

namespace Utils
struct ScfOptions
#include <ScfOptions.h>

SCF options for the UniversalSettings syntax.

Public Static Functions

static Scine::Utils::UniversalSettings::DescriptorCollection getSettingDescriptors()
static void applySettings(const Scine::Utils::UniversalSettings::ValueCollection &values, SCFMethod &method)
static Scine::Utils::UniversalSettings::ValueCollection getAppliedSettings(const SCFMethod &method)

Public Static Attributes

constexpr const char *name = "scf_options"
constexpr const char *description = "SCF settings"
constexpr const char *mixerName = "scf_mixer"
constexpr const char *mixerDescription = "SCF convergence accelerator"
constexpr const char *thresholdName = "scf_threshold"
constexpr const char *thresholdDescription = "SCF threshold (RMSD of density matrix)"
constexpr const char *maxIterationName = "scf_max_iterations"
constexpr const char *maxIterationDescription = "Maximal number of SCF iterations"
constexpr const char *noMixer = "none"
constexpr const char *diis = "DIIS"
constexpr const char *ediis = "EDIIS"
constexpr const char *ediisDiis = "EDIIS+DIIS"

Private Static Functions

static scf_mixer_t convertToMixer(const std::string &s)
static std::string convertToString(scf_mixer_t m)