code: def write_dat(self):
          
          logger.warn('This function is deprecated and replaced by `write_np_dat`.')
  
          ret = False
          system = self.system
  
          # compute the total number of columns, excluding time
          if not system.Recorder.n:
              n_vars = system.dae.m + system.dae.n
              # post-computed power flows include:
              #   bus   - (Pi, Qi)
              #   line  - (Pij, Pji, Qij, Qji, Iij_Real, Iij_Imag, Iji_real, Iji_Imag)
              if system.tds.config.compute_flows:
                  n_vars += 2 * system.Bus.n + 8 * system.Line.n + 2 * system.Area.n_combination
              idx = list(range(n_vars))
  
          else:
              n_vars = len(system.Recorder.varout_idx)
              idx = system.Recorder.varout_idx
  
          template = ['{:<8g}'] + ['{:0.10f}'] * n_vars
          template = ' '.join(template)
  
          # format the output in a string
          out = ''
          for t, line in zip(self.t, self.vars):
              values = [t] + list(line[idx])
              out += template.format(*values) + '\n'
  
          try:
              os.makedirs(os.path.abspath(os.path.dirname(system.files.dat)), exist_ok=True)
              with open(system.files.dat, self._mode) as f:
                  f.write(out)
              ret = True
  
          except IOError:
              logger.error('I/O Error while writing the dat file.')
  
          return ret
docs: Write ``system.Varout.vars`` to a ``.dat`` file
          :return: