NESSI  v1.1.2
The NonEquilibrium Systems SImulation Library

◆ vie2()

template<typename T >
void cntr::vie2 ( herm_matrix< T > &  G,
herm_matrix< T > &  F,
herm_matrix< T > &  Fcc,
herm_matrix< T > &  Q,
integration::Integrator< T > &  I,
beta,
h,
const int  matsubara_method 
)

One step VIE solver \((1+F)*G=Q\) for a Green's function \(G\)

Purpose

One solves the linear equation \((1+F)*G=Q\) for a hermitian matrix \(G(t, t^\prime)\) with given \(F(t, t^\prime)\) and \(Q(t, t^\prime)\). Here, one calls the routines 'vie2_mat()', 'vie2_start()', 'vie2_timestep'.

Parameters
&G

[herm_matrix<T>] solution

&F

[herm_matrix<T>] green's function on left-hand side

&Fcc

[herm_matrix<T>] Complex conjugate of F

&Q

[herm_matrix<T>] green's function on right-hand side

I

[Integrator] integrator class

beta

[double] inverse temperature

h

[double] time interval

matsubara_method

[const] Solution method on the Matsubara axis with 0: Fourier, 1: steep, 2: fixpoint

Definition at line 1451 of file cntr_vie2_impl.hpp.

References integration::I(), cntr::herm_matrix< T >::nt(), vie2_mat(), vie2_start(), and vie2_timestep().

1452  {
1453  int tstp, k = I.k();
1454  vie2_mat(G, F, Fcc, Q, beta, I, matsubara_method);
1455  // vie2_mat(G,F,Fcc,Q,beta,3);
1456  if (G.nt() >= 0)
1457  vie2_start(G, F, Fcc, Q, I, beta, h);
1458  for (tstp = k + 1; tstp <= G.nt(); tstp++)
1459  vie2_timestep(tstp, G, F, Fcc, Q, I, beta, h);
1460 }
void vie2_mat(herm_matrix< T > &G, herm_matrix< T > &F, herm_matrix< T > &Fcc, herm_matrix< T > &Q, T beta, integration::Integrator< T > &I, const int method=CNTR_MAT_FIXPOINT)
VIE solver for a Green&#39;s function on the Matsubara axis
void vie2_start(herm_matrix< T > &G, herm_matrix< T > &F, herm_matrix< T > &Fcc, herm_matrix< T > &Q, integration::Integrator< T > &I, T beta, T h)
VIE solver for a Green&#39;s function for the first k timesteps
Integrator< T > & I(int k)
void vie2_timestep(int n, herm_matrix< T > &G, herm_matrix< T > &F, herm_matrix< T > &Fcc, herm_matrix< T > &Q, integration::Integrator< T > &I, T beta, T h, const int matsubara_method=CNTR_MAT_FIXPOINT)
One step VIE solver for a Green&#39;s function at a given timestep
+ Here is the call graph for this function: