Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Forestry Routine Features #282

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

crollinson
Copy link
Contributor

Description

Two main changes to the forestry routines:

  1. New IANTH setting where 2 means f_vbh becomes the fraction area harvested rather than trying to achieve biomass harvest targets. (It's hard to set a biomass harvest target when you're not sure what the long-term productivity will be -- much easier to think about areas harvested.)
  2. Add code to allow harvest to occur below DBH threshold to better facilitate selective harvesting regimes like understory thins or timber improvement thins.

This also begins to reconcile differences in the implementation of the plantation code, following what @mpaiao had done. "Secondary" forest is now references plantations in most parts of the LU code, although I have not reviewed/modified plantation behavior while "primary" forest is just natural forest.

Note: There are more changes coming eventually, including updates to the plantation schemes and potential to have multiple management schemes operating at once. Plantation updates probably within the next 6 months, multiple management is a long ways off.

Collaborators

Most of what I did is operationally or conceptually consistent with what Marcos Longo (@mpaiao) did a long time ago that never got pulled into the mainline.

Motivation and Context

These changes are to facilitate work of an NSF-funded project focused on interactions between forest management & climate change. These changes should help make ED behavior more compatible with how US forest managers think about harvesting routines by adding more control.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Other (fix or feature that would cause existing functionality to change)
    NOTE: Headers for land use drivers will need to be updated to add 2 lines for the harvest rates below the DBH threshold. See example. Based on what I could find, LU driver templates are not currently in any of the ED folders nor test cases, but I can provide one if necessary.

Checklist:

  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.

Testing :

  • All new and existing tests passed.
    None of the routine ED tests include land use change or forest harvesting. However, here are two files showing change in AGB and stem density in a short test of different selective harvests that I ran.

HarvestDifferences_AGB.pdf
HarvestDifferences_Density.pdf

Code for above tests at Willow Creek with ED2INs & LU drivers associated with above can be found here: https://github.com/MortonArb-ForestEcology/MANDIFORE_modeling/tree/master/WCr_Test_UnderstoryThin

Nearly all of what's been added isn't actually implemented, but it helps when tracking comparisons
Gradually bringing in some ideas from Marcos to allow for more robust management schemes.  Based on Marcos's work; now do not distinguish betwen primary & secondary forest during management & shift some of the terminology to better specify plantation parameters.  Also, add new harvest probability to allow for understory thinning.  This should have similar function as Marcos's skid trails and collatoral damage idea, but also in a more targeted manner that mirrors some potential management strategies like a targeted understory thin to remove late-successional (maple) stems & promote oak regeneration.

(I've probably missed stuff and this won't compile, but it's a start)
Reset number of LU dimensions to 6 since we're not adding new types; fix references in harvest folder so that we continue to repurpose secondary forest for plantation and primary for 'natural' forest.
if we don't define the potential harvest area in this routine, harvest ends up geting rescaled.  This is clunky code, but was trying to make it consistent with the older, biomass-based harvest schemes.
@mpaiao
Copy link
Contributor

mpaiao commented Nov 18, 2019

@crollinson Just to give feedback on this merge. We discussed this merge at the ED2 workshop, and we will merge once the ED-2.2 merge is incorporated into the mainline.

@mdietze
Copy link
Contributor

mdietze commented Feb 8, 2020

Just wanted to follow up on this PR. @crollinson there's now a lot of conflicts after we pulled in @mpaiao ED2.2 release code. Wanted to check in to see when you think you'll get to those.

@mpaiao
Copy link
Contributor

mpaiao commented Feb 8, 2020

I started to look into and work on this merge, but I will be quite busy in the next two weeks. I don't anticipate this being a difficult merge — the conflicts look big, but it's more that the code was restructured (especially ed_params.f90) and the changes are in different locations. It will require some manual merge, though, and I will likely need help from @crollinson to make sure we don't miss anything in the process.

@crollinson
Copy link
Contributor Author

I'll try to do this Monday next week -- this week is not going to be a good week.

Comment on lines +294 to +298
!if (ianth_disturb == 2) then
survivorship = 1 - harvprob_g(ipft)
! else
! survivorship = 0.0
! end if
Copy link
Contributor

@mpaiao mpaiao Feb 27, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@crollinson I am going through the code merging but this part is a bit confusing to me, and I think this approach here may be saving too many trees. In my original implementation, harvprob is used to define the disturbance rate. In general, survivorship should reflect the survivorship in the immediate vicinity of disturbed area (in this case, where the tree was logged), which is why survivorship was set to zero. For the time being I kept your approach for the area-based option (ianth_disturb=2), but I am not sure how to reconcile this part with the original survivorship definition, especially with understory thinning.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The only idea I had so far is to create a new dist_type for thinned canopy. The upside is that it would be consistent with the ED idea that disturbances change the microenvironment (in the case of thinning, more in the water part than in the light). The one potential downside is that we would have more dist_types (tree felling, skid trails and roads, and artificially thinned canopy).

I don't see a problem to add a new dist_type if it is justified, but before I go ahead, I'd like to throw the idea and see what people think, or if anyone has other ideas.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants