Populatiedynamica 3

Controlelussen

De draagkracht van een populatie is de maximale hoeveelheid van een soort dat een ecosysteem kan dragen met betrekking tot bijvoorbeeld nestgelegenheid, voedsel … Om de populatiegrootte te berekenen rekening houdend met de draagkracht van de omgeving, maken we gebruik van de logistische groeivergelijking:

\[\frac{dN}{dt} = r*N*(1-\frac{N}{K})\]

Met als oplossing:

\[N_t = \frac{K}{1 + (\frac{K}{N_0}-1)* e^{-r*t}}\]

met 𝑁𝑡 de grootte van de populatie op tijdstip t, 𝑁0 de grootte van de populatie op tijdstip 0, r is de groeisnelheid, t het tijdstip waarop je de grootte van de populatie wil berekenen en K de draagkracht van de omgeving.

Wanneer de populatie klein is ten opzichte van de draagkracht (N « K), is de groei bijna exponentieel (zoals de onbegrensde groei). Naarmate de populatiegrootte de draagkracht nadert (N ~ K), neemt de groei af. Uiteindelijk stabiliseert de populatie op het draagkrachtniveau.

Aangezien de populatie Afrikaanse olifanten in het Nationaal park Kruger sterk stijgt, willen we nagaan wanneer de populatie 99% van de draagkracht bereikt. Dit gaan we automatisch doen met behulp van een for-lus en een while-lus.

Opdracht

Schrijf een Python-script dat de volgende functionaliteiten bevat.

  1. Vraag de gebruiker om volgende waarden in te voeren:
  1. Implementeer een for-loop om voor de eerste 5 jaar de populatiegrootte te berekenen en print deze volgens deze opmaak:

    Tijdstip

    1

    Populatiegrootte

    46384

    Maak gebruik van deze formule om de populatiegrootte te berekenen: \(N_t = \frac{K}{1 + (\frac{K}{N_0}-1)* e^{-r*t}}\)

  2. Implementeer een for-loop om de populatiegrootte voor elke tijdstap te berekenen. Zorg ervoor dat de tijdswaarden oplopen van 0 tot t, in stappen van 5 jaar, waarbij t de tijd is opgegeven door de gebruiker. Bereken op welk tijdstip (in jaren) 99% van de draagkracht overschreden wordt. Als dit gebeurt, moet de herhalingsstructuur stoppen en verschijnt de boodschap:

    99% van de draagkracht werd bereikt

    Aantal jaren

    160

    Populatiegrootte

    49515

Voorbeeld

Invoer:

    >>>Geef een groeisnelheid in: 0.03946
    >>>Geef het startaantal van de populatie: 7806
    >>>Geef de draagkracht: 50 000
    >>>Geef de tijd (in jaren) waarvoor je het aantal individuen wil bepalen: 200

Uitvoer:

     Tijdstip
     1
     Populatiegrootte
     8069
     Tijdstip
     2
     Populatiegrootte
     8340
     Tijdstip
     3
     Populatiegrootte
     8617
     Tijdstip
     4
     Populatiegrootte
     8903
     Tijdstip
     5
     Populatiegrootte
     9195
     99% van de draagkracht werd bereikt
     Aantal jaren
     160
     Populatiegrootte
     49515