Skip to Content
GuidesDesigningGenerate a Walker constellation

Generate a Walker constellation

What you will accomplish

A constellation built to parameters you chose, with the phasing factor selected by measurement rather than left at its default.

Prerequisites

Steps

Generate

orbitforge constellation walker \ --name ph1 --planes 6 --sats-per-plane 10 \ --altitude-km 550 --inclination-deg 53 --phasing 1 \ --output ph1.json
Generated 'ph1' with 60 satellites (6 planes x 10 per plane) -> ph1.json

Measure the phasing you chose

--phasing defaults to 1 and it is rarely the only sensible value. Generate an alternative and compare on coverage:

orbitforge constellation walker \ --name ph3 --planes 6 --sats-per-plane 10 \ --altitude-km 550 --inclination-deg 53 --phasing 3 \ --output ph3.json for f in ph1 ph3; do orbitforge coverage --constellation $f.json \ --duration-hours 6 --step-seconds 120 \ --grid-deg 10 --min-elevation-deg 10 done
--- phasing F=1 --- mean coverage 70.1% (area-weighted), min 0.0%, fully covered 10.8%, any 68.4% max fold 3, max coverage gap 5760 s --- phasing F=3 --- mean coverage 72.7% (area-weighted), min 0.0%, fully covered 12.3%, any 68.4% max fold 3, max coverage gap 5880 s

Screen the geometry

orbitforge conjunction screen \ --constellation ph3.json \ --duration-hours 24 --threshold-km 20
Screened 60 objects (all pairs) over 24.0 h: 0 events under 20 km.

Reading the phasing comparison

Same 60 satellites, same altitude, same inclination. Only the phasing factor differs.

MetricF = 1F = 3Better
Mean coverage70.1 percent72.7 percentF = 3
Fully covered points10.8 percent12.3 percentF = 3
Max coverage gap5760 s5880 sF = 1, marginally
Max fold33Equal

F = 3 buys 2.6 points of mean coverage and 1.5 points more continuously covered area, and costs 120 seconds on the worst gap.

Which of those matters depends entirely on the requirement. A service sized by average availability prefers F = 3. A service with a hard maximum-outage requirement may prefer F = 1, because the worst gap is the binding number and the mean is irrelevant to it.

The default of 1 is a starting point, not a recommendation. Two minutes of comparison turns it into a decision.

Both configurations show min 0.0%, because at 53 degrees inclination neither reaches the poles. Phasing redistributes coverage between the latitudes the design can reach; it cannot extend that reach.

What screening does and does not tell you

Zero events at a 20 km threshold is the expected result for a well-phased Walker pattern, and both configurations produced it. Screening did not distinguish them here.

That is worth stating plainly rather than implying screening is a phasing test. It is a safety check: it confirms your chosen phasing has not clustered satellites at plane crossings. A clean result means nothing is wrong, not that the choice is optimal.

Run it whenever you change the phasing factor, and use coverage to choose between options that both screen clean.

Choosing the other parameters

ParameterQuestion it answersWatch for
--inclination-degWhich latitudes can be covered at allA hard ceiling; nothing above it is ever covered
--altitude-kmFootprint size against path loss and revisitHigher needs fewer satellites and costs link margin
--planesLongitude distributionMore planes cost more launches
--sats-per-planeAlong-track gap within a planeMore satellites shorten the in-plane gap
--phasingInter-plane staggerMeasure it, as above

Next steps

Question? Give us feedbackDocuments Varaha Constellation Designer main (pre-release)
Last updated on