code: def get_normalized_bdew_profile(self):
          
          self.df['temperature'] = self.temperature.values
          self.df['temperature_geo'] = self.weighted_temperature(
              how='geometric_series')
  
          sf = self.get_sf_values()
  
          [a, b, c, d] = self.get_sigmoid_parameters()
  
          f = self.get_weekday_parameters()
          h = (a / (1 + (b / (self.df['temperature_geo'] - 40)) ** c) + d)
          kw = 1.0 / (sum(h * f) / 24)
          heat_profile_normalized = (kw * h * f * sf)
  
          return heat_profile_normalized
docs: Calculation of the normalized hourly heat demand