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

userguide: Weightjones uses maxcons, not consumption #38

Merged
merged 1 commit into from
Jun 13, 2024

Conversation

lentinj
Copy link
Collaborator

@lentinj lentinj commented Jun 11, 2024

@bthe Any thoughts on this? the C in the WeightJones documentation seems flat out wrong to me.

Instead of C, we actually use Fphi[i] * MaxCon[i]:

Wgrowth[i] = Fphi[i] * MaxCon[i] * tempC / (pow(numGrow[i].W, wgrowthPar[1])) -

These come from getFphi / getMaxConsumption:

grower->calcGrowth(area, Area, TimeInfo, ((StockPredator*)predator)->getFPhi(area),
((StockPredator*)predator)->getMaxConsumption(area));

...from fphi / maxcons:

/**
* \brief This function will return the feeding level of the predator on a given area
* \param area is the area that the prey consumption is being calculated on
* \return fphi, a DoubleVector containing the feeding level of the predator
*/
const DoubleVector& getFPhi(int area) const { return fphi[this->areaNum(area)]; };
/**
* \brief This function will return the maximum consumption by length group of the predator on a given area
* \param area is the area that the prey consumption is being calculated on
* \return maxconbylength, a DoubleVector containing the maximum consumption of the predator
*/
const DoubleVector& getMaxConsumption(int area) const { return maxcons[this->areaNum(area)]; };

From the calculation of max consumption:

double temperature = Area->getTemperature(area, TimeInfo->getTime());
tmp = exp(temperature * (consParam[1] - temperature * temperature * consParam[2]))
* consParam[0] * TimeInfo->getTimeStepLength() / TimeInfo->numSubSteps();
for (predl = 0; predl < LgrpDiv->numLengthGroups(); predl++)
maxcons[inarea][predl] = tmp * pow(LgrpDiv->meanLength(predl), consParam[3]);

Hopefully it's true, since it'll be easier to implement in gadget3 :)

@bthe
Copy link
Contributor

bthe commented Jun 11, 2024

Yes, that sort of makes sense to use the feeding level and max consumption, the total consumption is on the stock (at size l) level while the growth should be on the individual level (I guess). But I do have the feeling that the energy content of the prey should be included somewhere, most likely in the feeding level.

On a side note, @vbartolino any idea where the original article is? A quick search on google scholar didn't yield much.

@vbartolino
Copy link

vbartolino commented Jun 11, 2024

On a side note, @vbartolino any idea where the original article is? A quick search on google scholar didn't yield much.

this should be described in Jones_1978_cond_consumption.pdf

@lentinj
Copy link
Collaborator Author

lentinj commented Jun 11, 2024

the total consumption is on the stock (at size l) level while the growth should be on the individual level (I guess).

True, although you could work out average consumption of an individual, I was hoping to avoid doing so. And turns out it was worth digging into.

I do have the feeling that the energy content of the prey should be included somewhere, most likely in the feeding level.

The feeding level is in joules, not total biomass as it would be for a (total)fleet. Although I might be misunderstanding the question :)

@bthe
Copy link
Contributor

bthe commented Jun 11, 2024

The feeding level is in joules, not total biomass as it would be for a (total)fleet. Although I might be misunderstanding the question :)

Sorry, yes. Misread the equation ;)

@lentinj lentinj force-pushed the weightjones-docs branch from 66846ad to 91dc09b Compare June 13, 2024 16:16
@lentinj lentinj merged commit 76b931f into master Jun 13, 2024
6 checks passed
@lentinj lentinj deleted the weightjones-docs branch June 13, 2024 16:18
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