Getting started

  1. Open Chapter 15 from the navigation.
  2. Define your segments in the Segments table. For each segment set its passing type, length, grade, posted speed, demand volumes, vertical class, PHF, and heavy-vehicle %.
  3. Set the General Parameters that apply to the whole facility (lane width, shoulder width, access point density, and the passing-lane heavy-vehicle multiplier).
  4. Enable Horizontal curves on a segment to add curved subsegments with their design radius and superelevation.
  5. Press Calculate. Results appear in the Outputs table.
  6. Use Export as JSON to save your inputs and the JSON importer to reload them later.
Open Chapter 15

Inputs

Per segment

FieldMeaningUnit
Passing TypePassing Constrained, Passing Zone, or Passing Lane
LengthSegment lengthmi
GradeLongitudinal grade (signed)%
Posted SpeedPosted speed limitmph
Demand Vol.Demand flow rate, analysis directionveh/h
Opposing Vol.Demand flow rate, opposing directionveh/h
Vertical ClassVertical alignment class (1–5)
PHFPeak hour factor
% Heavy Veh.Percentage of heavy vehicles%

Horizontal-curve subsegments add Length (ft), Design Radius (ft), and Superelevation (%).

Facility-wide

FieldMeaningUnit
Lane WidthTravel lane widthft
Shoulder WidthShoulder widthft
Access Point DensityAccess points per mile/mi
Heavy Vehicles in Passing LaneMultiplier, used only when a Passing Lane segment is present%

Facility layout (2D & 3D)

The Facility Layout panel visualizes the whole facility as one connected road.

  • 2D — a flat segment-by-segment schematic strip (solid centerline = Passing Constrained, dashed = Passing Zone, widening = Passing Lane).
  • 3D — a connected ribbon where bends reflect horizontal curves, slope reflects grade, banking reflects superelevation, and the road widens for passing lanes. Drag to rotate, Alt-drag to pan, scroll / pinch to zoom.
  • Expand & Edit — turns the layout into an editable pane so you can enter and modify each segment directly there (in sync with the Segments table).

Outputs & Level of Service

After Calculate, each segment reports:

OutputMeaning
Free-flow Speed (mi/hr)Estimated free-flow speed (FFS)
Average Speed (mi/hr)Estimated average travel speed
Percent followers (%)Percent of vehicles following, analysis direction
Followers Density (followers/mi)Follower density — the LOS service measure
Segment LOSLevel of service A–F for the segment

The summary reports the Facility LOS and Facility Follower Density (length-weighted across segments). For two-lane highways, LOS is keyed to follower density per HCM 7th Edition Chapter 15 (lower is better, A → F); exact breakpoints depend on posted speed — see the HCM for the authoritative thresholds. LOS F means demand exceeds capacity.

Open source

Calculations run locally in a Rust compute core compiled to WebAssembly. The project is open source — issues and contributions are welcome.

This is an independent, personally built tool and is not affiliated with any organization or corporation.

View on GitHub