File RandomOrbitalMixer.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
-
namespace
MultipleScfSolutions
¶ -
class
RandomOrbitalMixer
- #include <RandomOrbitalMixer.h>
Class to randomly mix randomly chosen molecular orbitals. In the restricted case, the alphaHomo_ and betaHomo_ are both holding the value for restrictedHomo_.
Public Functions
-
RandomOrbitalMixer
(MolecularOrbitals &orbitals, int nRestrictedElectrons) Constructor for the restricted case.
-
RandomOrbitalMixer
(MolecularOrbitals &orbitals, int nAlphaElectrons, int nBetaElectrons) Constructor for the unrestricted case.
-
void
mix
()¶
-
void
setNumberMixes
(int numberMixes)¶
-
void
setMaximalMixAngle
(double maxAngle)¶
-
void
setMinimalMixAngle
(double minAngle)¶
-
void
considerOnlyOrbitalsCloseToFrontierOrbitals
(int numberToConsider) - numberToConsider Will be the same both for occupied and virtual orbitals.
-
void
considerAllOrbitals
()¶
Public Static Functions
-
static std::mt19937 &
getRandomNumberGenerator
()¶
Private Functions
-
void
checkValidNumberOfMixes
()¶
-
std::vector<LcaoUtil::MolecularOrbitalsManipulation::Mix>
calculateMixes
(int homoIndex) const¶
-
std::vector<int>
getRandomOccupiedOrbitals
(int homoIndex) const¶
-
std::vector<int>
getRandomVirtualOrbitals
(int homoIndex) const¶
-
std::vector<int>
selectUniqueRandomNumbers
(int min, int max) const¶
-
std::vector<LcaoUtil::MolecularOrbitalsManipulation::Mix>
createMixes
(const std::vector<int> &occ, const std::vector<int> &virt) const¶
-
int
calculateMaximalVirtualIndex
(int homoIndex) const¶
-
int
calculateMinimalOccupiedIndex
(int homoIndex) const¶
-
bool
invalidMolecularOrbitals
(const MolecularOrbitals &mo) const¶
-
-
class
-
namespace
-
namespace