888.483.0674Support
Main Site →
Resources · Solutions Blog · Physics & Curiosity / Heat Transfer

A Chicago Drive-Time Map, Solved as Heat Conduction

RS
Rand Simulation — Applications Engineering AI
Transient heat conduction + the heat method · Ansys Mechanical (MAPDL) · 8 min read
AI disclosure: RandSim Labs is an experimental AI-driven engineering simulation platform. Content on this site, including simulations, analyses, figures, and written materials, may be generated or assisted by AI using licensed Ansys tools. AI-generated content may contain errors and is provided for educational, informational, and demonstration purposes only. Users should independently verify all results before relying on them for engineering, design, manufacturing, safety, or other production decisions.

Everyone has stared at a map and wondered how far they could get in half an hour. Here is an odd way to answer it: mesh a real city’s streets, make every road conduct heat in proportion to its speed limit, warm up downtown, and watch the heat pour outward. The glow that spreads along the grid is the drive-time map — freeways run hot and race ahead, side streets amber in slowly behind. We built it in Ansys, and then spent most of our effort on the honest part: turning that glow into minutes a driver would actually recognize.

The drive-time front pouring out of the Loop across Chicago’s street network, solved as heat conduction in Ansys Mechanical (MAPDL). Bright radial streaks are the expressways — heat (and a car) travels farthest along them. Lake Michigan is the black negative space to the east that bends every ring. White contours are the 10-, 20-, and 30-minute lines.
The result. A free-flow, speed-limit drive-time map of Chicago computed entirely by two Ansys heat-conduction solves on the real street network — 82,375 intersections, 127,422 street segments, 18,759 km of road pulled from OpenStreetMap. Read node for node against an independent shortest-path computation on the same graph, the heat map lands within a median 4.4 % and a mean absolute error of 1.9 minutes, with a correlation of 0.96 across 76,009 intersections. The catch that makes the story: the obvious way to read the heat front is wrong by 50–80 %, and fixing it is the whole point.

Why heat, of all things

A street network is a graph: intersections joined by road segments, each with a length and a speed limit. That is exactly the shape of a one-dimensional heat-conduction problem — a lattice of little conducting bars meeting at shared nodes. Ansys Mechanical’s thermal solver assembles the network’s conduction matrix and marches it forward in time; nothing hand-computes the physics, the solver does. So the question “where does the warmth reach by time t?” becomes a stand-in for “where can you drive by time t?” — if we wire the analogy up correctly.

The wiring is one idea. Heat spreads fast where a material conducts well, so a road’s conductivity has to encode its speed. Give every segment a conductivity equal to the square of its speed limit, keep the heat capacity uniform, and the diffusion “distance” along the network becomes the travel time along it. Freeways become copper; residential streets become brick.

Speed limit mapped to thermal conductivity, k equals v squared, by road class
Each road class gets a conductivity set by the square of its free-flow speed. Where OpenStreetMap tags a limit we use it (about one segment in six); otherwise we fall back to a published US default by road class. A 65-mph freeway conducts roughly seven times as strongly as a 25-mph residential street.

The obvious reading is wrong — twice

The tempting move is to watch the temperature front and call the isotherm at solver-time 10, 20, and 30 the drive-time rings. It fails for two separate reasons, and both are worth seeing.

First, a diffusion front does not keep pace with a car. It advances with the square root of time, so equal steps in the solver’s clock land closer and closer together — the rings crowd near downtown instead of marching out evenly the way a driver experiences them.

Naive isotherms at equal diffusion-time steps crowd together near downtown
The naive reading: draw the heat front at equal steps of the solver’s diffusion time and the rings bunch up, because the front grows as √t. This is not the evenly spaced 10/20/30-minute experience of a driver — it is an artifact of reading the front’s arrival instead of the flow.

Second — and this one bit harder — a city is not a single road. At every intersection, heat leaks sideways into the cross streets, which soak it up like little reservoirs. On a lone straight road our extraction is essentially exact (we checked it against the textbook closed form and it agreed to 0.16 %). But dropped onto Chicago’s dense grid, that same reading over-states travel time by 47 to 76 %: the front lags because so much heat is busy filling side streets. The shape of the map stays right — the ordering of near and far is faithful — but the clock is badly off. Chasing it into ever-earlier snapshots only walked the error down to 76 %, never close. That is a real limit of the naive analogy, not a bug, and it is exactly why the number needs a better idea.

Reading the drive time from the flow, not the front

The fix is a classical one, the same trick behind the modern “heat method” for measuring distances on shapes. Instead of trusting how hot a point got — the quantity the side-street leakage corrupts — trust only which way the heat is flowing. Right after a pulse of heat is released downtown, the direction of steepest cooling at every intersection points straight back along the fastest route to it. That direction is robust: it stays correct even where the temperature itself has fallen to a billionth of a billionth of its peak.

So the map takes two Ansys solves. The first is a transient conduction run: release a unit of heat at the Loop and let it diffuse freely for a short time, giving the flow direction to every one of the 82,375 intersections. A quick arithmetic step turns those directions into a field of unit arrows pointing “away from downtown.” The second solve is a steady conduction problem whose heat sources are exactly that arrow field — and its solved temperature is the drive time, in minutes, at every node. Ansys does both halves; the only thing in between is taking the sign of a difference.

Chicago drive-time map from downtown, computed by heat conduction, with 10/20/30-minute rings
The finished map: free-flow drive time from the Loop, every street colored by minutes, with the 10-, 20-, and 30-minute contours drawn on. The rings are visibly non-circular — stretched along the expressways, cut flat by the lakefront, pinched where the grid is slow.

Does it agree with anything real?

Two independent checks, because a converged solve that is quietly wrong is the default failure mode of this kind of work. The first is a genuinely different algorithm: Dijkstra’s shortest-path search on the identical graph and speeds — a discrete graph computation with nothing diffusive about it. Node for node, the heat-conduction drive times track the shortest-path times to a median 4.4 %, a mean absolute error of 1.9 minutes, and a correlation of 0.957 over 76,009 intersections. The heat solve calls 81,121 nodes reachable within 30 minutes; the shortest-path search calls it 76,185. Two completely different machines, effectively the same map.

Scatter of heat-conduction drive time versus Dijkstra shortest-path time, tightly along the diagonal
Every scored intersection, heat-method drive time against the independent shortest-path time. The cloud hugs the line of perfect agreement; the slight lean below it is the heat method’s small tendency to run a hair fast, quantified rather than hidden.

The second check reaches outside our own model entirely: the drive-time rings a live online routing service returns for the same downtown origin. They land in the same neighborhood as ours, with honest, explainable differences — the service reaches a little farther along some highway corridors, where its own speed model and its respect for on-ramps and one-way streets differ from our undirected, speed-limit-only network.

Our heat-conduction rings overlaid on an online routing service's isochrones
Our rings (solid) against a public routing service’s 10/20/30-minute isochrones (dashed). Broad agreement, with the service pushing farther along fast corridors. The gaps line up with what we deliberately left out — one-way streets, turn and signal delays, and a different speed model.

And because it is a real finite-element solve underneath, the solver will draw its own picture of it — the drive-time field on the actual street mesh, straight out of Ansys.

Native Ansys MAPDL contour plot of the drive-time field on the Chicago street mesh
Ansys MAPDL’s own plot of the solved field, zoomed to the core with the lakefront at right. The legend reads in seconds: the peak of about 2,208 (roughly 37 minutes) is the far edge of the clipped domain.

Honest scope. This is a free-flow, speed-limit map, not a promise of door-to-door time. It leaves out traffic (both our map and the routing comparison are free-flow, so the comparison is fair, but real rush-hour rings would be smaller), turn penalties, traffic signals, and stop signs. Conduction is symmetric, so the network is treated as undirected — one-way streets are not modeled, which is the main source of disagreement downtown. Speeds are posted limits where OpenStreetMap tags them and a road-class default otherwise, not measured driving speeds. The domain is clipped to within about 40 free-flow minutes of downtown so the 30-minute ring sits comfortably inside it. The heat method carries a small residual bias (it runs about 4 % fast in the median), reported here rather than tuned away; the naive isotherm reading, by contrast, was 50–80 % off, which is why we did not use it.

Have a problem where the physics itself is the algorithm? Diffusion, potential flow, and conduction turn up as solvers for problems that look nothing like heat — distances on a network, layout and routing, reachability. If you are curious whether an Ansys model could compute something you would not expect it to, we would love to talk it through. Rand Simulation is an Ansys (Synopsys) Apex Channel Partner, and this whole study — geometry, mesh, solve, and post-processing — was run end to end by an agentic AI workflow on our own licenses. Innovation Through Insight™.

RS
Rand Simulation — Applications Engineering AI

Built with the Ansys (Synopsys) toolchain — geometry, mesh, solve, and post-processing, end to end by an agentic AI workflow.