Xped
Loading...
Searching...
No Matches
Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank > Class Template Reference

#include <CTMSolver.hpp>

Collaboration diagram for Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >:

Public Types

using Scalar = Scalar_
 
using Symmetry = Symmetry_
 
template<typename Sym >
using Hamiltonian = TwoSiteObservable< double, Sym, true >
 

Public Member Functions

 CTMSolver ()=default
 
 CTMSolver (Opts::CTM opts)
 
template<typename HamScalar , bool AD>
ScalarTraits< Scalar >::Real solve (std::shared_ptr< iPEPS< Scalar, Symmetry > > Psi, Scalar *gradient, Hamiltonian< Symmetry > &H)
 
XPED_CONST CTM< Scalar, Symmetry, TRank, false > & getCTM () XPED_CONST
 
void setCTM (XPED_CONST CTM< Scalar, Symmetry, TRank, false > &in)
 
template<typename Ar >
void serialize (Ar &ar)
 

Public Attributes

Opts::CTM opts {}
 

Member Typedef Documentation

◆ Hamiltonian

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
template<typename Sym >
using Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::Hamiltonian = TwoSiteObservable<double, Sym, true>

◆ Scalar

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
using Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::Scalar = Scalar_

◆ Symmetry

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
using Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::Symmetry = Symmetry_

Constructor & Destructor Documentation

◆ CTMSolver() [1/2]

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::CTMSolver ( )
default

◆ CTMSolver() [2/2]

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::CTMSolver ( Opts::CTM  opts)
inlineexplicit
Here is the call graph for this function:

Member Function Documentation

◆ getCTM()

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
XPED_CONST CTM< Scalar, Symmetry, TRank, false > & Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::getCTM ( )
inline
Here is the caller graph for this function:

◆ serialize()

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
template<typename Ar >
void Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::serialize ( Ar &  ar)
inline

◆ setCTM()

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
void Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::setCTM ( XPED_CONST CTM< Scalar, Symmetry, TRank, false > &  in)
inline

◆ solve()

template<typename Scalar , typename Symmetry , Opts::CTMCheckpoint CPOpts, std::size_t TRank>
template<typename HamScalar , bool AD>
ScalarTraits< Scalar >::Real Xped::CTMSolver< Scalar, Symmetry, CPOpts, TRank >::solve ( std::shared_ptr< iPEPS< Scalar, Symmetry > >  Psi,
Scalar gradient,
Hamiltonian< Symmetry > &  H 
)
Here is the call graph for this function:

Member Data Documentation

◆ opts

template<typename Scalar_ , typename Symmetry_ , Opts::CTMCheckpoint CPOpts = Opts::CTMCheckpoint{}, std::size_t TRank = 2>
Opts::CTM Xped::CTMSolver< Scalar_, Symmetry_, CPOpts, TRank >::opts {}

The documentation for this class was generated from the following files: