Loading...
Searching...
No Matches
DimerRotationDispatch.h File Reference
#include "BaseStructures.h"
#include "Davidson.h"
#include "EonLogger.h"
#include "LORRotation.h"
#include "Lanczos.h"
#include "Matter.h"
#include "Parameters.h"
#include <memory>
#include <optional>
#include <string_view>
#include <type_traits>

Go to the source code of this file.

Classes

struct  eonc::DimerRotationResult
 Result of a non-classical dimer rotation backend (mode estimate only). More...

Namespaces

namespace  eonc
 RAII resource manager for the ARTn C library with global synchronization.
namespace  eonc::detail

Functions

constexpr bool eonc::usesAlternativeRotation (DimerRotationBackend backend) noexcept
template<typename Solver>
DimerRotationResult eonc::detail::runRotationSolver (const std::shared_ptr< Matter > &matter, const Parameters &params, const std::shared_ptr< Potential > &pot, const AtomMatrix &initialDirection)
std::optional< DimerRotationResulteonc::runAlternativeRotation (DimerRotationBackend backend, const std::shared_ptr< Matter > &matter, const Parameters &params, const std::shared_ptr< Potential > &pot, const AtomMatrix &initialDirection, quill::Logger *log=nullptr)
 Run Lanczos, Davidson, or LOR.