RealTimeTransport 1.0.0
Real-time simulation of quantum transport processes
Loading...
Searching...
No Matches
1. Models

This page describes classes and methods related to the implementation of different models. A model is defined by a class that inherits from the abstract Model class. This requires one to implement several functions, which provide, for example, the Hamiltonian, the field operators and information about the block structure of the memory kernel.

Models should be instantiated using the createModel function, which automatically takes care of the involved memory management.

Classes

class  RealTimeTransport::Model
 Abstract class representing a model. More...
 
class  RealTimeTransport::AndersonDot
 Implements an Anderson quantum dot (single level with spin). More...
 
class  RealTimeTransport::DoubleDot
 Implements a spinless double quantum dot. More...
 
class  RealTimeTransport::ResonantLevel
 Implements a single level without spin. More...
 

Functions

template<typename ConcreteModelType , typename... Params>
requires std::is_base_of_v<Model, ConcreteModelType>
std::unique_ptr< ModelRealTimeTransport::createModel (Params &&... params)
 Creates and returns a memory managed Model object.
 

Function Documentation

◆ createModel()

template<typename ConcreteModelType , typename... Params>
requires std::is_base_of_v<Model, ConcreteModelType>
std::unique_ptr< Model > RealTimeTransport::createModel ( Params &&... params)
Parameters
paramsList of parameters to pass to the constructor.