1#ifndef LINEARALGEBRA_SRC_MOLPRO_LINALG_ITSOLV_SUBSPACE_DSPACE_H
2#define LINEARALGEBRA_SRC_MOLPRO_LINALG_ITSOLV_SUBSPACE_DSPACE_H
6#include <molpro/linalg/array/ArrayHandler.h>
7#include <molpro/linalg/itsolv/Logger.h>
8#include <molpro/linalg/itsolv/subspace/Matrix.h>
9#include <molpro/linalg/itsolv/wrap.h>
33 for (
size_t i = 0;
i <
params.size(); ++
i) {
decltype(value_type_L{} *value_type_R{}) value_type
Definition ArrayHandler.h:182
decltype(check_abs< value_type >()) value_type_abs
Definition ArrayHandler.h:183
D space stores complement of P+Q+R subspace that is necessary to reproduce the previous solutions.
Definition DSpace.h:17
std::vector< Q > m_metric_actions
D space actions of the metric, empty unless there is a metric.
Definition DSpace.h:73
CVecRef< Q > cparams() const
Definition DSpace.h:60
CVecRef< Q > cmetric_actions() const
Actions of the metric, empty unless there is a metric.
Definition DSpace.h:67
Qt Q
Definition DSpace.h:19
std::shared_ptr< Logger > m_logger
Definition DSpace.h:70
std::vector< Q > m_params
D space parameters.
Definition DSpace.h:71
CVecRef< Q > cactions() const
Definition DSpace.h:64
void clear()
Definition DSpace.h:41
void update(VecRef< Q > ¶ms, VecRef< Q > &actions, const VecRef< Q > &metric_actions={})
Clears current D space and moves params and action, and any actions of the metric,...
Definition DSpace.h:29
std::vector< Q > m_actions
D space actions.
Definition DSpace.h:72
CVecRef< Q > actions() const
Definition DSpace.h:63
DSpace(std::shared_ptr< Logger > logger)
Definition DSpace.h:23
VecRef< Q > params()
Definition DSpace.h:58
typename array::ArrayHandler< Q, Q >::value_type value_type
Definition DSpace.h:20
void set_logger(std::shared_ptr< Logger > logger)
Replaces the logger.
Definition DSpace.h:26
VecRef< Q > actions()
Definition DSpace.h:62
size_t size() const
Definition DSpace.h:56
typename array::ArrayHandler< Q, Q >::value_type_abs value_type_abs
Definition DSpace.h:21
void erase(size_t i)
Erases parameter i.
Definition DSpace.h:48
CVecRef< Q > params() const
Definition DSpace.h:59
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
auto wrap(ForwardIt begin, ForwardIt end)
Takes a begin and end iterators and returns a vector of references to each element.
Definition wrap.h:32
std::vector< std::reference_wrapper< const A > > CVecRef
Definition wrap.h:14
std::vector< std::reference_wrapper< A > > VecRef
Definition wrap.h:11