NGEET / fates

repository for the Functionally Assembled Terrestrial Ecosystem Simulator (FATES)
Other
100 stars 92 forks source link

Including cold stress/frost mortality #212

Closed jenniferholm closed 6 years ago

jenniferholm commented 7 years ago

Summary of Issue: Currently there is no type of cold-stress mortality function in FATES. As a result in global simulations tropical PFTs are growing and thriving in higher latitudes, which obviously should not occur. I'm beginning to bring in the cold-stress mortality based on the current version in ED2. This is based on Albani, M.; D. Medvigy; G. C. Hurtt; P. R. Moorcroft, 2006: The contributions of land-use change, CO2 fertilization, and climate variability to the Eastern US carbon sink. Glob. Change Biol., 12, 2370-2390, doi: 10.1111/j.1365-2486.2006.01254.x .

This is just a first pass to include some type of frost/cold stress mortality for global runs. I'm not concluding that this is the best cold stress algorithm and approach, and maybe different approaches might be worth testing.

Expected behavior and actual behavior: Better representation of PFT distributions.

Steps to reproduce the problem (should include create_newcase or create_test command along with any user_nl or xml changes): What is the changes ID of the code, and the machine you are using: Using Lawrencium.

have you modified the code? If so, it must be committed and available for testing: Not all inclusive list here, but changing anywhere mortality_rates is called. Including frost_mort which is a PFT specific parameter. Maybe this should eventually be included in the FATES parameter file, but for now frost_mort is set to 3.0 for all PFTs in ED2. So just hard coding this as 3.0 for now.

Screen output or output files showing the error message and context:

bet_fates_5pfts

ckoven commented 7 years ago

@jenniferholm great! did you happen to see this recent paper— http://onlinelibrary.wiley.com/doi/10.1002/2016GL068794/full their maps may be useful as a benchmark on this...

rosiealice commented 7 years ago

That's great news... About 8 years ago Colin Prentice gave me this figure of freezing tolerance of different tissues, and I never really implemented it. Not sure of its provenance, but if it was of interest I'm sure he'd be able to remind us.

freezing tolerance.pdf

Also, maybe talk with @rgknox (if you didn't already) about the upcoming code split before you do too many code mods...

Is 3.0 the mortality threshold in oC? It will likely need another scaler to specify what fraction of the cohort dies in a given timestep... (is that a feature of the ED2 algorithm?) Thanks for taking this on!

jenniferholm commented 7 years ago

@ckoven and @rosiealice - great, thanks for providing those documents, I will look into them.

I will also probably wait a little bit for the upcoming code split, like you mentioned Rosie, thats good advice. Just wanted to get this out there that I have at least started to change the code for adding the cold stress mortality, and started to look into this. I guess this doesn't really matter for NGEE-Tropics, but will help me for my global runs.

@rgknox - how should I handle git issues here if it is a code update that might not matter much for tropics, but be important for FATES in general?

rgknox commented 7 years ago

@jenniferholm : It is great that your bringing up non-tropical issues on this site. This repository is for all FATES development, so your keeping us well rounded!

Do you have a branch your currently working with? Ben and I are nailing down the last two change-sets before we split it could potentially happen over the next few days sometime. If you have a branch your working on just point me to it and I will make sure it "survives" when we split the code.

jenniferholm commented 7 years ago

Ok, sounds good about all types of FATES development. Nope, I don't have a branch I'm working on, so no need to look for another branch before doing the code split.

rosiealice commented 7 years ago

I concur, on the "non-discrimination against extra-tropical regions" policy for the FATES repo.

On 17 April 2017 at 15:15, Jennifer Holm notifications@github.com wrote:

Ok, sounds good about all types of FATES development. Nope, I don't have a branch I'm working on, so no need to look for another branch before doing the code split.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/NGEET/ed-clm/issues/212#issuecomment-294595017, or mute the thread https://github.com/notifications/unsubscribe-auth/AMWsQ5G3zgYBexMXR8k6vowjlpsGu9wRks5rw9ZagaJpZM4M9-uQ .

--

Dr Rosie A. Fisher

Staff Scientist Terrestrial Sciences Section Climate and Global Dynamics National Center for Atmospheric Research 1850 Table Mesa Drive Boulder, Colorado, 80305 USA. +1 303-497-1706

http://www.cgd.ucar.edu/staff/rfisher/

mdietze commented 7 years ago

@jenniferholm if you're borrowing physiological freezing tolerances from ED2, be aware that some (but not all) of the temperate PFTs are miscalibrated (dropping out at -20C in places where we find them in the field, such as Bartlett and Willow Creek), which can cause some funky results where certain PFTs drop out where they shouldn't, but others survive: https://github.com/EDmodel/ED2/blob/master/ED/src/init/ed_params.f90#L2367

I've wanted to fix these defaults for years, but got a thumbs down on doing so since it would change other peoples runs, so my lab's just been handling this through PEcAn rather than the defaults.

jenniferholm commented 7 years ago

Thanks @mdietze, this is also really helpful as I wasn't aware of this. I was just going to borrow the freezing tolerances from ED2, but this is good to know that some of the temperate ones are miscalibrated. I'll work on addressing this as well in the updates in FATES. I'm going to wait on this issue for just a little bit until the code splitting is finished, but then will start on it again.

jenniferholm commented 7 years ago

Hi all, Finally beginning to get back to this of putting in freezing tolerances, and at least beginning to map out a plan. First I was just hoping someone can confirm this ......

In the equation for determining the temperature dependent for freezing and ultimately mortality due to cold stress, I need to include a variable that is the mean daily temperature. Can somebody @rgknox confirm that "temp_in_C" is the best thing to use? I don't want to re-create the wheel and create a whole new variable if not needed. This seems the best to me.

real(r8) :: temp_in_C ! daily averaged temperature in celcius temp_in_C = bc_in%t_veg24_si - tfrz

rosiealice commented 7 years ago

I think that's the right one. CLM/ALM should handle and pass in these accumulated daily drivers.

rgknox commented 7 years ago

I think so too.

jenniferholm commented 7 years ago

Great, thanks!

rosiealice commented 7 years ago

Although having said that, Colin Prentice once got very excited about how an hourly driven model would know the actual minimum temperature, as opposed to the daily mean temperature they had to use for this in LPJ... (in principle, we could also make and pass in a new daily minimum temperature value, but that would need HLM-side changes).

On 4 October 2017 at 11:46, Jennifer Holm notifications@github.com wrote:

Great, thanks!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/NGEET/fates/issues/212#issuecomment-334235697, or mute the thread https://github.com/notifications/unsubscribe-auth/AMWsQ9kMcK2sc6PxI5WBnKBRs0OXvlttks5so8SRgaJpZM4M9-uQ .

--

Dr Rosie A. Fisher

Staff Scientist Terrestrial Sciences Section Climate and Global Dynamics National Center for Atmospheric Research 1850 Table Mesa Drive Boulder, Colorado, 80305 USA. +1 303-497-1706 <(303)%20497-1706>

http://www.cgd.ucar.edu/staff/rfisher/

rgknox commented 7 years ago

You can see where the variable is set at line 602 here: https://github.com/NGEET/fates-clm/blob/master/components/clm/src/utils/clmfates_interfaceMod.F90

The thing that is not so great, but perhaps acceptable for the time being, is that the site level vegetation temperature is using the value from the bare-ground patch...

mdietze commented 7 years ago

@rosiealice I was about to correct you about no model using hourly minimum vs daily mean temperature, thinking ED2 does the former, but was shocked to discover that it does the latter https://github.com/EDmodel/ED2/blob/0a9e3257062504c1613a967d415b24d02374b8be/ED/src/dynamics/mortality.f90#L82 which strikes me as just wrong since the data used to parameterize it comes from short-term tissue damage experiments.

@jenniferholm not to add unjustified complexity (since it's something I frequently rant against) but frost damage is not a monolithic thing -- different tissues have very different thermal tolerances and impacts of damage. Not that I'm saying you should do it, but I'd be really curious about what would happen in a scheme that had separate parameters for leaf, stem, and root damage, driven by leaf, stem, and soil temperatures respectively. E.g. I could imagine many events that would cause leaf scorch but not stem mortality. Likewise, there's some really interesting observational and experimental data on the impact of snow pack depth on fine root mortality, since there's a counterintuitive phenomena where climate warming leads to more freeze damage due to reduced snowpack insulation (see for example Pam Templar's experimental work at Hubbard Brook). There's also similar studies in the tundra of plants surviving in the snow pack overwinter but dying if there's a warm-up midwinter that causes a melt and refreeze that leaves tissue exposed. Then on the stem side, there's going to be a difference between true tissue damage and freeze embolism in the hydraulics scheme. And, to make life more interesting, tissue damage is not a constant but varies with developmental stage and acclimation. Not to leave any pool out, the (otherwise passive?) storage pool plays an active role in cold tolerance, with some (many?) plants mobilizing their starch reserves to sugar to change the freezing point, and then reverting it back to starch in the spring (see my 2014 nonstructural carb Annual Review). This has really interesting implications for the carbon isotope data for the storage pool (e.g. supposedly 'sort term' sugar pools being the same age as 'long term' starch pools)

rosiealice commented 7 years ago

You doth protest too much @mdietze. I didn't say 'no model' does that ;)

Some different tissue tolerances are in here. I still don't know if this is published.
freezing tolerance.pdf

Maybe one could explicitly start with one tissue (leaves?) and add in others as/when we can tolerate the extra complexity? Just a thought.

jenniferholm commented 7 years ago

@mdietze - I like these suggestions and additional tissue considerations! Especially the fine root mortality in snow pack. This could be really important for the arctic and tundra work. I'd like to consider these eventually, but probably will start in a simpler approach and just look at leaves at first. Mike, I also remember you mentioned that some of the temperate PFTs are miscalibrated in ED2, so I'll make sure to look into those.

@rosiealice - Thanks for providing that pdf, I see that you also included when this thread was first made. This will be good to use when bringing in different freezing tolerances.

Regarding the temperature - I seems like it might be best to update FATES and use daily minimum temperature, instead of the mean temperature. Especially if you say this better matches the parameterization. Do we have publications for this? Regarding hourly vs. daily, maybe it is just better to stick to daily for now.

Once I get working more on this, I'd love for you all to review it to make sure everything looks good and makes sense.

mdietze commented 7 years ago

@jenniferholm yep, the ED2 defaults for mid and late temperate hardwood (pfts 10 & 11) have a plant_min_temp that's too warm (-20C), especially for the late HW's which include species like beech that persist a good bit further north than this limit implies. https://github.com/EDmodel/ED2/blob/master/ED/src/init/ed_params.f90#L2347

If I were to start with one tissue it'd probably be stem or bud (which look pretty similar on the pdf @rosiealice provided), as leaf mortality = defoliation, which is unlikely to be lethal unless you're already stressed.

jkshuman commented 7 years ago

@rosiealice https://github.com/rosiealice - I am surprised to see that cold-deciduous needle-leaved trees are less tolerant than evergreen needle-leaved trees for buds and twigs/stem. Though cold-deciduous needle-leaved trees are notably absent on the leaf chart. Makes me curious about the resulting dynamics in Siberia.

On Wed, Oct 4, 2017 at 3:21 PM, Michael Dietze notifications@github.com wrote:

@jenniferholm https://github.com/jenniferholm yep, the ED2 defaults for mid and late temperate hardwood (pfts 10 & 11) have a plant_min_temp that's too warm (-20C), especially for the late HW's which include species like beech that persist a good bit further north than this limit implies. https://github.com/EDmodel/ED2/blob/master/ED/src/init/ed_params.f90#L2347

If I were to start with one tissue it'd probably be stem or bud (which look pretty similar on the pdf @rosiealice https://github.com/rosiealice provided), as leaf mortality = defoliation, which is unlikely to be lethal unless you're already stressed.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/NGEET/fates/issues/212#issuecomment-334293257, or mute the thread https://github.com/notifications/unsubscribe-auth/AVFDhromzY3OFxXKT26fYNid8_Q6wJhPks5so_bpgaJpZM4M9-uQ .

--

Dr. Jacquelyn Shuman

Terrestrial Sciences Section Climate and Global Dynamics National Center for Atmospheric Research 1850 Table Mesa Drive Boulder, Colorado, 80305 USA.

jkshuman@ucar.edu office: +1-303-497-1787

jenniferholm commented 7 years ago

Adding commit for bringing in freezing mortality. 1519a0db1477772f503d124caff6d1ffe73f1a22

I also labeled this mortality as "M8" since that was the next open number after logging mortality "M7". I thought about replacing the freezing mortality with the removed impact mortality "M4", but there are still some instances when M4 is used.

jenniferholm commented 6 years ago

@rosiealice - I'm taking a look at the freezing tolerances from Colin Prentice. Can you remind me what the x axis is on these figures? Because that is a really large range of freezing tolerance for some PFTs. Also do you think he has any raw data he could share?

rosiealice commented 6 years ago

Jennifer- I just found these data published here: http://www.academia.edu/download/46127672/Ecophysiological_and_bioclimatic_foundat20160601-12306-13clwjm.pdf So, that should help with explanations. Hopefully Sandy might be helpful with the raw data if we ask her nicely.

jenniferholm commented 6 years ago

Hi @rosiealice - thanks for including the paper, but the academia.edu link didn't work for me. Could you point me to the name of the article? Also I've been done with these commits for awhile now, but have just been delayed (and side-tracked) with submitting a pull request and adding the new updated parameter file. I need to do that this week. Thanks!

rosiealice commented 6 years ago

Oddly, it doesn't work for me either now, at least from here. The Wiley link is here, but I don't have access to that: http://onlinelibrary.wiley.com/doi/10.1111/j.1654-1103.2009.01144.x/full

rgknox commented 6 years ago

@jenniferholm , can we close this issue now?

jenniferholm commented 6 years ago

Yes, this issue can be closed!

On Mon, Feb 26, 2018 at 11:07 AM, Ryan Knox notifications@github.com wrote:

@jenniferholm https://github.com/jenniferholm , can we close this issue now?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/NGEET/fates/issues/212#issuecomment-368612911, or mute the thread https://github.com/notifications/unsubscribe-auth/AIVTmOKlxU9bDbh6pnP0MRKbRf-4FNd4ks5tYwDcgaJpZM4M9-uQ .

-- Jennifer Holm Research Scientist Climate and Ecosystems Sciences Division Lawrence Berkeley National Laboratory 510-495-8083