![]() |
pairinteraction
A Rydberg Interaction Calculator
|
#include <SystemPair.hpp>
Public Types | |
using | Type = SystemPair< Scalar > |
using | real_t = typename traits::CrtpTraits< Type >::real_t |
using | basis_t = typename traits::CrtpTraits< Type >::basis_t |
![]() | |
using | scalar_t = typename traits::CrtpTraits< SystemPair< Scalar > >::scalar_t |
using | real_t = typename traits::CrtpTraits< SystemPair< Scalar > >::real_t |
using | ketvec_t = typename traits::CrtpTraits< SystemPair< Scalar > >::ketvec_t |
using | basis_t = typename traits::CrtpTraits< SystemPair< Scalar > >::basis_t |
using | operator_t = typename traits::CrtpTraits< SystemPair< Scalar > >::operator_t |
![]() | |
using | real_t = typename traits::NumTraits< traits::CrtpTraits< SystemPair< Scalar > >::scalar_t >::real_t |
Public Member Functions | |
SystemPair (std::shared_ptr< const basis_t > basis) | |
Type & | set_interaction_order (int value) |
Type & | set_distance_vector (const std::array< real_t, 3 > &vector) |
![]() | |
System (std::shared_ptr< const basis_t > basis) | |
System (const System &other) | |
System (System &&other) noexcept | |
System< SystemPair< Scalar > > & | operator= (const System &other) |
System< SystemPair< Scalar > > & | operator= (System &&other) noexcept |
virtual | ~System () |
std::shared_ptr< const basis_t > | get_basis () const |
std::shared_ptr< const basis_t > | get_eigenbasis () const |
Eigen::VectorX< real_t > | get_eigenenergies () const |
const Eigen::SparseMatrix< scalar_t, Eigen::RowMajor > & | get_matrix () const |
const Transformation< scalar_t > & | get_transformation () const override |
Transformation< scalar_t > | get_rotator (real_t alpha, real_t beta, real_t gamma) const override |
Sorting | get_sorter (const std::vector< TransformationType > &labels) const override |
std::vector< IndicesOfBlock > | get_indices_of_blocks (const std::vector< TransformationType > &labels) const override |
void | get_indices_of_blocks_without_checks (const std::set< TransformationType > &unique_labels, IndicesOfBlocksCreator &blocks) const |
System< SystemPair< Scalar > > & | transform (const Transformation< scalar_t > &transformation) |
System< SystemPair< Scalar > > & | transform (const Sorting &transformation) |
System< SystemPair< Scalar > > & | diagonalize (const DiagonalizerInterface< scalar_t > &diagonalizer, std::optional< real_t > min_eigenenergy={}, std::optional< real_t > max_eigenenergy={}, double rtol=1e-6) |
bool | is_diagonal () const |
![]() | |
virtual | ~TransformationBuilderInterface ()=default |
virtual const Transformation< traits::CrtpTraits< SystemPair< Scalar > >::scalar_t > & | get_transformation () const=0 |
virtual Transformation< traits::CrtpTraits< SystemPair< Scalar > >::scalar_t > | get_rotator (real_t alpha, real_t beta, real_t gamma) const=0 |
Transformation< traits::CrtpTraits< SystemPair< Scalar > >::scalar_t > | get_rotator (const std::array< real_t, 3 > &to_z_axis, const std::array< real_t, 3 > &to_y_axis) const |
virtual Sorting | get_sorter (const std::vector< TransformationType > &labels) const=0 |
virtual std::vector< IndicesOfBlock > | get_indices_of_blocks (const std::vector< TransformationType > &labels) const=0 |
Additional Inherited Members | |
virtual void | construct_hamiltonian () const=0 |
![]() | |
std::unique_ptr< operator_t> | hamiltonian |
bool | hamiltonian_requires_construction |
bool | hamiltonian_is_diagonal |
std::vector< TransformationType > | blockdiagonalizing_labels |
Definition at line 44 of file SystemPair.hpp.
using pairinteraction::SystemPair< Scalar >::basis_t = typename traits::CrtpTraits<Type>::basis_t |
Definition at line 50 of file SystemPair.hpp.
using pairinteraction::SystemPair< Scalar >::real_t = typename traits::CrtpTraits<Type>::real_t |
Definition at line 49 of file SystemPair.hpp.
using pairinteraction::SystemPair< Scalar >::Type = SystemPair<Scalar> |
Definition at line 48 of file SystemPair.hpp.
pairinteraction::SystemPair< Scalar >::SystemPair | ( | std::shared_ptr< const basis_t > | basis | ) |
Definition at line 241 of file SystemPair.cpp.
SystemPair< Scalar > & pairinteraction::SystemPair< Scalar >::set_distance_vector | ( | const std::array< real_t, 3 > & | vector | ) |
Definition at line 255 of file SystemPair.cpp.
Referenced by pairinteraction::DOCTEST_TEST_CASE(), and main().
SystemPair< Scalar > & pairinteraction::SystemPair< Scalar >::set_interaction_order | ( | int | value | ) |
Definition at line 245 of file SystemPair.cpp.