Growth obeys Liebig's Law of the Minimum: overall growth is capped by whichever resource is scarcest, not by the average of all resources. Three saturating response curves are combined by taking their minimum, f = min(flight, fCO2, fnutrient) × fgravity:
f_light = PPFD / (PPFD + K_L), K_L = 250
f_co2 = (C - 50) / (C - 50 + K_C), K_C = 500
f_nutrient = exp(-((EC - 2.0) / 1.1)^2) (osmotic-stress penalty away from EC 2.0 mS/cm)
f_gravity = 0.55 + 0.45 * (g / 1g) (capillary root-zone water/air separation degrades in microgravity)
Light and CO₂ follow Michaelis–Menten-style saturation curves used in real photosynthesis models — more of either helps less as you approach the plant's assimilation ceiling. Nutrient EC (electrical conductivity of the feed solution) has a true optimum: too dilute starves the crop, too concentrated causes osmotic stress and root damage, so its response is a Gaussian peaking at 2.0 mS/cm. Gravity enters because NASA's Veggie/APH hardware has to actively wick water and separate air bubbles from the root zone in microgravity — below 1g, delivery efficiency degrades toward a 55% floor even with fully engineered capillary mats.
Biomass then grows logistically at that combined rate, dB/dt = r·f·B·(1 − B/B_max), so growth slows near the canopy's carrying capacity just as it does in a real hydroponic tray. The "Limiting factor" readout names whichever of light, CO₂, nutrient or gravity currently has the lowest f — the one variable to change if you want more yield.