# Lotka–Volterra Interspecific Competition Simulator

RK4 simulation of two competing species with phase plane, isoclines, equilibrium, and automatic outcome classification.

> Canonical page: https://elysiatools.com/en/tools/lotka-volterra-competition

- **Category:** Health

- **Keywords:** lotka volterra, interspecific competition, competitive exclusion, population dynamics, phase plane, zero growth isocline, niche partitioning, coexistence equilibrium, ecology simulator, population ecology, competition model, rk4

## Overview

Simulate two competing species with the Lotka–Volterra interspecific competition model. Enter growth rates, carrying capacities, competition coefficients, and starting populations; RK4 integration produces N(t) time series, a phase-plane trajectory with zero-growth isoclines, the coexistence equilibrium when it exists, and automatic classification of the outcome (stable coexistence, competitive exclusion, or bistable priority effect).

## Inputs

- **Intrinsic growth rate r₁ (species 1)** (number): Per-capita growth rate of species 1 with no competition.
- **Intrinsic growth rate r₂ (species 2)** (number): Per-capita growth rate of species 2 with no competition.
- **Carrying capacity K₁ (species 1)** (number): Population species 1 reaches alone.
- **Carrying capacity K₂ (species 2)** (number): Population species 2 reaches alone.
- **Competition coefficient α₁₂ (effect of species 2 on 1)** (number): Competitive impact of one species-2 individual on species 1, in K₁ units. α₁₂ = 1 means individuals are interchangeable.
- **Competition coefficient α₂₁ (effect of species 1 on 2)** (number): Competitive impact of one species-1 individual on species 2, in K₂ units.
- **Initial population N₁(0)** (number): Starting population of species 1 (0 allowed to test invasion-free scenarios).
- **Initial population N₂(0)** (number): Starting population of species 2 (0 allowed).
- **Simulation duration (time units)** (number): How long to integrate — long enough for the system to settle on its attractor (exclusion can be slow near equilibria).

## When to use

- When you need to see whether two species coexist or one excludes the other from given r, K, and α values.
- When you want the phase plane, isoclines, and equilibrium point rather than only population curves.
- When you are checking invasion from low density or a species starting at zero.

## How it works

- Set r₁, r₂, K₁, K₂, α₁₂, α₂₁, N₁(0), N₂(0), and simulation duration tMax.
- The tool integrates dN₁/dt = r₁N₁(1−(N₁+α₁₂N₂)/K₁) and dN₂/dt = r₂N₂(1−(N₂+α₂₁N₁)/K₂) with RK4 over 6000 steps.
- It plots both N(t) series and the N₁–N₂ phase plane with zero-growth isoclines and the simulated trajectory.
- Outcome is classified from isocline geometry: stable coexistence, species-1 or species-2 exclusion, or bistable priority effect, plus N₁* and N₂* when they exist.

## Use cases

- Compare mild versus strong competition coefficients to illustrate niche partitioning versus competitive exclusion.
- Map isocline geometry onto the four classical outcomes for teaching population ecology.
- Test whether a rare invader can increase when the resident is at carrying capacity.

## Frequently asked questions

### What equations does the simulator solve?

The two-species Lotka–Volterra competition system: dN₁/dt = r₁N₁(1−(N₁+α₁₂N₂)/K₁) and dN₂/dt = r₂N₂(1−(N₂+α₂₁N₁)/K₂).

### How is the integration performed?

Fourth-order Runge–Kutta (RK4) with 6000 steps over the chosen tMax.

### What outcomes can it classify?

Stable coexistence (interspecific competition weaker than intraspecific on both sides), competitive exclusion of species 1 or 2, and bistable priority effect.

### Can a species start at population zero?

Yes. N₁(0) or N₂(0) may be 0 to test invasion-free or single-species cases.

### How is the coexistence equilibrium calculated?

N₁* = (K₁ − α₁₂K₂)/(1 − α₁₂α₂₁) and N₂* = (K₂ − α₂₁K₁)/(1 − α₁₂α₂₁) when the isoclines cross in the positive quadrant.

## Related tools

- [Lean Body Mass Calculator (Boer / Hume / James)](https://elysiatools.com/en/tools/lean-body-mass-calculator): Estimate your lean body mass (LBM) from sex, age, weight and height using three clinical formulas side by side, with derived body-fat percentage.
- [Extended BMR Calculator (Mifflin / Schofield Multi-Formula Comparison)](https://elysiatools.com/en/tools/basal-metabolic-rate-ext): Compare Mifflin-St Jeor, original and revised Harris-Benedict, Schofield (FAO/WHO/UNU), and Katch-McArdle BMR equations side by side with mean and spread in kcal/day. Not medical advice.
- [Cell Confluency Estimator (Microscopy Grid Method)](https://elysiatools.com/en/tools/confluency-estimator): Estimate adherent-cell confluency with the grid-count method: confluency% = occupied/total squares × 100 per field, with multi-field mean ± SD and optional time-to-target from the doubling time.
- [Free Water Clearance Calculator](https://elysiatools.com/en/tools/free-water-clearance): Calculate solute-free water clearance (C_H₂O) and electrolyte-free water clearance (eC_H₂O) to differentiate hypo-/hypernatremia. Classic: C_H₂O = V·(1 − U_osm/P_osm); positive = dilute urine excreting free water (diabetes insipidus, polydipsia, water-load recovery), negative = concentrated urine conserving free water (dehydration, SIADH). Electrolyte-free: eC_H₂O = V·(1 − (U_Na + U_K)/P_Na), which better predicts the direction of serum sodium change — a negative eC_H₂O means the urine is electrolyte-free-water-rich and tends to raise serum Na⁺, informing IV fluid choice. Optional Na/K inputs enable the electrolyte-free calculation. Derived from Rose, Shimizu 2002 (Nephron), and NephSIM. Point estimate; interpret with full clinical context. Not medical advice.
- [Mean Arterial Pressure (MAP)](https://elysiatools.com/en/tools/mean-arterial-pressure): Calculate MAP = DBP + (SBP − DBP)/3. Normal 70–100; ≥65 sepsis target; <65 hypoperfusion. Derived from Geddes 1984, SSC 2021, BTF 2017, StatPearls, LITFL. Not medical advice.
- [Mean Platelet Volume (MPV) Analyzer](https://elysiatools.com/en/tools/mean-platelet-volume-analyzer): Analyze Mean Platelet Volume (MPV) in fL, an index of platelet production kinetics. Reference range ≈ 7.5–11.5 fL (lab- and method-dependent). Low MPV (< 7.5 fL, small old platelets) indicates suppressed marrow production (aplastic anemia, chemotherapy/radiation, recent platelet transfusion, iron-deficiency regeneration, Wiskott-Aldrich). High MPV (> 11.5 fL, large young platelets) indicates peripheral destruction with compensatory turnover or macrothrombocytopenia (immune thrombocytopenia ITP, post-splenectomy, myeloproliferative neoplasms, severe sepsis in recovery, Bernard-Soulier / MYH9, megaloblastic anemia; elevated MPV after acute MI marks platelet activation and adverse prognosis). Optionally enter the platelet count to refine the differential: low platelets + high MPV → peripheral destruction; low + low → underproduction; high + low → reactive thrombocytosis; high + high → myeloproliferative neoplasm. Pre-analytical caveat: platelets swell in EDTA over ~2 h raising MPV, and values are method-dependent (impedance > optical > immuno) — compare within the same lab and analyzer. Derived from Bath 1996, Leader 2012, Vagdatli 2010, and MDCalc. Not medical advice.
- [Plaque Forming Units Calculator (PFU/mL)](https://elysiatools.com/en/tools/plaque-forming-unit): Compute PFU/mL titer from plaque counts, dilution factor, and plated volume, with multi-plate statistics and 30–300 counting-range warnings.
- [Pulmonary Vascular Resistance Calculator (PVR)](https://elysiatools.com/en/tools/pulmonary-vascular-resistance): Compute PVR = (mPAP − PCWP) / CO in Wood units and dyn·s/cm⁵. Normal < 3 Wood; elevated in pulmonary hypertension. Derived from Grossman 1991, Simonneau 2019, Humbert ESC/ERS 2022, StatPearls, LITFL. Not medical advice.

## Samples

- [Web Image Processing Python Samples](https://elysiatools.com/en/samples/web-image-processing-python): Web Python image processing examples using PIL/Pillow including reading, saving, resizing, and format conversion
- [Android Image Processing Java Samples](https://elysiatools.com/en/samples/android-image-processing-java): Android Java image processing examples including reading/saving images, scaling, and format conversion
- [Android Image Processing Kotlin Samples](https://elysiatools.com/en/samples/android-image-processing-kotlin): Android Kotlin image processing examples including reading/saving images, scaling, and format conversion
- [Web Image Processing Rust Samples](https://elysiatools.com/en/samples/web-image-processing-rust): Web Rust image processing examples including image read/save, scaling, and format conversion

## Related content

- [Population Ecology, Biodiversity, and Food Web Calculators](https://elysiatools.com/en/hubs/population-ecology-biodiversity-food-web-calculators): Model population growth, carrying capacity, species interactions, field estimates, biodiversity, and trophic energy transfer in one ecology workflow.
- [Barcode, QR Code, and Label Tools](https://elysiatools.com/en/hubs/barcode-utility): Compare barcode generation, QR code creation and decoding, UPC/EAN validation, WiFi QR sharing, and printable label tools in one hub.
- [Audio Encoding and Format Conversion Tools](https://elysiatools.com/en/hubs/audio-convert): Compare audio format conversion, bitrate changes, sample-rate conversion, codec swaps, and export tools in one hub for delivery and archive workflows.
- [Image Format Conversion and Animated Export Tools](https://elysiatools.com/en/hubs/image-convert): Compare image format converters for JPG, PNG, GIF, AVIF, WebP, TIFF, ICO, base64, and animation-friendly exports in one hub.
