Giter Club home page Giter Club logo

Comments (10)

Kenhasteandersen avatar Kenhasteandersen commented on August 23, 2024

from mizer.

gustavdelius avatar gustavdelius commented on August 23, 2024

Hi Ken,

thanks for you comment and your suggestion for modelling size-based feeding on resources using the standard predation kernel. However the purpose of my current proposal is to model feeding that is explicitly not size-based, like feeding on plants or on carrion. So I do not want to use the predation kernel. Also my proposal is concerned with the challenge of setting up mizer in such a way that people can model all kinds of different dynamics for their resources. Our current interest is in investigating the effect of the landing obligation, which affects the influx of carrion. I believe Asta is interested in plants. Mizer should work for all these different situations.

Gustav

from mizer.

Kenhasteandersen avatar Kenhasteandersen commented on August 23, 2024

from mizer.

astaaudzi avatar astaaudzi commented on August 23, 2024

Hi Gustav,

apologies for taking so long to reply. I read through the description and it seems like a good compromise between different levels of complexity that detritus or carrion dynamics can introduce.

I have a few questions and comments:

  1. It is not clear to me whether size structured species can feed on a mix of unstructured and structured resources? This is probably the case in many real systems, but it adds an extra level of complexity (parameters needed to define preference for and assimilation efficiency of different resources). If a species can only feed on size structured+plankton or unstructured resource - where do we indicate that? Is there an extra parameter in the species_params file?

  2. Apologies, but it is still not clear to me how the feeding rate on the unstructured resource is calculated, or more specifically how mizer will calculate the feeding level? At the moment I can only see the parameter rho that defines mass specific encounter rate (similar to search rate). What are the units? But don't we need a mass specific maximum intake parameter for the intake on this resource to estimate the feeding level while feeding on the unstructured resource? Or is it assumed to be identical to the maximum intake rate (g/g/year) of any resource, which is h parameter in mizer?

  3. The key challenge in representing carrion and detritus dynamics is to get some idea about the external losses, i.e. decomposition by bacteria and organisms not included in the model. This will have a substantial effect on the model dynamics. The "external" parameter now defines the positive or negative influx from external sources. What are the units? Presumably we assume the rate of influx is then fixed, and does not change in response to e.g. abundance of the carrion/detritus (so no internal dynamics, which is a good idea).

Asta

from mizer.

gustavdelius avatar gustavdelius commented on August 23, 2024

Hi Asta, thank you for your comments.

  1. In the current proposal a species could feed on anything. If it should not feed on a particular resource, then the corresponding $\rho_{id}$ should be set to zero, if it should not feed on a particular species then the corresponding $\theta_{ij}$ should be set to zero and if it should not feed on plankton then a new species parameter interaction_p (perhaps someone can come up with a better name) should be set to zero. You spotted well that such a new parameter is needed. You also mention that we might like to have different assimilation efficiencies for different food sources. Currently mizer does not allow that, having a parameter $\alpha$ that does not depend on the prey species. Maybe that should be generalised, with one $\alpha$ for each prey species and for each resource?

  2. Currently it is indeed envisaged that there shall be only a single $h_i$ parameter specifying the total maximum intake rate of species $i$. So the encounter rates from all species, plankton and unstructured resources are added together before being used to calculate the feeding level with the standard formula involving $h$. Do you think that is too restrictive?

  3. The dynamics that should be chosen for detritus and carrion is still a matter of research. So the formalism is set up so that it can accommodate any dynamics.

You also ask about units of parameters. The units are always fixed by the equations in which the parameters appear. The encounter rate $E_i(w)$ has units of grams/year. Hence $h$ has units of grams^(1-n)/years and $\rho$ has units of $grams^(-n)/year$. One will always get such weird mass dimensions for parameters like $h$ or $\rho$ that are coefficients in allometric power laws. The units of the parameter for the external rate of change of the resource biomass are grams/year.

from mizer.

juliablanchard avatar juliablanchard commented on August 23, 2024

from mizer.

gustavdelius avatar gustavdelius commented on August 23, 2024

Hi Julia, thank you very much for your comments. I'll comment on them one-by-one.

  1. Like Ken, you argue for size-resolved resources. I see that that is more versatile than the unstructured resources I am proposing and that the feeding on unstructured resources could be seen as a special case of feeding on size-resolved resources where the feeding kernel is size-independent. This would mean that the unstructured resources are not be needed. However, modelling size-structured resources, especially if fed upon with feeding kernels that do not have constant predator/prey size ratio, is slow. So I think we really would like both in mizer: unstructured resources (for situations where that is good enough) and size-structured resources (like plankton but more of them).

  2. The reason why I do not extend the theta matrix to include the unstructured resources is that the information on which species feeds on which resource is included in the rho matrix. I don't want to include rho in the interaction matrix, because unlike the entries in the interaction matrix, the entries in rho are dimensionful (they are rates). Combining them into one matrix I think could be confusing.

  3. Having an alpha matrix that depends on prey species seems very sensible. It even seems to me that the conversion efficiency will depend more on the prey species than on the predator species, so it is a bit surprising that currently it depends only on predator species. What would be a convenient way for uses to specify the alpha matrix? Would it be reasonable to factorise it as alpha[i, j] = alpha_pred[i] * alpha_prey[j]?

  4. Yes, I was going to propose to give the official mizer code a website similar to the one for my fork. I was just waiting until it is a bit more polished. But given that you would like to contribute a calibration section, which would be extremely useful, it might be a good idea to make that website soon. I'll create a separate issue for that.

from mizer.

juliablanchard avatar juliablanchard commented on August 23, 2024

from mizer.

astaaudzi avatar astaaudzi commented on August 23, 2024

Hi Gustav,

I think that having several background spectra, both size structured and/or unstructured would definitely be useful and needed, especially in multi-species models. A parameter defining availability of these spectra to consumers is also required. How to setup up these parameters in the most efficient and clear way should be discussed. In my fork of mizer I have added two additional size structured background resources (which now has plankton, benthos and algal spectra) and introduced three additional parameters in the species parameter file, defining availability of these resources to consumers (avail_pp, avail_bb, avail_aa). As plankton and benthos resources have different minimum and maximum sizes this produces a natural ontogenetic diet transition from plankton to benthos and then to fish, if a species is a predator. For planktivores and herbivores the availability of benthos is set to 0 and for benthivores the availability of plankton is small, so they switch to benthic food when it fits into the predation kernel.

In this way the availability parameter could be added into the interaction matrix, because it is just a scalar. The rate with which the resource is consumed would then be determined by the standard gamma and h parameters. It seems to me that defining another rate parameter rho might be confusing and harder to justify. Is there a good reason why rate rho (encounter of unstructured resource) should be different from gamma? Or perhaps I misunderstood something?

I also agree that different food items have different assimilation rates, but this will produce a potentially huge number of additional parameters. Other ecosystem models (my experience here is only with Atlantis) have four different assimilation efficiencies for each species: animals, plants, labile detritus and refractory detritus. I suppose it could be up to the users to decide if they like to deal with many parameters :) If the setup of alpha matrix is straightforward and we still have the option to use one alpha in the species_params matrix, this could be useful.

Finally, since the post was asking for feedback about the detritus dynamics, I can mention that I thought about it quite a bit while writing a manual for the Atlantis model (the model was written by Beth Fulton and Bec Gorton, I only wrote the documentation). Detritus dynamics can get complicated (see chapter 10.7 in the manual part 1, which is available through https://research.csiro.au/atlantis/home/useful-references/ or search for the word detritus to see how it affects various processes). The key challenge is to ensure that availability of detritus to consumers is set as a very small fraction of the total pool. Otherwise consumers just eat detritus and species interactions disappear.

from mizer.

gustavdelius avatar gustavdelius commented on August 23, 2024

Hi Asta, I very much like what you write about the usefulness of multiple size-structured resource components. I have created a new issue #49 with the request to enhance mizer to allow that and copy your description there as a start of discussing how to best set it up in detail.

You ask why I gave a different name rho to the encounter rates for unstructured resource from the gamma used for size-structured resources. The reason is that gamma is only one factor in a complicated expression for the encounter rate, also containing the predation kernel. On the other hand rho just needs to be multiplied by the resource biomass to give the encounter rate. I felt that giving the same name to both would be confusing. People might think that similar numerical values for the rates gamma and rho might have similar meaning, which is not the case.

I have put the discussion of extending alpha to a matrix into a separate issue #50 to keep our discussions organised.

Thank you for the link to the Atlantis user guide. Very impressive. The fact that some people may want to write a rather detailed detritus model is the reason why in my proposal the dynamics of the unstructured resources is handled via user-defined functions, rather than being dictated by mizer.

from mizer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.