openmodels / META-2021

The Model for Economic Tipping (point) Analysis
GNU General Public License v3.0
13 stars 10 forks source link

Add BHM main specification as alternative damage function? #15

Open pwaidelich opened 9 months ago

pwaidelich commented 9 months ago

The current country-specific damage function slopes are derived from Burke, Hsiang and Miguel (2015), but for some countries, the slopes have very different implications than the BHM main specification. For instance, the US has a baseline 1981-2000 temperature (T_country_1990) of 14C in META (i.e., above the BHM optimum), but the point estimates in data/BHMbetas.csv translate to GDPpc gains for the US even at +6C of warming above T_country_1990.

@jrising Would you support implementing the original BHM slopes as an alternative damage function specification in META's Mimi version? If yes, I would be happy to open a PR on this. At first glance, a new option for the tdamage argument in addConsumption(), which then populates beta1 and beta2 in Consumption.jl for all countries with the same BHM point estimates or distribution draw, seems most intuitive - but let me know if there is a better way to go about this.

sidietz79 commented 6 months ago

@pwaidelich did we ever get back to you about this issue? The new version of META that is forked from META-2021 implements the original BHM damage function parameters and we did this because we encountered similar issues. @jrising

jrising commented 6 months ago

As a stop-gap solution, I've made a new branch which merges in the changes related to using global BHM values. It's here: https://github.com/openmodels/META-2021/tree/bhmbase

@pwaidelich I think your solution that adds this as an alternative option is better, so that we can actually merge something in here without breaking the unit tests.

pwaidelich commented 6 months ago

Ok, thanks for the reply! I'll set up a clean branch with my suggested solution based on a new option for tdamage and a new parameter in Consumption.jl that determines which damage function is used to calculate consumption losses. I'll open a PR on this soon.