code: def peak_generation_per_technology_and_weather_cell(self):
          
          peak_generation = defaultdict(float)
          for gen in self.generators:
              if hasattr(gen, 'weather_cell_id'):
                  if (gen.type, gen.weather_cell_id) in peak_generation.keys():
                      peak_generation[gen.type, gen.weather_cell_id] += gen.nominal_capacity
                  else:
                      peak_generation[gen.type, gen.weather_cell_id] = gen.nominal_capacity
              else:
                  message = 'No weather cell ID found for ' \
                            'generator {}.'.format(repr(gen))
                  raise KeyError(message)
  
          series_index = pd.MultiIndex.from_tuples(list(peak_generation.keys()),
                                                   names=['type', 'weather_cell_id'])
  
          return pd.Series(peak_generation, index=series_index)
docs: Peak generation of each technology and the 
          corresponding weather cell in the grid 
  
          Returns
          -------
          :pandas:`pandas.Series<series>`
              Peak generation index by technology