RealTimeTransport 1.0.0
Real-time simulation of quantum transport processes
Loading...
Searching...
No Matches
2. Renormalized perturbation theory

This page ontains classes and methods related to the implementation of the renormalized perturbation theory.

Classes

class  RealTimeTransport::RenormalizedPT::ConductanceKernel
 Defines the renormalized conductance kernel. More...
 
class  RealTimeTransport::RenormalizedPT::CurrentKernel
 Defines the renormalized current kernel. More...
 
class  RealTimeTransport::RenormalizedPT::MemoryKernel
 Defines the renormalized memory kernel. More...
 

Enumerations

enum class  RealTimeTransport::RenormalizedPT::Order { Order::_1 = 1 , Order::_2 = 2 }
 Defines the order of the approximation. More...
 

Functions

RenormalizedPT::ConductanceKernel RealTimeTransport::computeConductanceKernel (const RenormalizedPT::MemoryKernel &K, const RenormalizedPT::CurrentKernel &KI, RenormalizedPT::Order order, int block=-1)
 Computes the conductance kernel for a given model in the same reservoir for which the current kernel was computed.
 
RenormalizedPT::ConductanceKernel RealTimeTransport::computeConductanceKernel (const RenormalizedPT::MemoryKernel &K, const RenormalizedPT::CurrentKernel &KI, int r, RenormalizedPT::Order order, int block=-1)
 Computes the conductance kernel for a given model.
 
RenormalizedPT::CurrentKernel RealTimeTransport::computeCurrentKernel (const std::unique_ptr< Model > &model, int r, RenormalizedPT::Order order, SciCore::Real tMax, SciCore::Real errorGoal, int block=-1)
 Computes the current kernel for a given model.
 
RenormalizedPT::CurrentKernel RealTimeTransport::computeCurrentKernel (const std::unique_ptr< Model > &model, int r, RenormalizedPT::Order order, SciCore::Real tMax, SciCore::Real errorGoal, tf::Executor &executor, int block=-1)
 Computes the current kernel for a given model in parallel.
 
SciCore::ChebAdaptive< SciCore::Real > RealTimeTransport::computeCurrent (const RenormalizedPT::CurrentKernel &KCurrent, const Propagator &propagator, const Model::OperatorType &rho0)
 Computes the transient current for a given initial state.
 
RenormalizedPT::MemoryKernel RealTimeTransport::computeMemoryKernel (const std::unique_ptr< Model > &model, RenormalizedPT::Order order, SciCore::Real tMax, SciCore::Real errorGoal, int block=-1)
 Computes the memory kernel for a given model.
 
RenormalizedPT::MemoryKernel RealTimeTransport::computeMemoryKernel (const std::unique_ptr< Model > &model, RenormalizedPT::Order order, SciCore::Real tMax, SciCore::Real errorGoal, tf::Executor &executor, int block=-1)
 Computes the memory mernel for a given model in parallel.
 
Propagator RealTimeTransport::computePropagator (const RenormalizedPT::MemoryKernel &memoryKernel, int block=-1)
 Computes the propagator corresponding to a given memory kernel.
 

Enumeration Type Documentation

◆ Order

Enumerator
_1 

Leading order.

_2 

Next-to-leading order.

Function Documentation

◆ computeConductanceKernel() [1/2]

RenormalizedPT::ConductanceKernel RealTimeTransport::computeConductanceKernel ( const RenormalizedPT::MemoryKernel & K,
const RenormalizedPT::CurrentKernel & KI,
RenormalizedPT::Order order,
int block = -1 )

Computes the conductance kernel for a given model in the same reservoir for which the current kernel was computed.

Parameters
KThe memory kernel for a given model.
KIThe current kernel for a given model.
orderThe order of the renormalized perturbation series.
blockComputes the complete conductance kernel if block==-1, otherwise computes only a single block with index block.

◆ computeConductanceKernel() [2/2]

RenormalizedPT::ConductanceKernel RealTimeTransport::computeConductanceKernel ( const RenormalizedPT::MemoryKernel & K,
const RenormalizedPT::CurrentKernel & KI,
int r,
RenormalizedPT::Order order,
int block = -1 )

Computes the conductance kernel which gives access to the (cross)conductance \(dI_{r_1}/d\mu_{r_2}\) for a given model. Here \(r_1\) is determined by the current kernel KI, and \(r_2\) by the parameter r.

Parameters
KThe memory kernel for a given model.
KIThe current kernel for a given model.
rReservoir at which the derivative of the chemical potential is taken.
orderThe order of the renormalized perturbation series.
blockComputes the complete conductance kernel if block==-1, otherwise computes only a single block with index block.

◆ computeCurrentKernel() [1/2]

RenormalizedPT::CurrentKernel RealTimeTransport::computeCurrentKernel ( const std::unique_ptr< Model > & model,
int r,
RenormalizedPT::Order order,
SciCore::Real tMax,
SciCore::Real errorGoal,
int block = -1 )

Computes the current kernel for a given model.

Parameters
modelThe model for which the current kernel is computed.
rIndex of the reservoir \( r=0,1,\dots \)
orderThe order of the renormalized perturbation series.
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.

◆ computeCurrentKernel() [2/2]

RenormalizedPT::CurrentKernel RealTimeTransport::computeCurrentKernel ( const std::unique_ptr< Model > & model,
int r,
RenormalizedPT::Order order,
SciCore::Real tMax,
SciCore::Real errorGoal,
tf::Executor & executor,
int block = -1 )

Computes the current kernel for a given model in parallel.

Parameters
modelThe model for which the current kernel is computed.
rIndex of the reservoir \( r=0,1,\dots \)
orderThe order of the renormalized perturbation series.
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.

◆ computeCurrent()

SciCore::ChebAdaptive< SciCore::Real > RealTimeTransport::computeCurrent ( const RenormalizedPT::CurrentKernel & KCurrent,
const Propagator & propagator,
const Model::OperatorType & rho0 )

Computes the transient current for a given initial state.

Parameters
KCurrentThe current kernel.
propagatorThe propagator of the dynamics.
rho0The initial state.

◆ computeMemoryKernel() [1/2]

RenormalizedPT::MemoryKernel RealTimeTransport::computeMemoryKernel ( const std::unique_ptr< Model > & model,
RenormalizedPT::Order order,
SciCore::Real tMax,
SciCore::Real errorGoal,
int block = -1 )

Computes the memory kernel for a given model.

Parameters
modelThe model for which the memory kernel is computed.
orderThe order of the renormalized perturbation series.
tMaxMaximum time until the memory kernel is resolved.
errorGoalError goal of the memory kernel computation.
blockComputes the complete memory kernel if block==-1, otherwise computes only a single block with index block.

◆ computeMemoryKernel() [2/2]

RenormalizedPT::MemoryKernel RealTimeTransport::computeMemoryKernel ( const std::unique_ptr< Model > & model,
RenormalizedPT::Order order,
SciCore::Real tMax,
SciCore::Real errorGoal,
tf::Executor & executor,
int block = -1 )

Computes the memory mernel for a given model in parallel.

Parameters
modelThe model for which the memory kernel is computed.
orderThe order of the renormalized perturbation series.
tMaxMaximum time until the memory kernel is resolved.
errorGoalError goal of the memory kernel computation.
executorAn excecutor managing multiple threads.
blockComputes the complete memory kernel if block==-1, otherwise computes only a single block with index block.

◆ computePropagator()

Propagator RealTimeTransport::computePropagator ( const RenormalizedPT::MemoryKernel & memoryKernel,
int block = -1 )

Computes the propagator corresponding to a given memory kernel. This is done my numerically solving the time-nonlocal master equation.

Parameters
memoryKernelThe memory kernel.
blockComputes the complete propagator if block==-1, otherwise computes only a single block with index block.