Alex-Fuster / network_coherence

WG network coherence
MIT License
3 stars 0 forks source link

Working out the LV simulations #3

Open DominiqueCaron opened 7 months ago

DominiqueCaron commented 7 months ago

@FrancisBanville I've continued working on the simulations.

Now the simulations work as follow:

  1. Simulate a binary network of interactions given S and C
  2. Fill the interaction strengths given the type of network (random, predator-prey, mutualistic or competition) the mean and sd of interaction strengths, and the correlation between aij and aji
  3. Complete the interaction matrix A by fixing intraspecific effects (aii) that should result in a stable equilibrium. See stability criterion.
  4. Simulate biomass at equilibrium (before perturbation)
  5. Calculate growth rates (r_i) that result in that equilibrium (Ax* = -r)
  6. Generate randomly delta_r from a normal distribution
  7. Calculate network coherence.

Some notes (things to think about or investigate):

  1. I defined network coherence as the correlation between the strength of interactions and the difference in environmental response to the perturbation across pairs of species.
  2. I defined the strength of interaction as the absolute value of the product of aij and aji (abs(aij*aji)). We get 0 for species that do not interact and a high number for species that interact very strongly
  3. I defined the difference in reponses as the absolute value of the difference in delta_r (abs(delta_ri-delta_rj)). This is similar to taking the differences in the tangent.
  4. Because of 1-3, we can't set NC in advance (maybe possible), but I tried it a bit and we can explore the NC space by simulating delta_r randomly.
  5. The simulations sometimes crash (especially for random and mutualistic networks). Probably at step 3 or 5 of the previous paragraph). We need to fix this!
  6. I tried repeating simulations, to see the relationship between NC to change in total biomass, sd in biomass change, and number of extinctions, and I found no relationships so far. This may indicate that either how I define NC is not appropriate, I made a mistake somewhere, the model is not well parametrized, or that NC is not relevant for these outcomes.