RealTimeTransport 1.0.0
Real-time simulation of quantum transport processes
Loading...
Searching...
No Matches
RealTimeTransport::IteratedRG::CurrentKernel Class Reference

#include <RealTimeTransport/IteratedRG/CurrentKernel.h>

Defines the current kernel computed via the renormalization group iteration.

Public Member Functions

 CurrentKernel () noexcept
 Constructor.
 
 CurrentKernel (CurrentKernel &&other) noexcept
 Move constructor.
 
 CurrentKernel (const CurrentKernel &other)
 Copy constructor.
 
CurrentKerneloperator= (CurrentKernel &&other)
 Move assignment operator.
 
CurrentKerneloperator= (const CurrentKernel &other)
 Copy assignment operator.
 
 CurrentKernel (const MemoryKernel &K, const Propagator &propagator, int r, Order order, SciCore::Real tMax, SciCore::Real errorGoal, int block=-1)
 Computes the current kernel for a given model.
 
 CurrentKernel (const MemoryKernel &K, const Propagator &propagator, int r, Order order, SciCore::Real tMax, SciCore::Real errorGoal, tf::Executor &executor, int block=-1)
 Computes the current kernel for a given model in parallel.
 
const Modelmodel () const noexcept
 Returns a pointer to the model.
 
int r () const noexcept
 Returns the reservoir index for which the current kernel was computed.
 
SciCore::Real tMax () const
 Returns the maximum simulation time.
 
SciCore::Real errorGoal () const noexcept
 Returns the error goal of the computation.
 
const Model::SuperRowVectorTypeSigmaInfty () const noexcept
 Returns \( -i \Sigma_{\infty} \), where \( \Sigma_{\infty} \) denotes the infinite temperature current kernel.
 
const SciCore::ChebAdaptive< Model::SuperRowVectorType > & K () const noexcept
 Returns \( -i K \), where \( K \) denotes the current kernel.
 
Model::SuperRowVectorType zeroFrequency () const
 Returns \(-i \Sigma_{\infty} -i K(0)\), where \(\Sigma_{\infty}\) denotes infinite temperature current kernel and \(K(0)\) the current kernel at zero frequency.
 
SciCore::Real stationaryCurrent (const Model::OperatorType &stationaryState) const
 Returns the stationary current.
 

Constructor & Destructor Documentation

◆ CurrentKernel() [1/2]

RealTimeTransport::IteratedRG::CurrentKernel::CurrentKernel ( const MemoryKernel & K,
const Propagator & propagator,
int r,
Order order,
SciCore::Real tMax,
SciCore::Real errorGoal,
int block = -1 )

Computes the current kernel for a given model using the renormalization group iteration.

Parameters
KThe memory kernel for the model.
propagatorThe propagator for the model.
rIndex of the reservoir \( r=0,1,\dots \)
orderThe loop-order of the renormalization group iteration.
tMaxMaximum time until the current kernel is resolved.
errorGoalError goal of the current kernel computation.
blockComputes the complete current kernel if block==-1, otherwise computes only a single block with index block.

◆ CurrentKernel() [2/2]

RealTimeTransport::IteratedRG::CurrentKernel::CurrentKernel ( const MemoryKernel & K,
const Propagator & propagator,
int r,
Order order,
SciCore::Real tMax,
SciCore::Real errorGoal,
tf::Executor & executor,
int block = -1 )

Computes the current kernel for a given model using the renormalization group iteration in parallel.

Parameters
KThe memory kernel for the model.
propagatorThe propagator for the model.
rIndex of the reservoir \( r=0,1,\dots \)
orderThe loop-order of the renormalization group iteration.
tMaxMaximum time until the current kernel is resolved.
errorGoalError goal of the current kernel computation.
executorAn excecutor managing multiple threads.
blockComputes the complete current kernel if block==-1, otherwise computes only a single block with index block.