quintel / etsource

Data source for the Energy Transition Model
https://energytransitionmodel.com/
MIT License
13 stars 8 forks source link

Is our calculation of SCOP correct for hybrid heat pumps? #2706

Open marliekeverweij opened 2 years ago

marliekeverweij commented 2 years ago

Here you can see our calculation for the yearly average COP (SCOP):

Screenshot 2022-06-29 at 14 54 17

This calculation works for all-electric heat pumps, because then you do: heat_output_share (= 1) / electricity_input_share (= non_ambient_share)

For hybrid heat pumps, the non_ambient_share consists of both electricity and gas/hydrogen, right @antw ? If that's the case, then the calculation should be adjusted I think.

I started looking into this calculation, because I figured that the SCOP of hybrid and gas hybrid heat pumps are different and expected them to be the same. For buildings we are adding a hydrogen HHP and then the SCOP is 4.0. The gas HHP has a SCOP of 5.5 in buildings.

I am not sure who to assign, but added @DorinevanderVlies because for now! Feel free to reassign

Notifying @quintel/core

DorinevanderVlies commented 2 years ago

because I figured that the SCOP of hybrid and gas hybrid heat pumps are different and expected them to be the same

I agree, if the HP part of gas and hydrogen HHP have the same efficiency and cut-of COP I would indeed expect the SCOP of both to be the same.

@marliekeverweij do you know the definition of SCOP of HHP's? I see two options:

  1. SCOP of HHP is about the whole HHP. So all non ambient energy in / heat out.
  2. SCOP of HHP is about the HP part. So electricity in / heat out for HP part.

SCOP of option 1 will be lower since the efficiency of the gas part of the HHP is lower than efficiency of the HP/electric part.

Equations:

  1. heat_output_share / (electricity_input_share + gas_input_share + hydrogen_input_share)
  2. heat_output_share (when electricity is used) / electricity_input_share

I am not sure if it is possible/easy to determine heat_output_share (when electricity is used)

marliekeverweij commented 2 years ago

Thanks for you input @DorinevanderVlies !

@marliekeverweij do you know the definition of SCOP of HHP's?

No, I do not know. I thought it was option 2, but not sure.

github-actions[bot] commented 2 years ago

This issue has had no activity for 60 days and will be closed in 7 days. Removing the "Stale" label or posting a comment will prevent it from being closed automatically. You can also add the "Pinned" label to ensure it isn't marked as stale in the future.

mabijkerk commented 1 year ago

@Charlottevm and I also ran in some problems trying to trace back the COP of hybrid heat pumps.

To be clear, the COP of hybrid heat pumps is calculated using fever. In the snippet @marliekeverweij shared you can see the following condition:

if fever&.efficiency_based_on && fever&.efficiency_balanced_with
            # When a Fever participant defines which carriers are used by a heat pump, use these
            # rather than guessing.
            heat_pump_coefficient_of_performance

The hybrid heat pumps meet this conditions, see for example the buildings_space_heater_hybrid_heatpump_air_water_electricity:

- fever.efficiency_balanced_with = ambient_heat
- fever.efficiency_based_on = electricity

Then heat_pump_coefficient_of_performance is defined further below in the file:

      def heat_pump_coefficient_of_performance
        secondary_carriers = inputs.map { |input| input.carrier.key } -
          [fever.efficiency_based_on, fever.efficiency_balanced_with]

        primary_carrier = input(fever.efficiency_based_on)
        secondary_conversions = secondary_carriers.sum { |carrier| input(carrier).conversion }

        if primary_carrier.conversion.zero?
          1.0
        else
          (1 - secondary_conversions) / primary_carrier.conversion
        end

I would have to take some more time to find out what this piece of code does exactly. I do however think @DorinevanderVlies poses an interesting question: in our calculation of (S)COP, are we trying to separate the heat pump and gas part or not? In the first case I would refine the suggestion from @DorinevanderVlies:

Instead of heat_output_share (when electricity is used) / electricity_input_share, I would go for share_of_electricity_and_ambient_in_heat_output_share / electricity_input_share.

At a glance it seems as though this may be exactly what fever does in the snippet above, because only electricity is taken into account for fever.efficiency_based_on, not network_gas. It is worthwhile further investigation this.

mabijkerk commented 1 year ago

So, to follow up on myself with a blank scenario for 2050 in FR_france:

Screenshot 2023-02-22 at 15 23 11

If we take the share in heat output of ambient heat and electricity (thanks @DorinevanderVlies for the excellent input), then divide that by the input share of electricity, we get:

(0.633 + 0.18) / 0.18 = 4.52

And ETEngine shows:

Screenshot 2023-02-22 at 15 24 47
mabijkerk commented 1 year ago

Three questions that are still open and that should be tackled: