Scine::Sparrow
5.0.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
|
A MethodWrapper running Generic calculations. More...
#include <GenericMethodWrapper.h>
Public Member Functions | |
GenericMethodWrapper () | |
Default Constructor. | |
~GenericMethodWrapper () override | |
Default Destructor. | |
GenericMethodWrapper (const GenericMethodWrapper &rhs) | |
Copy Constructor. | |
void | setStructure (const Utils::AtomCollection &structure) final |
Sets new structure and initializes the underlying method with the parameter given in the settings. More... | |
std::unique_ptr < Utils::AtomCollection > | getStructure () const final |
Getter for the underlying element types and positions. | |
void | modifyPositions (Utils::PositionCollection newPositions) final |
Allows to modify the positions of the underlying Utils::AtomCollection. More... | |
const Utils::PositionCollection & | getPositions () const final |
Getter for the coordinates of the underlying Utils::AtomCollection. | |
void | setRequiredProperties (const Utils::PropertyList &requiredProperties) final |
Sets the properties to calculate. More... | |
Utils::PropertyList | getRequiredProperties () const final |
Gets the properties to calculate. More... | |
Utils::PropertyList | possibleProperties () const override |
const Utils::Results & | calculate (std::string description) final |
The main function running calculations (dummy). More... | |
virtual Utils::DensityMatrix | getDensityMatrixGuess () const =0 |
Getter for the initial density matrix guess. More... | |
Utils::Settings & | settings () final |
Accessor for the Settings used in this method wrapper. More... | |
const Utils::Settings & | settings () const final |
Const accessor for the Settings used in this method wrapper. More... | |
Utils::Results & | results () final |
Accessor for the Results stored in this method wrapper. More... | |
const Utils::Results & | results () const final |
Const accessor for the Results used in this method wrapper. More... | |
virtual void | addElectronicContribution (std::shared_ptr< Utils::AdditiveElectronicContribution > contribution)=0 |
Interface method to add an electronic contribution to the Hamiltonian. | |
bool | supportsMethodFamily (const std::string &methodFamily) const final |
Whether the calculator supports a method family In this library, every calculator supports just one "method family": itself. More... | |
virtual Utils::LcaoMethod & | getLcaoMethod ()=0 |
Get the underlying LcaoMethod. | |
virtual const Utils::LcaoMethod & | getLcaoMethod () const =0 |
std::string | getStoNGExpansionPath () const |
Returns a Sto-6G expansion. | |
std::unordered_map< int, Utils::AtomicGtos > | getAtomicGtosMap () const |
get map of GTOs of each element in the calculated structure with Z as key | |
void | generateWavefunctionInformation (const std::string &filename) final |
void | generateWavefunctionInformation (std::ostream &out) final |
void | loadState (std::shared_ptr< Core::State > state) override |
std::shared_ptr< Core::State > | getState () const final |
![]() | |
std::shared_ptr < Utils::Abstract < GenericMethodWrapper > > | clone () const |
![]() | |
virtual void | loadState (std::shared_ptr< State > state)=0 |
Protected Member Functions | |
virtual void | initialize ()=0 |
Initializes a method with the parameter file present in the settings. | |
Utils::Derivative | highestDerivativeRequired () const |
Determines the highest derivative type needed based on the property needed for calculation. | |
virtual void | assembleResults (const std::string &description) |
virtual bool | successfulCalculation () const =0 |
virtual bool | canCalculateAnalyticalHessian () const |
void | checkBasicSettings () |
virtual void | applySettings () |
Function to apply the settings to the actual calculation method. This method is needed in every calculator as the modification of the settings object does not cause a direct propagation to the underlying calculation method. It is not part of the public interface as an external user should not have to decide when/where to use this. In the implementation of a calculator care must be taken that at calculation time the settings have correctly been propagated to the underlying calculator method. | |
virtual bool | getZPVEInclusion () const =0 |
virtual void | calculateImpl (Utils::Derivative requiredDerivative)=0 |
Method-dependent implementation of the calculate member function. | |
Protected Attributes | |
std::unique_ptr< Utils::Settings > | settings_ |
Utils::Results | results_ |
std::unique_ptr < DipoleMomentCalculator > | dipoleCalculator_ |
std::unique_ptr < DipoleMatrixCalculator > | dipoleMatrixCalculator_ |
Utils::PropertyList | requiredProperties_ |
A MethodWrapper running Generic calculations.
|
final |
The main function running calculations (dummy).
dummy | A dummy parameter. |
|
pure virtual |
Getter for the initial density matrix guess.
|
final |
Gets the properties to calculate.
|
finalvirtual |
Allows to modify the positions of the underlying Utils::AtomCollection.
newPositions | the new positions to be assigned to the underlying Utils::AtomCollection |
Implements Scine::Core::ObjectWithStructure.
|
final |
Accessor for the Results stored in this method wrapper.
|
final |
Const accessor for the Results used in this method wrapper.
|
final |
Sets the properties to calculate.
requiredProperties | a Utils::PropertyList object, contains an enum class that work as a bitset, switching on and off the bits representing a property. |
|
finalvirtual |
Sets new structure and initializes the underlying method with the parameter given in the settings.
structure | The structure to be assigned. |
Implements Scine::Core::ObjectWithStructure.
|
finalvirtual |
Accessor for the Settings used in this method wrapper.
Implements Scine::Core::WavefunctionOutputGenerator.
|
finalvirtual |
Const accessor for the Settings used in this method wrapper.
Implements Scine::Core::WavefunctionOutputGenerator.
|
final |
Whether the calculator supports a method family In this library, every calculator supports just one "method family": itself.
methodFamily | identifier for the method family |