# Photonic Insecticides — machine-readable model outputs
Generated at build time from the site's own source. Do not hand-edit.
Generated: 2026-07-30
## The intuition, in six lines
If an automated reader takes away nothing else, take away these. Every number is
computed below; this is just the shape of the problem.
1. THE ENERGY IS FREE. Clearing a hectare for a whole season takes 0.43 kWh —
about 7 cents of electricity. It is three orders of magnitude away from
being a line item. Stop thinking about batteries and charging.
2. TIME IS THE CONSTRAINT, NOT ENERGY. That same season is ~8.5 flight-hours per
hectare. That is what sets fleet size, labour and battery replacement — a 10 ha
grower needs ~85 flight-hours a season, a 100 ha grower needs a fleet.
3. ALMOST ALL THE COST IS CAPITAL, NOT CONSUMPTION. Battery wear is 4.5% of the
cost per hectare; the airframe, maintenance and optics are the rest. Arguing about
flight efficiency barely moves the answer. Arguing about hardware price moves it a lot.
4. IT IS THE SAME ORDER OF MAGNITUDE AS SPRAYING, NOT OBVIOUSLY BELOW IT. Scouting +
shooting is ~€45/ha·season on a consumer 48 MP sensor, against ~€54 for a
chemical programme. The honest claim is "cost-competitive and chemical-free", NOT
"ten times cheaper". Anyone quoting a dramatic cost advantage is misreading this.
5. SCALE FAVOURS IT. Beetles invade from the field edge, so their number follows the
PERIMETER (∝ √area) while the denominator is the area — pests/ha and €/ha both fall
as 1/√area. Ten times the field is about a third the cost per hectare
(€31.19/ha·season at 1 ha → €9.87 at 10 ha, shooting only).
6. WHAT DECIDES IT IS NOT PHYSICS. The flight physics is validated against real
telemetry to ~9% and cross-checked against an independent calculator. The open
questions are airframe lifetime, maintenance rate, and what FRACTION of the
population an overhead camera catches per pass. That is where the answer lives —
not in aerodynamics, and not in the energy budget.
## Why this file exists
photonicinsecticides.com is a client-rendered React application. An HTTP fetch that
does not execute JavaScript receives an empty `
` and no text at all.
Every model on the page is also interactive, so even a JavaScript-capable agent sees
only whatever the default slider positions produce.
This file is the same models, evaluated over a grid, so an automated reader can quote
real numbers instead of guessing. It is produced by importing the actual TypeScript
modules (`src/lib/hopEnergyModel.ts`, `src/lib/flightCostModel.ts`, `src/lib/scanModel.ts`)
— the published
figures therefore cannot drift from the code that generates the page.
## Reference aircraft — DJI Mini class, sub-250 g
| parameter | value | note |
|---|---|---|
| all-up mass | 250 g | sub-250 g regulatory class |
| hover power | 40 W | measured electrical draw in hover |
| battery | 18 Wh | a real DJI Mini pack |
| acceleration | 0.707 g | the energy-optimal value, see below |
| dwell per beetle | 0.3 s | time held stationary to fire |
| power law | P ∝ T^1.5 | actuator-disk momentum theory |
## The model, in full
```
tilt θ = atan(a/g)
thrust ratio |T|/|T_hover| = √(1 + (a/g)²) = 1/cos θ (mass-independent)
power P(a) = P_hover × (thrust ratio)^k, k = 1.5
hop time t = 2√(d/a) (accelerate half, brake half, no drag)
hop energy E = P × t (exact: |a| equal in both halves ⇒ P constant)
infestation beetles invade from the edge. Each 1 m slice of perimeter carries a
depth line running D metres into the crop, with x beetles evenly on it.
Beetle k sits at depth (k + ½)·D/x.
route serpentine: down a line, 1 m across, back up the next. Exactly
(x−1) hops of D/x plus 1 hop of 1 m per slice = one hop per beetle.
band area S² − (S−2D)² (S = field side; stops growing once D ≥ S/2)
```
Energy per hop is minimised at a/g = 1/√(2k−1) = 0.707 g for k = 1.5
(1.000 g under the naive P ∝ T law). Flying flat-out is NOT cheapest:
power rises as (1+(a/g)²)^(k/2) while hop time falls only as 1/√a.
## Cost per hectare — infestation depth × density
Reference aircraft above, 1 ha square field (100 m a side, 400 m perimeter).
€/ha·season = €/ha × 30 sweeps. Chemical baseline for comparison: €54/ha·season.
Flight-hour rate: €3.66/h fully allocated (see the flight-hour model below).
| depth D (m) | beetles/slice x | beetles/ha | band % of field | mean hop (m) | flight min/ha | Wh/ha | % of 18 Wh pack | €/ha·season (full) | €/ha·season (battery only) |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 1 | 400 | 4 | 1.00 | 7.1 | 5.91 | 33 | 12.91 | 0.57 |
| 1 | 2 | 800 | 4 | 0.75 | 12.6 | 10.48 | 58 | 23.11 | 1.01 |
| 1 | 5 | 2000 | 4 | 0.36 | 24.1 | 19.42 | 108 | 44.08 | 1.87 |
| 1 | 10 | 4000 | 4 | 0.19 | 39.5 | 30.93 | 172 | 72.14 | 2.98 |
| 2 | 1 | 400 | 8 | 1.00 | 7.1 | 5.91 | 33 | 12.91 | 0.57 |
| 2 | 2 | 800 | 8 | 1.00 | 14.1 | 11.82 | 66 | 25.82 | 1.14 |
| 2 | 5 | 2000 | 8 | 0.52 | 27.9 | 22.81 | 127 | 50.94 | 2.20 |
| 2 | 10 | 4000 | 8 | 0.28 | 45.4 | 36.32 | 202 | 83.05 | 3.50 |
| 5 | 1 | 400 | 19 | 1.00 | 7.1 | 5.91 | 33 | 12.91 | 0.57 |
| 5 | 2 | 800 | 19 | 1.75 | 17.1 | 14.47 | 80 | 31.19 | 1.40 |
| 5 | 5 | 2000 | 19 | 1.00 | 35.3 | 29.54 | 164 | 64.54 | 2.85 |
| 5 | 10 | 4000 | 19 | 0.55 | 57.3 | 47.02 | 261 | 104.69 | 4.53 |
| 10 | 1 | 400 | 36 | 1.00 | 7.1 | 5.91 | 33 | 12.91 | 0.57 |
| 10 | 2 | 800 | 36 | 3.00 | 20.4 | 17.47 | 97 | 37.26 | 1.68 |
| 10 | 5 | 2000 | 36 | 1.80 | 43.7 | 37.12 | 206 | 79.87 | 3.58 |
| 10 | 10 | 4000 | 36 | 1.00 | 70.6 | 59.08 | 328 | 129.09 | 5.70 |
| 20 | 1 | 400 | 64 | 1.00 | 7.1 | 5.91 | 33 | 12.91 | 0.57 |
| 20 | 2 | 800 | 64 | 5.50 | 25.1 | 21.71 | 121 | 45.83 | 2.09 |
| 20 | 5 | 2000 | 64 | 3.40 | 55.6 | 47.84 | 266 | 101.56 | 4.61 |
| 20 | 10 | 4000 | 64 | 1.90 | 89.5 | 76.13 | 423 | 163.58 | 7.34 |
## Field-size scaling
Default infestation (D = 5 m, x = 2 per slice). A perimeter
infestation scales in the grower's favour: beetle count follows the perimeter (∝ √area)
while the denominator is the area, so pests/ha and €/ha both fall as 1/√area.
| field (ha) | side (m) | perimeter (m) | beetles | beetles/ha | flight min/ha | Wh/ha | €/ha·season (full) | €/ha·season (battery only) |
|---|---|---|---|---|---|---|---|---|
| 0.5 | 71 | 283 | 566 | 1132 | 12.1 | 20.48 | 44.14 | 1.97 |
| 1 | 100 | 400 | 800 | 800 | 17.1 | 14.47 | 31.19 | 1.40 |
| 2 | 141 | 566 | 1,132 | 566 | 24.2 | 10.24 | 22.07 | 0.99 |
| 5 | 224 | 894 | 1,788 | 358 | 38.1 | 6.47 | 13.94 | 0.62 |
| 10 | 316 | 1265 | 2,530 | 253 | 54.0 | 4.58 | 9.87 | 0.44 |
| 25 | 500 | 2000 | 4,000 | 160 | 85.3 | 2.89 | 6.24 | 0.28 |
## Scouting — finding the beetles, as a function of camera resolution
Shooting is only half the job: something has to photograph the field first. A scout
hops photo-tile to photo-tile on a serpentine grid under the same kinematics
(t_hop = 2√(tile side / a)), so scouting cost is set by how much ground one photo
covers — which is set by the sensor.
Ground sampling distance for a square tile is GSD = √(area_m² / megapixels) in mm/px.
A Colorado potato beetle is ~6–11 mm and must span several pixels to be detected, so
the requirement is GSD ≤ 1 mm/px. Setting GSD = 1 gives a clean result:
```
max tile area (m²) = sensor megapixels (at 1 mm/px)
```
So resolution buys covered area linearly, and scouting cost falls as 1/MP. Note also
that scouting €/ha is INDEPENDENT of field size and of pest pressure — the scout
photographs every tile regardless of how many beetles are in it.
Scout rate: €3.06/flight-hour (the shared model's "ordinary" rate — camera
payload, no laser allocation). Acceleration 5 m/s², capture 0.2 s per tile.
IMPORTANT: the rate above is held FIXED across the sweep, so this table isolates the
geometry — it does NOT price the sensor. A bigger sensor is also more capital. Swapping
the airframe capital line for the real rig cost over the same 1,500 flight-hour life:
| rig | sensor | rig cost | scout €/h | €/ha·season | table above says |
|---|---|---|---|---|---|
| DJI Mini 5 Pro | 50 MP | €800 | 2.39 | 10.26 | 13.13 |
| DJI Mavic 4 Pro | 100 MP | €2,300 | 3.39 | 8.55 | 7.71 |
| Phase One iXM-100 (survey) | 100 MP | €65,000 | 45.19 | 114.01 | 7.71 |
So the "more megapixels is cheaper" conclusion holds for CONSUMER rigs (roughly €800
to €2,300) and breaks completely for survey-grade optics: a €65,000 body costs €43/h in
capital alone and pushes scouting to ~€114/ha·season, above the €54 chemical baseline
by itself. Do not read the 100 MP row as applying to a Phase One.
| sensor (MP) | max tile (m²) @1mm/px | tile side (m) | photos/ha | hop (s) | scan flight h/ha | €/ha·scan | €/ha·season | wall-clock h, 10 ha ÷ 5 drones |
|---|---|---|---|---|---|---|---|---|
| 12 | 12 | 3.46 | 833 | 1.66 | 0.4316 | 1.32 | 39.57 | 0.9 |
| 20 | 20 | 4.47 | 500 | 1.89 | 0.2905 | 0.89 | 26.63 | 0.6 |
| 48 | 48 | 6.93 | 208 | 2.35 | 0.1478 | 0.45 | 13.55 | 0.3 |
| 50 | 50 | 7.07 | 200 | 2.38 | 0.1432 | 0.44 | 13.13 | 0.3 |
| 100 | 100 | 10.00 | 100 | 2.83 | 0.0841 | 0.26 | 7.71 | 0.2 |
| 108 | 108 | 10.39 | 93 | 2.88 | 0.0793 | 0.24 | 7.27 | 0.2 |
| 200 | 200 | 14.14 | 50 | 3.36 | 0.0495 | 0.15 | 4.54 | 0.1 |
At the site's default tile of 25 m², the same sensors give:
| sensor (MP) | GSD at 25 m² tile (mm/px) | detects a beetle (≤ 1 mm/px)? |
|---|---|---|
| 12 | 1.443 | NO — tile too large for this sensor |
| 20 | 1.118 | NO — tile too large for this sensor |
| 48 | 0.722 | yes |
| 50 | 0.707 | yes |
| 100 | 0.500 | yes |
| 108 | 0.481 | yes |
| 200 | 0.354 | yes |
## Scouting + shooting together
The two phases add. Using the default sensor and the reference infestation
(D = 5 m, x = 2 per slice, 1 ha):
| phase | €/ha·scan or sweep | €/ha·season |
|---|---|---|
| scouting (48 MP at 1 mm/px) | 0.45 | 13.55 |
| shooting (perimeter band model above) | 1.04 | 31.19 |
| **total** | **1.49** | **44.74** |
| chemical spray programme, for comparison | — | 54 |
## Scouting — what the model does NOT capture
The scouting arithmetic (tiles, hop kinematics, GSD) is exact, but these are real
gaps between it and a field operation. Do not present scouting cost as settled:
- DETECTION IS ASSUMED PERFECT. Every beetle in every tile is found: no misses and no
false positives. Overhead imaging can only see the UPPER canopy — but that is where
the target actually is. Colorado potato beetle larvae and adults feed on the upper
foliage (it is precisely why soil-applied nematodes struggle to reach them), and the
project's own field footage tracks larvae from above. So occlusion is a much smaller
penalty than "insects hide under leaves" would suggest — it is NOT the dominant
risk. What remains genuinely unmeasured is the DETECTION FRACTION: the share of the
population visible from above on a given pass. Egg masses are laid on leaf undersides
and are invisible to this method; they are also not laser targets, which is part of
why the model assumes repeated sweeps rather than a single pass.
- SENSOR CAPITAL is not swept with resolution (see the table above for the correction).
- STOP-AND-SHOOT vs CONTINUOUS FLIGHT. The scout is modelled as hopping tile to tile
and pausing to expose, giving an effective ground speed of only ~2.7 m/s at the
default sensor. Real survey drones fly a continuous lawnmower path at 5–15 m/s, so
this is conservative on time and cost. Note the site elsewhere cites event-camera
work claiming blur-free capture up to 50 km/h — that would make scouting far cheaper
than this table, and the two framings have not been reconciled.
- ALTITUDE AND OPTICS. Reaching 1 mm/px needs a low altitude and a specific lens; the
model assumes a footprint without checking that it is flyable over a real canopy.
- IMAGE PROCESSING is free here. At the default sensor a season is ~6,200 images per
hectare to run detection over.
- The scout rate is the 2.2 kg reference drone's ordinary rate, not a sub-250 g scout.
## Flight-hour cost model (the rate the €/ha figures multiply)
This prices a 2.2 kg reference drone, not the sub-250 g machine above, so the €/ha
figures are indicative rather than exact for a DJI Mini. Deliberately three separate
outputs — capital allocation is an accounting spread, not physical per-hour wear.
| component | €/flight-hour | share |
|---|---|---|
| battery cycle depreciation | 0.813 | 22.2% |
| charging electricity | 0.042 | 1.2% |
| flight-dependent maintenance | 1.000 | 27.4% |
| airframe capital allocation | 1.200 | 32.8% |
| shared charger allocation | 0.000 | 0.0% |
| optical/laser payload allocation | 0.600 | 16.4% |
| **marginal (what flying consumes)** | **1.86** | **50.8%** |
| **ordinary (+ airframe, charger)** | **3.06** | |
| **fully allocated (+ laser)** | **3.66** | 100% |
Only 23% of the rate is energy. The rest is assumed hardware prices and
lifetimes, which is where the real uncertainty in any €/ha figure sits.
## Validation status — please quote this accurately
VALIDATED:
- Flight-power physics checked against a public 209-flight DJI Matrice 100 telemetry
dataset (Nature Scientific Data 8, 155 (2021)). 9.4% flight-level mean absolute
error across 53 qualifying cruise flights, mean bias −7.1%. Nothing was fitted.
- Cross-checked against eCalc, an independent industry calculator. On the same M100
hover point this simulator is −11.0% against the measurement while eCalc is +20 to
+28%, so the simulator is the closer of the two. Constants were deliberately NOT
recalibrated; see GROUND_TRUTH.md §5.
NOT VALIDATED — do not present these as established:
- Mission route time, field logistics, detection rate, recharge logistics.
- Whether the kill energy actually kills a beetle. The thermal model is
first-principles (1 mm³ of water, m·c·ΔT, flat 25% absorption, no charring credit,
no heat-loss term), not a measured lethality result.
- The hardware unit costs and lifetimes that dominate the €/ha figures above.
- Eye safety in the field, and payload mass at the stated optical power.
The simplified model above additionally assumes a clean serpentine route and ignores
aerodynamic drag (justified: at ~1 m hops peak speed is ~3 m/s and drag is well under
1% of hover power), translational lift, wind, climb/descent, battery voltage sag, and
the time to find the next beetle. It is a floor on travel energy, not a mission plan.
## Source
- Simulation + models: https://github.com/nickreyntjens/laser_drone_sim
- Website + these models: https://github.com/nickreyntjens/photonicinsecticides-website
- Ground-truth write-up: https://github.com/nickreyntjens/laser_drone_sim/blob/main/GROUND_TRUTH.md
- Peer-reviewed: SPIE Photonics Europe 2026, 'A photonics-based humane method for the
elimination of Colorado potato beetle'.