code: def timeseries_reactive(self):
          
          if self._timeseries_reactive is None:
              if self.grid.network.timeseries.generation_reactive_power \
                      is not None:
                  try:
                      timeseries = \
                          self.grid.network.timeseries.generation_reactive_power[
                              self.type].to_frame('q')
                  except (KeyError, TypeError):
                      try:
                          timeseries = \
                              self.grid.network.timeseries.generation_reactive_power[
                                  'other'].to_frame('q')
                      except:
                          logger.warning(
                              "No reactive power time series for type {} given. "
                              "Reactive power time series will be calculated from "
                              "assumptions in config files and active power "
                              "timeseries.".format(self.type))
                          return None
                  self.power_factor = 'not_applicable'
                  self.reactive_power_mode = 'not_applicable'
                  return timeseries * self.nominal_capacity
              else:
                  return None
          else:
              return self._timeseries_reactive.loc[
                     self.grid.network.timeseries.timeindex, :]
docs: Reactive power time series in kvar.
  
          Parameters
          -----------
          timeseries_reactive : :pandas:`pandas.Seriese<series>`
              Series containing reactive power in kvar.
  
          Returns
          -------
          :pandas:`pandas.Series<series>` or None
              Series containing reactive power time series in kvar. If it is not
              set it is tried to be retrieved from `generation_reactive_power`
              attribute of global TimeSeries object. If that is not possible
              None is returned.