Auxiliary tools for BinarySystem. More...
Classes | |
class | Base |
Common base for all class-composed BinarySystems. More... | |
class | EmptyBase |
Helper for class composition of BinarySystem. More... | |
class | Exact |
Implements the structure::Exact interface for a BinarySystem along the same lines as Base implements the structure::Averaged interface. More... | |
class | Hamiltonian |
Implements the structure::Hamiltonian interface for a BinarySystem. More... | |
class | Liouvillean |
Implements the structure::Liouvillean interface for a BinarySystem. More... | |
Typedefs | |
typedef boost::shared_ptr< const Base > | Ptr |
Convenience typedef. | |
typedef structure::Interaction< 2 > | Interaction |
Binary interaction. | |
typedef composite::SubSystemFree | SSF |
Convenience typedef. | |
typedef composite::SubSystemsInteraction< 2 > | SSI |
Convenience typedef. | |
Functions | |
const Ptr | doMake (Interaction::Ptr) |
Maker function for BinarySystem. More... | |
template<typename IA > | |
const Ptr | make (const IA &ia) |
Templatized maker function relying on cpputils::sharedPointerize to delegate to make() | |
template<structure::LiouvilleanAveragedTag > | |
std::ostream & | displayKey (std::ostream &, size_t &, const SSF &free0, const SSF &free1, const SSI &ia) |
Outfactored common functionality of Liouvillean and Averaged. | |
template<structure::LiouvilleanAveragedTag > | |
size_t | nAvr (const SSF &free0, const SSF &free1, const SSI &ia) |
Outfactored common functionality of Liouvillean and Averaged. | |
template<structure::LiouvilleanAveragedTag > | |
const structure::LiouvilleanAveragedCommon::DArray1D | average (double t, const quantumdata::LazyDensityOperator< 2 > &ldo, const SSF &free0, const SSF &free1, const SSI &ia, size_t numberAvr) |
Outfactored common functionality of Liouvillean and Averaged. | |
Auxiliary tools for BinarySystem.
const Ptr binary::doMake | ( | Interaction::Ptr | ) |
Maker function for BinarySystem.
Uses runtime dispatching to select the suitable class-composed BinarySystem on the basis of the characteristics of the components (the two free systems and the Interaction): whether they derive from structure::Exact, structure::Hamiltonian, structure::Liouvillean. If any of the components derive from structure::Exact, then the whole BinarySystem has to derive from structure::Exact, and so on.