1#ifndef LINEARALGEBRA_SRC_MOLPRO_LINALG_ITSOLV_CASTOPTIONS_H
2#define LINEARALGEBRA_SRC_MOLPRO_LINALG_ITSOLV_CASTOPTIONS_H
3#include "LinearEigensystemRSPTOptions.h"
5#include <molpro/linalg/itsolv/IterativeSolver.h>
6#include <molpro/linalg/itsolv/LinearEigensystemDavidsonOptions.h>
7#include <molpro/linalg/itsolv/LinearEquationsDavidsonOptions.h>
8#include <molpro/linalg/itsolv/NonLinearEquationsDIISOptions.h>
9#include <molpro/linalg/itsolv/OptimizeBFGSOptions.h>
10#include <molpro/linalg/itsolv/OptimizeSDOptions.h>
17 template <
class OptionsType>
18 static std::shared_ptr<OptionsType> cast(
const std::shared_ptr<Options>&
options,
29 template <
class OptionsType>
33 }
catch (std::bad_cast&
err) {
66 static std::shared_ptr<NonLinearEquationsDIISOptions>
90 static std::shared_ptr<OptimizeSDOptions>
OptimizeSD(
const std::shared_ptr<Options>&
options) {
4-parameter interpolation of a 1-dimensional function given two points for which function values and ...
Definition helper.h:14
std::unique_ptr< LinearEigensystem< R, Q, P > > create_LinearEigensystem(const LinearEigensystemOptions &options, const std::shared_ptr< ArrayHandlers< R, Q, P > > &handlers=std::make_shared< molpro::linalg::itsolv::ArrayHandlers< R, Q, P > >())
Definition SolverFactory.h:111
const std::shared_ptr< const molpro::Options > options()
Get the Options object associated with iterative-solver.
Definition linalg_options.cpp:4
Safely down-cast Options to one of the implementations.
Definition CastOptions.h:15
static const OptimizeBFGSOptions & OptimizeBFGS(const Options &options)
Definition CastOptions.h:82
static const NonLinearEquationsDIISOptions & NonLinearEquationsDIIS(const Options &options)
Definition CastOptions.h:70
static OptimizeSDOptions & OptimizeSD(Options &options)
Definition CastOptions.h:96
static LinearEigensystemDavidsonOptions & LinearEigensystem(Options &options)
Definition CastOptions.h:48
static std::shared_ptr< LinearEigensystemDavidsonOptions > LinearEigensystem(const std::shared_ptr< Options > &options)
Definition CastOptions.h:39
static OptimizeBFGSOptions & OptimizeBFGS(Options &options)
Definition CastOptions.h:85
static std::shared_ptr< NonLinearEquationsDIISOptions > NonLinearEquationsDIIS(const std::shared_ptr< Options > &options)
Definition CastOptions.h:67
static const LinearEigensystemRSPTOptions & LinearEigensystemRSPT(const Options &options)
Definition CastOptions.h:45
static const LinearEigensystemDavidsonOptions & LinearEigensystem(const Options &options)
Definition CastOptions.h:42
static NonLinearEquationsDIISOptions & NonLinearEquationsDIIS(Options &options)
Definition CastOptions.h:73
static std::shared_ptr< OptimizeBFGSOptions > OptimizeBFGS(const std::shared_ptr< Options > &options)
Definition CastOptions.h:79
static LinearEquationsDavidsonOptions & LinearEquations(Options &options)
Definition CastOptions.h:60
static const OptimizeSDOptions & OptimizeSD(const Options &options)
Definition CastOptions.h:93
static std::shared_ptr< OptimizeSDOptions > OptimizeSD(const std::shared_ptr< Options > &options)
Definition CastOptions.h:90
static const LinearEquationsDavidsonOptions & LinearEquations(const Options &options)
Definition CastOptions.h:57
static std::shared_ptr< LinearEquationsDavidsonOptions > LinearEquations(const std::shared_ptr< Options > &options)
Definition CastOptions.h:54
Allows setting and getting of options for LinearEigensystemDavidson instance via IterativeSolver base...
Definition LinearEigensystemDavidsonOptions.h:38
Allows setting and getting of options for LinearEigensystemRSPT instance via IterativeSolver base cla...
Definition LinearEigensystemRSPTOptions.h:9
Allows setting and getting of options for LinearEquationsDavidson instance via IterativeSolver base c...
Definition LinearEquationsDavidsonOptions.h:13
Allows setting and getting of options for NonLinearEquationsDIIS instance via IterativeSolver base cl...
Definition NonLinearEquationsDIISOptions.h:9
Allows setting and getting of options for OptimizeBFGS instance via IterativeSolver base class.
Definition OptimizeBFGSOptions.h:9
Allows setting and getting of options for OptimizeBFGS instance via IterativeSolver base class.
Definition OptimizeSDOptions.h:9
Access point for different options in iterative solvers.
Definition Options.h:20