NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ smul()

template<typename T >
void cntr::herm_matrix_timestep_view< T >::smul ( weight)

Multiply herm_matrix_timestep_view with scalar weight.

Purpose

Multiply herm_matrix_timestep_view with a scalar. If \(t>-1\) then ret,les,tv components are set, otherwise mat. Works for scalar or square-matrix contour objects.

Parameters
weight

The template argument multiplication factor

Definition at line 1569 of file cntr_herm_matrix_timestep_view_impl.hpp.

Referenced by cntr::herm_matrix_timestep< T >::smul().

1569  {
1570  int m;
1571  CPLX *x0;
1572  if (tstp_ == -1) {
1573  x0 = mat_;
1574  for (m = 0; m <= ntau_; m++) {
1575  element_smul<T, LARGESIZE>(size1_, x0 + m * element_size_,
1576  weight);
1577  }
1578  } else {
1579  x0 = ret_;
1580  for (m = 0; m <= tstp_; m++) {
1581  element_smul<T, LARGESIZE>(size1_, x0 + m * element_size_,
1582  weight);
1583  }
1584  x0 = tv_;
1585  for (m = 0; m <= ntau_; m++) {
1586  element_smul<T, LARGESIZE>(size1_, x0 + m * element_size_,
1587  weight);
1588  }
1589  x0 = les_;
1590  for (m = 0; m <= tstp_; m++) {
1591  element_smul<T, LARGESIZE>(size1_, x0 + m * element_size_,
1592  weight);
1593  }
1594  }
1595 }
+ Here is the caller graph for this function: