-
Notifications
You must be signed in to change notification settings - Fork 5
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
Re-evaluate calculation of Rgroup relsize via getRGroupRelsize #366
Comments
_extra_growth() calculates "increment in size due to res_extra for each individual" in units [(g / plant) / (g / plant)] as:
where
The "contribution of each indiv to the group's size" is calculated by function getRGroupRelsize() as
where
The group's extra resources
where
Thus,
and in units
We solve for
and in units
which simplifies to
The current function getRGroupRelsize() calculates, however,
The division by number of plants was added to the code on Feb 22, 2019 with commit 068923d. Therefore, I agree with @kpalmqui's suggested solution which has getRGroupRelsize() calculate as before
Funnily, 1st time, the division by number of plants was added to the code on Feb 22, 2019 with commit 068923d.
This was from a previous version from Oct 22, 2015 commit deed157 which did
which again was changed from a previous version from Oct 21, 2015 commit 8fd0a76 which had
This in turn was changed on Oct 20, 2015 commit 5a043cc which had
which was the state when the code was first added to github on Dec 5, 2013 commit 4a2ec31. Funnily, 2nd time, there is a function |
@dschlaep thanks for the detailed summary of how this has been handled since 2013! A bit more backstory: You are right that originally the code divided Chandler replaced all occurrences of So despite changing It sounds like you are on board with updating to:
Perhaps I will open a new branch for this, unless you think I should just fold this into feature_space? This isn't impacting my runs at all because I am only using 1 species to represent each RGroup. |
@kpalmqui - I am fine both with a new branch or with just a commit directly to feature_space. |
@dschlaep as expected, this change resulted in a slight reduction in STEPPE biomass for RGroups where I turned on two species, presumably due to a reduction in extragrowth. This was the case with the default sagebrush parameters. It will be interesting to see if this has any impact with the Swiss grassland inputs. I do believe you looked at this before, but it didn't really matter? |
closed by 43f180f |
We track individual relsizes, species relsizes and rgroup relsizes.
individual relsize: between 0 and 1, where 1 represents a full-sized individual of the species.
species relsize: summed individual relsizes for all individuals belonging to the species, can exceed 1.
rgroup relsize: via getRGroupRelsize currently calculated as,
where getSpeciesRelsize
The only major place
getRGroupRelsize
is called within the code is withinRGroup_Update_GrpResProp
to calculategrp_res_prop
, which is then utilized in_extra_growth.
I am opening this issue because I am concerned this is not the desired calculation of Rgroup relsize. When there is only 1 species established per rgroup, species relsizes are equivalent to rgroup relsizes and we are good to go. However, when more than one species per rgroup is established, we are understimating rgroup relsize and therefore overestimating the relative contribution of each individual to Rgroup relsize (i.e.
grp_res_prop
). I do not understand why Rgroup relsize is calculated this way.@dschlaep what do you think? Should we potentially change the calculation of Rgroup relsize to:
The text was updated successfully, but these errors were encountered: