def _setup_linear_propagator(self, struct): """Sets up the noise-independent, linear propagator Returns: The propagator as CSR Matrix """ i, j, a = hcons.setup_linear_propagator(struct.vecind, struct.indab, struct.indbl, self._h_sys, self._g, self._gamma + 1.j*self._omega, self._l_map, self._with_terminator) csr = CSRMatrix((a, j, i)) csr.sum_duplicates() csr.eliminate_zeros() return csr