NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ write_to_hdf5() [1/3]

template<typename T >
void cntr::herm_matrix_timestep_view< T >::write_to_hdf5 ( hid_t  group_id)

Write herm_matrix_timestep_view to hdf5 group given by group_id.

Purpose

Write herm_matrix_timestep_view to the hdf5 group given by group_id If \(t>-1\) then ret,les,tv components are written, otherwise mat. Works for scalar or square-matrix contour objects.

Parameters
group_id

Group ID of the hdf5 file to write in

Definition at line 1854 of file cntr_herm_matrix_timestep_view_impl.hpp.

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

1854  {
1855  store_int_attribute_to_hid(group_id, std::string("ntau"), ntau_);
1856  store_int_attribute_to_hid(group_id, std::string("tstp"), tstp_);
1857  store_int_attribute_to_hid(group_id, std::string("sig"), sig_);
1858  store_int_attribute_to_hid(group_id, std::string("size1"), size1_);
1859  store_int_attribute_to_hid(group_id, std::string("size2"), size2_);
1860  store_int_attribute_to_hid(group_id, std::string("element_size"),
1861  element_size_);
1862  hsize_t len_shape = 3, shape[3];
1863  shape[1] = size1_;
1864  shape[2] = size2_;
1865  if (tstp_ == -1) {
1866  shape[0] = ntau_ + 1;
1867  store_cplx_array_to_hid(group_id, std::string("mat"), matptr(0),
1868  shape, len_shape);
1869  } else if (tstp_ > -1) {
1870  shape[0] = (tstp_ + 1);
1871  // CHECK: implement store_cplx_array_to_hid with template typename T
1872  store_cplx_array_to_hid(group_id, std::string("ret"), retptr(0),
1873  shape, len_shape);
1874  store_cplx_array_to_hid(group_id, std::string("les"), lesptr(0),
1875  shape, len_shape);
1876  shape[0] = (ntau_ + 1);
1877  store_cplx_array_to_hid(group_id, std::string("tv"), tvptr(0), shape,
1878  len_shape);
1879  }
1880 }
+ Here is the caller graph for this function: