NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ function() [2/5]

template<typename T >
cntr::function< T >::function ( int  nt,
int  size1 = 1 
)

Initializes the function class for a square-matrix-valued function of time.

Purpose

Initializes the function class for a square-matrix-valued function of time. nt = 0 leads to only one element (with time = -1), which is the value of the function on the Matsubara axis (initial equilibirum)

Parameters
nt

Number of time steps

size1

Leading dimension of matrix

Definition at line 45 of file cntr_function_impl.hpp.

45  {
46  int len = (nt + 2) * size1 * size1;
47  assert(size1 >= 0 && nt >= -1);
48  if (len == 0)
49  data_ = 0;
50  else {
51  data_ = new cplx[len];
52  }
53  size1_ = size1;
54  size2_ = size1;
55  element_size_ = size1 * size1_;
56  nt_ = nt;
57  total_size_ = (nt_ + 2) * size1_ * size2_;
58 }
int size2_
Number of the rows in the Matrix form.
int size1(void) const
int total_size_
Size of the data stored for the function on the real-time axis including ; * size1 * size2 ...
cplx * data_
Pointer to the function in the Matrix form on the real-time axis ( ) ; &#39;data_+ element_size&#39; corresp...
int size1_
Number of the colums in the Matrix form.
int nt(void) const
std::complex< T > cplx
int nt_
Maximum number of the time steps.