UNDERSTAND WHAT’S BEHIND THE MOVEMENT

Better flow.
Grounded in the details.

Explore the models, methods and tools behind traffic, pedestrian and transit studies. Pravaha is being developed as a competitor to PTV Vissim / Viswalk and other simulation platforms; evaluate the supported scope and evidence for each workflow.

Find the capabilities you need
PRAVAHA AI / FROM MODEL TO MEASUREMENT01 → 02 → 03
01

Define the space.

Geometry, demand and destinations.

02

Simulate the movement.

Individual behaviour. Shared spaces.

03

Make the results clear.

Recorded playback, analysis and reports.

01 / PEDESTRIAN ENGINE

Individual behaviour.
Collective movement.

Each pedestrian has a speed, a destination and a response to the people and spaces around them.

MODEL

A Social Force
foundation.

Velocity-dependent interactions, personal space and contact forces guide each step. Front-weighted repulsion reflects how pedestrians respond to what lies ahead.

Elliptical interaction · Contact forces
PEOPLE

Different people.
Different journeys.

Ten pedestrian classes, sampled walking speeds and social groups represent a varied crowd, including slower walkers and people with reduced mobility.

Speed distributions · Group cohesion
ROUTING

Connected across
every level.

Route people through stairs, escalators, lifts and service points. Congestion-aware portal costs influence the connections they choose.

Multi-level routes · Queue behaviour
Explore the full engine specification

Pedestrian enginecore.forces, core.navigation, core.spatial_grid

Social Force Model

Elliptical, velocity-dependent repulsion (Johansson 2007) plus granular body and sliding-friction contact forces. Validated against Weidmann and bottleneck-egress literature.

Ten pedestrian classes

Adult, elderly, child, PRM, wheelchair, dismounted cyclist, commuter, shopper, staff and security — each with India-calibrated speed distributions, radius and mass. Set a mix per source.

Social groups

Couples and families spawn together, walk at the slowest member's pace and stay close under a bounded cohesion force. Solo-only behaviour is bit-identical when unset.

Anisotropic repulsion

Helbing–Molnár–Farkas–Vicsek front-weighting (λ). λ ≈ 0.2 removes the low-density push-through artifact and is the audited default for quoted figures.

Panic preset

panic_params() reproduces Helbing–Farkas–Vicsek 2000 for emergency egress studies. Never a silent default — you opt in.

Counterflow and lane formation

Balanced opposing streams self-organise into lanes (order parameter ≈ 0.9) — the qualitative signature of real bidirectional flow.

Overtaking and following

Emergent from speed heterogeneity rather than scripted; a mixed crowd repairs the shape of the speed–density curve.

Sub-stepping for crush regimes

Simulator(substeps=N) integrates the stiff contact springs finely for LOS E/F studies without changing external timing.

Fast neighbour search

SciPy cKDTree for cutoff neighbours and sparse Dijkstra for route graphs and floor fields keep the hot path out of Python loops.

Deterministic seeds

Every run reproduces exactly from --seed; a figure that does not reproduce is drift, not noise.

Facilities and levelsPortals, route graph, floor fields

Multi-level projects

Concourses, platforms, footbridges and underpasses as separate levels. A cross-level Dijkstra route graph plus per-(level, destination) floor fields route each agent to the cheapest stair, escalator or lift.

Stairs, escalators and lifts

Capacitated portals with speed factors; an escalator belt boost makes escalators faster than equivalent stairs. Agent ids are preserved across transfers.

Congestion-aware choice

Portal traversal time rises with occupancy (BPR-like), so crowds spread across parallel stairs the way people actually do.

Everything walkable

Sidewalks, corridors, crosswalks, ramps, waiting areas, ticket gates, platforms and building interiors — all drawn as walkable and obstacle polygons.

Waiting zones and waypoints

Hold pedestrians at a platform edge until a train, or thread them through intermediate points on the way to a weighted destination.

Origin–destination routing

Sources carry demand profiles (steady, pulsed, time-dependent) and weighted destinations, on any level.

Public transportcore.transit — TransitLine

Timetabled arrivals

Trains and buses arrive on a schedule, open doors for a dwell, then leave. Metro, rail, bus terminal and BRT platforms all model the same way.

Alighting

A batch of passengers spawns at the door positions and routes to the exits, reusing the demand-pulse machinery.

Boarding and left-behind

Waiting passengers board up to the vehicle's capacity; anyone who does not fit waits for the next arrival and is counted.

Platform crowding between trains

Crowding, boarding and alighting times and left-behind counts come out in the analysis and the reports.

Queues and service pointscore.queueing — ServicePoint

Finite parallel servers

Ticket counters, gates and security checks as N servers with a service-time distribution — normal (μ, σ) or deterministic.

Queue discipline

Shortest-queue gate selection and onward routing after service; queues form and wait times grow with demand exactly as they should.

Queue analytics

Queue length over time, mean and 95th-percentile wait, and throughput per service point.

Security screening

Screening lines with servers, disciplines and onward routing, for airports, stadiums and secure lobbies.

02 / MIXED TRAFFIC

One junction.
Every connection.

Explore the full Uppal Junction context: four-arm traffic, signalised pedestrian crossings, a raised foot-over bridge and the metro concourse and platform above it.

4 levelsStreet, FOB, concourse, platform
Mixed trafficCars, bikes, autos, buses

The composite playback keeps the junction, station access and vertical connections in one reviewable scene.

Explore the full traffic specification
21 vehicle types

Car, taxi, SUV, van, pickup, motorcycle, scooter, bicycle, auto-rickshaw, bus, mini bus, articulated bus, school bus, truck, trailer, container, tanker, emergency, tram, LRT and BRT — each with its own dimensions, speed and acceleration. Sample them with Roadway.vehicle_mix.

IDM car-following

Intelligent Driver Model per lane: smooth braking, queue discharge in order, red stop lines treated as standing leaders. Chosen over Wiedemann for transparency.

Signalised crossings

Fixed-time signals with cycle, offset and intervals, shared phase ids across signal groups, one-way kerb stop lines and vehicle hold with clearance.

Gap acceptance

At unregulated crossings each pedestrian applies an India-calibrated critical gap before stepping out — jaywalking, modelled rather than ignored.

Vehicle demand

Time-dependent demand profiles per lane, vehicle composition, transit arrivals on a timetable, turning movements measured with lines.

Link performance and emissions

Per-roadway counts, mean speed, delay, queue length, throughput and road LOS A–F, plus first-order CO₂, NOx, PM and fuel by vehicle class — in a "Traffic & emissions" report sheet.

Conflicts and delay

Pedestrian–vehicle conflict counts, crossing delay and vehicle signal delay totals.

Flyovers and underpasses

Elevated and sunken roads through multi-level projects and the props layer.

03 / ANALYSIS & REPORTS

From a moving crowd
to a measurable result.

Metrics are derived from recorded playback, so each result can be traced back to the same simulation.

LEVEL OF SERVICE

See the pressure points.

Review Fruin and IRC:103-2012 bands for walkways, stairs, queues and sidewalks.

ABCDEF
FREE MOVEMENTHIGH DENSITY
MEASURES

Find where time is lost.

Explore density, speed, directional flow, waiting, per-agent delay, clearance time and bottleneck duration.

Density & flowDelay & queuesRSET & egress
COMPARISON

Test the design.

Compare runs and seeds to see whether a pressure point persists, improves, or moves through the layout.

Before / afterSeed ensemblesPer-agent detail
Explore the full analysis specification

Level of Serviceanalysis.los

Fruin walkway, stair and queue

Area-module bands for each facility type, graded A–F per measurement area and per grid cell.

IRC:103-2012 sidewalks

The authoritative Annexure-I space bands (clause 6.1.5.1), replacing the earlier HCM-2000 placeholder which is kept for reference.

IRC:103-2012 sidewalk space per pedestrian.

Measures and mapsanalysis.measures, flow, rset, bottleneck, evacuation, travel_time

Density and speed

Pedestrians per m² and mean speed inside every measurement area, as time series and as per-cell grid fields.

Line flow

Directional pedestrian flow across each measurement line, in both directions.

Evacuation and egress

Cumulative egress curve, clearance time, peak occupancy and per-exit throughput; safe sinks for emergency studies.

RSET heat map

Per-cell last-cleared time — the required safe egress time drawn on the plan.

Bottleneck duration

Seconds each cell spends above LOS-E density, so a bottleneck is located and timed, not guessed.

Per-agent delay

Actual minus free-flow travel time for every pedestrian, with mean, median, 85th and 95th percentiles.

Travel and waiting time

Travel time, waiting time, occupancy, queue length and throughput, per area, line, service point and exit.

Overlays

Density, LOS grade, speed, RSET and bottleneck layers drawn live on the playback and baked into MP4 exports.

Ensemble runs--ensemble N

Mean field beside the spread

One stochastic run is noisy. Re-run across N seeds and Pravaha writes the mean density or speed field next to the across-run spread — the panel that separates a real bottleneck from seed luck.

Honest about N

The summary reports the fraction of cells whose spread exceeds half their mean and warns when N is too small to quote per-cell figures. If every run is identical it says so, rather than reporting a reassuring 0 %.

Reportsreport.pdf_report, report.excel_report

PDF report

Summary, density and egress charts, per-agent delay histogram, LOS tables per area, line flows and exit throughput — reportlab, ready to attach to a client submission.

Excel report

Summary, Areas, Lines, Evacuation, OD travel time, By class, Waiting & signals, Delay, Ensemble and Traffic & emissions sheets, with the raw series for your own charts.

Video export

MP4 of any run with a chosen overlay, at a chosen frame rate, from the app or the CLI.

04 / OUTPUTS

Maps, reports,
and evidence to share.

Choose the view that answers the question, then export the result for a design review, technical note, or client submission.

01 / MAPS & OVERLAYS

See the movement on the plan.

Playback and video overlays show where conditions change across the space.

  • Density and Level of Service
  • Walking speed and directional flow
  • RSET safe-egress time
  • Bottleneck duration and delay
02 / REPORT FILES

Make the findings reviewable.

Generate formatted files from the recorded run and its analysis.

  • PDF: summary, charts, LOS tables and egress
  • Excel: areas, lines, OD travel time and delay
  • Traffic & emissions sheet for mixed traffic
  • Ensemble means and spread where requested
03 / SHAREABLE PLAYBACK

Show the scenario in motion.

Give a project team the context behind the numbers.

  • MP4 with LOS, density, speed, RSET or bottleneck overlay
  • Self-contained HTML 3D viewer
  • Isometric PNG for a quick briefing image
  • Seeded runs that can be reproduced

05 / INTERACTIVE 3D

Put your audience
inside the study.

Explore animated human models, detailed vehicles and drivers. Orbit the scene, follow a pedestrian, or take a first-person view.

The Uppal station cutaway connects street, concourse and platform levels, with trains, stairwells, escalators and lifts. Its access arrangement follows public station diagrams; dimensions, traffic demand and operating timings are estimated.

Open the updated station demo (opens in a new tab)
UPPAL METRO / CURRENT REFERENCE + PLAYBACK
Updated multi-level Uppal metro station model showing people, vehicles, train and furnished station properties.
Explore the full 3d viewer specification
Buildings from the geometry

Glass curtain walls, columns, canopy roofs and support pillars extruded from the scenario; staircases and animated escalators built from portals.

Animated people

Embedded human models with clothing variation, per-class scale and walking animation driven by each pedestrian’s simulated speed.

Animated vehicles

Recorded vehicles use embedded 3D models with seated drivers and are interpolated between frames alongside the pedestrians.

First-person and Tour

An eye-height first-person camera, and an automated fly-through for presentations.

Camera presets

Orbit, pan and zoom with Iso, Top, Ground, Follow and Roof presets; play, scrub and speed controls.

Furnished scenes

The metro station and urban junction show multi-level circulation and mixed traffic. The website junction uses a simplified streetscape with protected movement phases. Props are scenery by contract: the solver never reads them, and a regression test proves furnished and bare runs are bit-identical.

Working signals

Signal poles with red and green heads that follow the simulated phases.

Three ways to export

pravaha-run scenario.pravaha --web3d out.html, Presentation ▸ Export 3D web view in the app, or export_web3d() from Python.

06 / SCENARIO EDITOR

Your layout.
Ready for a closer look.

Import the geometry, define the demand and bring the study together in one desktop workspace.

01

Bring in the plan.

Import DXF or shapefiles, calibrate a background image, or trace over a live satellite or street map.

02

Connect the journeys.

Set sources, destinations, routes, levels and service points. Adjust their attributes in the editor.

03

Run. Review. Refine.

Move between the network editor and playback, inspect the overlays, then develop the next design.

Explore the full editor specification

WorkspaceFile · Edit · View · Lists · Base Data · Traffic · Simulation · Evaluation · Presentation · Help

Network Objects

Every object type with a live count and a visibility toggle; click a row to activate its insert tool.

Quick View

Attribute panel for the selected entity — demand rate, agent type mix, group mix, destinations, capacity, service times, signal timing.

Lists

Editable attribute tables for every collection, docked at the bottom.

Levels dock

Add, remove and switch levels; portals connect them.

Playback tabs

Each run opens in its own tab with transport controls, a scrub slider, speed selector and overlay picker.

Persistent layout

Docks, window size and Quick View fields are remembered between sessions.

Drawing and editing tools

Drawable everything

Walkable areas, obstacles, sources, sinks, waypoints, portals, measurement areas and lines, signals (2-click stop lines), waiting zones, roadways, crossings, transit lines, service points and scenery props.

Select, move, copy

Click-anywhere selection including props, drag-move, cut, copy, paste and delete gestures.

Measure tool

Check a corridor width or a door opening in metres before you run.

Pan and zoom

Pan and Zoom-Window tools, north-up orientation, entity labels and per-layer visibility.

Simulation rendering

Filled walkable and obstacle polygons, square source and sink glyphs, signal heads, hatched waiting zones, whole-shape selection highlight.

3D tab

An in-app 3D view with Sync-from-editor.

Bringing geometry inio.image_calib, io.dxf_import, io.shapefile_import

Background image calibration

Load an aerial capture or a floor plan, set the pixel-to-metre scale by clicking a known distance, and trace over it.

DXF import

Closed CAD polylines from named layers become walkable and obstacle geometry.

Shapefile import

GIS polygons straight into a level.

.pravaha projects

Everything — levels, objects, props, mixes, signals — serialises into one project file with version checks on open.

Learning built inHelp ▸ Learning, F1

A step-by-step course

Installing, activating, the 5-minute first simulation, building a scenario, multi-level, reading results, exporting, the CLI and troubleshooting — with 40 screenshots generated from the real application.

Kept current by the test suite

A test walks the real menu bar, toolbar and CLI parser and fails the build if any feature exists that the guide never mentions. Shipping a feature means teaching it.

Start Page

Recent projects and the bundled examples — metro platform, signalised crossing, stadium egress — one click away.

07 / CLI & PYTHON

Repeat the study.
Keep the workflow.

Run scenarios headlessly, automate batches and reproduce a run from its seed. The engine is importable from Python.

Seeded runsEnsemble analysisScripted exports
RUN A SCENARIO
pravaha-run examples/metro_platform.pravaha   --video egress.mp4 --overlay los   --pdf report.pdf --xlsx report.xlsx   --steps 300 --seed 7

One recorded run. Video, report and workbook.

Explore the full automation specification
# Run the metro platform egress scenario: video + LOS overlay + reports
pravaha-run examples/metro_platform.pravaha \
    --video egress.mp4 --overlay los \
    --pdf report.pdf --xlsx report.xlsx \
    --steps 300 --seed 7

# Average the density field over 20 seeds
pravaha-run stadium_egress.pravaha --ensemble 20 --ensemble-mode density

# Reproduce the engine validation, with a PDF for the reviewer
pravaha-validate --pdf validation.pdf
pravaha-validate --bidirectional          # counterflow: lane formation

# Python
from pravaha.viz.web3d import export_web3d
export_web3d(playbacks, project, "run.html")

pravaha-run flags

--video OUT.mp4Export the run as an mp4 --overlay los|density|speed|rset|bottleneckHeatmap layer baked into the video --pdf OUT.pdfWrite the PDF report --xlsx OUT.xlsxWrite the Excel report --web3d OUT.htmlExport the interactive 3D viewer --steps NSimulation timesteps (default 300) --seed NRNG seed for exact reproduction --fps NVideo frame rate (default 30) --ensemble NRun N seeds and average the field --ensemble-png OUT.pngWhere to write the ensemble figure --ensemble-mode density|speedField to average --ensemble-cell MEnsemble grid cell size in metres

Also on the command line

pravaha-validate runs the periodic-corridor experiment against Weidmann and quantifies the deviations (--sigma, --anisotropy-lambda, --bidirectional, --pdf). pravaha-license is the vendor's licence lifecycle — keygen, issue, list, show, renew, revoke, verify. python -m pravaha.fingerprint prints a machine's licence fingerprint.

08 / CAPABILITY MAP

Know what’s available.
Plan with the full picture.

Explore implemented, partial and planned capabilities. Check the stated limits against your project requirements.

Shipped AvailablePartial With stated limitsRoadmap Not implemented
Pedestrian capabilities
Pedestrian capabilities
Pedestrian microsimulationStatusHow
Pedestrian types
Adults, children, elderlyShippedIndia-calibrated default agent types
Wheelchair usersShippedprm class and wheelchair alias
Cyclists (dismounted)Shippedcyclist agent type; ridden cycles are the bicycle vehicle
GroupsShippedSource.group_size_mix with cohesion force
Staff, security, shoppers, commutersShippedAdded to the default agent types
Walking behaviour
Social Force ModelShippedElliptical Johansson 2007 plus contact terms
Individual desired speedShippedPer-agent sampled speeds, per-class distributions
Personal space and collision avoidanceShippedSocial repulsion (A, B, anisotropy λ)
Gap acceptanceShippedUnregulated crossings
Group walkingShippedSlowest-member pace plus cohesion
Overtaking and followingShippedEmergent from heterogeneity
Waiting and queue behaviourShippedWaiting zones, service queues
Bidirectional and counter flowShippedValidated lane formation
Facilities and venues
Sidewalks, corridors, crosswalks, stairs, escalators, lifts, ramps, waiting areas, ticket gates, platforms, footbridges, underpasses, interiorsShippedWalkable geometry, portals, multi-level, signals, crossings
Metro and railway stations, bus terminals, airports, ferry terminals, stadiums, mallsShippedTransit lines, multi-source demand; stadium egress example ships
Crowd management
Density, flow, capacityShippedMeasures, line flow, heatmaps
Bottleneck analysisShippedDuration grids and egress-flow model
Queue managementShippedService points and queue analytics
Evacuation, emergency exits, RSETShippedEvacuation and RSET analysis, safe sinks
Fire evacuation and panicShippedpanic_params() preset (Helbing 2000)
Security screeningShippedService points with disciplines and onward routing
Passenger behaviour
Boarding and alighting, waiting, route selection, platform distribution, transfers, stair/escalator choice, gate selectionShippedTransit lines, weighted destinations, portal route graph, congestion-aware costs, shortest-queue discipline
Outputs
Walking speed, density maps, heat maps, travel time, delay, queue length, occupancy, LOS, throughput, waiting time, bottleneck identificationShippedPDF and Excel reports, overlays
3D visualisation
Animated pedestrians and crowdShippedWalk-cycle figures, per-class scale
Heat and density maps in 3DPartial2D overlays in video and report; 3D floor overlay is roadmap
Camera fly-throughShippedTour button and scripted videos
Day / dusk / night lightingShippedSolar clock, streetlights and vehicle headlights
Lane-change indicatorsShippedAmber indicator on the side each vehicle moves to
People poses and luggageShippedStanding, seated, phone and hand-holding poses on the same body; bags and suitcases
WeatherShippedRain, wet roads, fog and umbrellas per floor
Entry and exit portalsShippedLit exit and entry signs on steel door frames
Transit signal priorityShippedBus green hold and early green with protected pedestrian minimums
Emergency preemptionShippedCrossing cleared first, then green, then the plan resumes
Zipper mergingShippedWork-zone tapers with alternating merges
Time-space diagramsShippedCorridor trajectories with the reds each stop line showed
Hazard exposureShippedSmoke, heat and CO fields with ISO 13571 dose per person
Assisted evacuation and refugesShippedHelpers escort people who need assistance; refuges hold and release
Lift banksShippedMulti-car, multi-floor lifts with four dispatch policies
Transit operationsShippedVehicle blocks, platform assignment, holding, skip-stop and transfers
First-person viewShippedEye-height follow camera
Vehicular capabilities
Vehicular capabilities
Vehicular microsimulationStatusHow
Road network
Urban roads and service roadsShippedRoadway lane polylines, any alignment
Signalised intersectionsShippedPhases and clearance intervals
Unsignalised crossings, gap acceptanceShippedUnregulated crossings
Roundabouts, interchanges, rampsPartialDrawable as lanes; no priority-rule engine at merges
Toll plazasPartialModel as service points plus roadways
Flyovers and underpassesShippedMulti-level plus props
Parking facilitiesPartialScenery and walk-to-car; no parking search
Highways and expresswaysRoadmapFree-flow links work; no weaving or ramp metering
Vehicles and demand
Vehicle type catalogue (21 types)ShippedPer-type dimensions, speed, acceleration
Traffic volumes, time-dependent demandShippedDemand profiles per lane
Vehicle compositionShippedvehicle_mix
Turning movements (measured)ShippedMeasurement lines
OD matrices and per-vehicle route choiceRoadmapLanes are fixed paths today
Public-transport schedulesShippedTransit arrivals
Driving behaviour and control
Car-followingShippedIDM per lane (Wiedemann not implemented)
Desired speed distributionsShippedPer vehicle type
Pedestrian × vehicle gap acceptanceShippedCrossings
Lane changing, overtaking, merging, platooningRoadmapSingle-file lanes today
Fixed-time signals, signal groups, pedestrian crossings, hold and clearanceShippedSignal objects with shared phase ids
Actuated or adaptive control, transit and emergency priority, ramp metering, VMS, railway crossingsRoadmapThe Signal phase API is the hook point
Public transport, incidents, ITS
Bus routes, stops, bays, dwell, boarding and alightingShippedScenery plus transit lines
Bus priorityRoadmapNeeds actuated control
Incidents and closuresPartialObstacles and red signals; no mid-run event injection
ITS (V2X, dynamic routing, queue warning)RoadmapNo misleading stubs shipped
Environment and data collection
Emissions and fuel (CO₂, NOx, PM)ShippedFirst-order modal estimates from recorded speed profiles; noise is roadmap
Link performance (counts, speed, delay, queue, throughput, road LOS)ShippedPer roadway; network rollups partial
3D and integration
3D road network, vehicle animation, signal visualisation, camera animationShippedJunction demo
Driver viewpoint, day/night and weather, custom vehicle modelsRoadmapFPV follows pedestrians; embedded vehicle models and drivers are available, while the listed camera and customisation features remain roadmap
Python scriptingShippedThe entire engine is importable
Excel export / importPartialReports out; import partial
CAD (DXF) and GIS (shapefile) importShippedio.dxf_import, io.shapefile_import
Database, COM, DLL, OpenDRIVE, signal-controller hooksRoadmapRoadmap

Roadmap capabilities are not implemented. Partial capabilities have limitations listed in the table; check these against the requirements of your study.

09 / VALIDATION & LIMITATIONS

Evidence you can inspect.
Assumptions you can see.

The shipped validation experiment reports behaviour against empirical pedestrian dynamics. Its configuration matters.

1.37 m/sFree-flow speed (Weidmann ≈ 1.35)
0.121 m/sSpeed RMSE against Weidmann across the sweep; worst point 0.203
1.08 p/s/mPeak specific flow at 1.00 p/m² (Weidmann 1.21 at 2.00)
1.8–2.3 p/s/mBottleneck egress specific flow, monotonic in door width, no deadlock
≈ 0.9Lane-formation order parameter in counterflow at a 0.02 s step
+2 %Residual speed overshoot at the lowest density
REPRODUCIBLE CONFIGURATION

Periodic corridor · 2,000 steps per density point · desired-speed dispersion σ = 0.15 m/s · anisotropy λ = 0.2. Run pravaha-validate to reproduce the experiment.

Read the model’s limits alongside its results.

KNOWN BEHAVIOUR
  • Push-through in isotropic runs. With λ = 1.0 a neighbour astern repels as hard as one ahead, and capacity reads about 8 % optimistic at settled state. Use λ ≈ 0.2 for any run whose figures will be quoted; the isotropic default exists only so old scenarios reproduce byte-for-byte.
  • Homogeneous crowds are degenerate. With no agent type mix nobody is ever held up by a slower walker, and the corridor jams abruptly at Fruin's D/E boundary. Real dispersion repairs the curve; every bundled example ships with a mix.
  • The congested branch over-jams at coarse timesteps. Beyond ~1.5 p/m² the engine under-runs Weidmann (−16 % at 1.5, −33 % at 2.0 with the 0.1 s step) because of explicit integration of stiff contact springs. substeps=4–5 shrinks the 2.0 p/m² deficit to −6 %.
  • Counterflow needs the fine step. Lanes form robustly at 0.02 s; at the 0.1 s default integration jitter destroys them.

11 / LICENSING & INSTALLATION

Your project.
Your workstation.

Pravaha runs on Windows with offline licensing. Discuss a machine or site licence, a trial, or requirements for an air-gapped environment.

Talk about your project
01

A Windows installer.

A packaged desktop application, with no separate Python installation required.

02

Built to work offline.

Run the simulation locally and activate with a signed licence key.

Explore the full licensing specification

How a licence works

  • A signed token bound to a machine fingerprint, or a site licence valid on any machine.
  • Optional expiry; renewal issues a fresh key and the old one keeps working until it lapses.
  • Editions and expiry are inside the signature, so a key cannot be altered.
  • Activate once from the in-app dialog; the key lives in your user profile.
  • Your fingerprint comes from python -m pravaha.fingerprint or the Activation dialog.

Installing

  • Windows installer (Inno Setup) with the PyInstaller-frozen application — one setup file, no Python required.
  • Or from source on Python 3.10–3.12: pip install -e ".[ui]", then python -m pravaha.app.
  • The installer shows the licence before writing anything; the wheel and the installed application both carry LICENSE and NOTICE.
  • Bundled examples, the Demo Project with furnished scenes, and the Learning course are included.

Open-source components

The NOTICE file lists every open-source component. Qt/PySide6 is used under the LGPL v3, shipped as separate DLLs so the user can substitute their own Qt build. NumPy, SciPy, Matplotlib, reportlab, openpyxl and imageio-ffmpeg complete the stack.

Who it is for

Metro and rail operators, transport consultants, station and terminal designers, stadium and event planners, fire-safety and egress consultants, and public agencies applying IRC:103 — anyone who needs a defensible pedestrian study without a six-figure suite.