Flows and fields

A scalar is a record of where its fluid was

A conserved scalar has no value of its own. Its value at a point is whatever it was at the place that point's fluid started from, which makes a dye field a photograph of the past — and makes the map from now to then the only thing in the flow that carries the past at all.

Worth reading first: The area that must not move · No randomness, and it mixes anyway.

A velocity field is a complete description of a flow’s present. Handed to a solver it determines the next instant, and the instant after that, for ever: the equations of motion need nothing else. It is a state in the strict sense, and everything about the flow’s future is in it.

It contains nothing whatever about the flow’s past.

That is not a limitation of any particular solver. Two flows that arrive at the same velocity field by completely different routes are, from that moment on, the same flow — and yet the dye in them is arranged differently, the pollutant in them came from different places, and the temperature they carry records different histories. Something in the flow is holding the past, and it is not the velocity.

This essay is about what is holding it, which is the flow map: the function that says, for each point now, which point its fluid occupied then.

Five points, and where each one's fluid came from. Back-trajectories through six units of time in an unsteady double gyre. Each curve ends at the place the fluid now at the marked point started; nothing about that place can be read off the velocity at the marker.
Fig. 1 Back-trajectories through six time units of an unsteady double gyre. Each curve ends where the fluid now at the marker started — and nothing about that place can be read off the velocity at the marker.

What a conserved scalar actually is

Take a scalar that is carried without being created, destroyed or diffused — a dye concentration in the limit of no diffusion, a temperature in a flow with no heating, a tag on a parcel of fluid. Its governing equation says that its material derivative is zero: following the fluid, it does not change. Steady does not mean nothing is happening is the collection’s account of that derivative and of how a quantity can be constant along a path while varying everywhere at once.

The solution of that equation is a sentence rather than a formula. The value here now is the value there then, where “there” is the place the fluid here now was occupying then. Nothing is computed; something is looked up.

So a conserved scalar field is not really a field with its own dynamics. It is the initial field, composed with a map. Everything interesting in a dye photograph — the filaments, the striations, the places where two colours interleave without mixing — is a property of that map and not of the dye.

A conserved scalar, now, drawn from where its fluid was then. The right-hand panel is the stripe pattern the fluid carried at the start. The left is the same scalar six time units later, drawn by asking every point where its fluid came from and reading the answer off the initial pattern. Nothing but the flow map was used.
Fig. 2 The stripes the fluid carried at the start, and the same scalar six time units later, drawn by asking every point where its fluid came from and reading the answer off the initial pattern. No transport equation is solved anywhere.

The picture above is built by asking every point on a grid where its fluid came from, six time units back, and reading the answer off a stripe pattern. No transport equation was solved and no scalar was stepped forward. The whole of the left panel is the right panel, seen through a map — and the map reproduces the scalar to 2.9·10⁻⁷, which is the integrator’s error and nothing else.

The map is not a function of the field

The temptation, and it is a strong one, is to think the map can be reconstructed from the velocity that is visible now — that the present field, being a complete state, must somehow encode the displacement that produced the present pattern.

It cannot, and the cheapest way to see it is to try. The natural guess is that a parcel arrived at its present position by travelling at the velocity found there, for the elapsed time: displace the initial pattern backwards by the local velocity times the interval and read it off. On a scalar running between −1 and 1 that guess is wrong by 0.575 on average and by 1.886 at worst — which, on a range of two, is a mean error of 29 per cent and a worst error that has the sign inverted and the magnitude nearly saturated. The map’s own error over the same field is 2.9·10⁻⁷, which is six and a half million times smaller than the guess’s worst.

The flow map is exact and the local guess is not. The worst error over a grid of 1,600 points, for the scalar carried back along its own trajectory and for the guess that displaces it by the instantaneous velocity times the elapsed time. The scalar's full range is two.
Fig. 3 The worst error over 1,600 points, for the scalar carried back along its own trajectory and for the guess that displaces it by the instantaneous velocity times the elapsed time: 2.9·10⁻⁷ against 1.886, on a scalar whose full range is two.

Over sixteen hundred points in an unsteady double gyre, six time units on, that guess is wrong by 1.89 at its worst, on a scalar whose entire range is 2 — which is to say it can be exactly as wrong as it is possible to be — and by 0.58 on average, which is more than a quarter of the range. The flow-map reconstruction over the same points moves by 3·10⁻⁷ when the number of integration steps is halved, so it is exact to the accuracy of the arithmetic.

The reason the guess fails is not that six units is a long time. It fails because the velocity at a point changes as the parcel travels, and the whole displacement is an integral of velocities the parcel met and the present field never saw. Streamlines are not the paths particles take is the same statement made about curves: the instantaneous picture and the accumulated one are different objects in any unsteady flow, and in this one they are unrecognisably different.

What the map costs to carry

If the map is the memory, the practical question is how expensive it is to keep — and the answer is that it is much larger than the field.

A velocity field on a grid is two numbers per cell — 2,450 numbers on the 49-by-25 grid used here. A flow map from now back to a chosen earlier time is also two numbers per cell, but there is one of them for every pair of times, and the map from now to six units ago cannot be obtained from the map from now to three units ago without composing it with another map. A code that wants the origin of every parcel at arbitrary depth into the past must either store the trajectories or recompute them.

That is why particle tracking exists as a separate discipline from field solving, and why no randomness, and it mixes anyway has to integrate paths rather than read a field: the quantity of interest there — how much interface a stirring protocol has created — is a property of the map and is invisible in any snapshot of the velocity.

One line, 6 periods, 49 times longer. A short line of dye released in the chaotic region, drawn after 6 periods of the blinking flow. It has been stretched and folded into a filament 49 times its original length, wrapped through most of the region between the vortices, and it is still one connected curve that has never crossed itself. This is what mixing is: not the destruction of the line, which never happens in a flow with no diffusion in it, but its stretching and folding until any small patch contains parts of it from everywhere.
Fig. 4 A material line under a stirring protocol, six periods in, computed elsewhere in this collection: a filament 49 times its original length, wrapped through most of the region between the vortices.

Why nothing else in the flow can carry the past

It is worth being precise about the claim, because it is stronger than it first sounds. The assertion is not that the flow map is a convenient way to store the history. It is that in an ideal incompressible flow there is nothing else available.

The velocity field is a state, and a state by definition determines the future without reference to the past. Pressure is not independent: in an incompressible flow it is the solution of a Poisson equation driven by the velocity field at that instant, so it carries exactly what the velocity carries and no more — which is pressure has no speed. Vorticity is a derivative of the velocity. Density, in a constant-density flow, is a constant.

So every Eulerian quantity is a function of the present velocity field, and any two histories arriving at the same field are, in every Eulerian variable, identical. The difference between them lives entirely in the labels the fluid is carrying — which parcel is where — and the object that records those labels is the flow map. Adding a conserved scalar to the calculation adds a memory precisely because the scalar is a label rather than a field with dynamics of its own.

The exception, and it is the interesting one, is a fluid whose stress depends on its own deformation history: a polymer solution, a suspension, a viscoelastic melt. There the map is not merely a record kept by the tracer, it is a term in the momentum equation, and the flow’s past acts on its present. That is the fluid that has not finished its last deformation and it is the one case in this collection where the memory pushes back.

The memory has a horizon, and it is logarithmic

The map is exact, and it is also unstable, which is the second half of the story and the more useful half.

Two points a thousandth apart now had origins that were much closer than a thousandth or much further apart, depending on where they sit; over a long enough window the typical pair separates exponentially. Measured over twenty-four starting points in the same double gyre, the widest pair’s origins separate by a factor of 29 in twelve time units — a rate of 0.281 per unit time — while the median pair separates by a factor of 2.3.

Two origins, drifting apart. How far apart the origins of two points a thousandth apart become, as the window of history is lengthened. The median pair over twenty-four starting points, with the widest and the narrowest as the band. The growth is exponential until the domain runs out.
Fig. 5 How far apart the origins of two points a thousandth apart become as the window lengthens — median of twenty-four starts, with the widest and narrowest as the band. The growth is exponential at a rate of 0.281.

The consequence is a limit on how far back a position can be believed. If the present position is known to a part in ten thousand, and errors grow at 0.281 per unit time, then the origin is known to a tenth of the domain for about 8.2 time units and to nothing at all after about twenty. Improving the present measurement by a factor of ten buys a further 8.2 units and no more, because the growth is exponential and the accuracy enters through its logarithm.

How far back a position can be believed. The window of history over which an origin stays inside a stated accuracy, against how well the present position is known. The curve is logarithmic, so buying a decade of accuracy buys a fixed amount of extra memory and no more.
Fig. 6 The window over which an origin stays inside a stated accuracy, against how well the present position is known. The curve is logarithmic, so a decade of accuracy buys a fixed amount of extra memory — 24.6 time units at the reference precision — and no more.

Twenty-four pairs of parcels released 0.001 apart, integrated backwards, end 29.1 times further apart on average and 2.285 apart typically — a separation rate of 0.281 per unit time, which puts the horizon at 24.6 time units for a measurement good to one part in a thousand. Improving that measurement by a decade buys 8.2 more time units, and no more.

So the flow’s memory is perfect and unreadable. The map exists, it is exact, and recovering it from measurements degrades logarithmically in the measurement quality — which is the same arithmetic that governs forecasting, run backwards. An hour for every tenfold is this collection’s account of the forward version, and the two are the same statement about the same exponent: a decade of accuracy buys a fixed interval of time, in either direction.

Which direction the instability runs

The two directions are not equivalent, and confusing them is a common error in reading dye pictures.

Running forward, neighbouring parcels separate, so a compact blob of dye becomes a long filament. Running backward, the same instability means that a compact patch of present dye came from a long filament in the past — so a small sample taken now is a mixture of fluid from a wide region then, and the finer the filament, the wider the region.

That has a practical reading for anybody interpreting a tracer measurement. A concentration measured at a point is not a sample of one place upstream; it is a weighted average over an upstream region whose size grows exponentially with how far back the question is asked. The region is the map’s inverse image of the sample volume, and it is a fractal set of filaments rather than a blob.

One parcel's speed and acceleration, along its way past a cylinder. Speed and acceleration for a single parcel of fluid as it travels past a cylinder in a steady flow. Neither is constant: the parcel is slowed as it approaches, accelerated round the shoulder to well above the free-stream speed, and slowed again behind. The field it is moving through never changes while all of this happens.
Fig. 7 The same instant, and the history a parcel brought to it — computed elsewhere in this collection. Speed and acceleration for one parcel past a cylinder in a steady flow: neither is constant, though nothing in the field is changing.

What the solver computed, and how it was checked

The flow is the unsteady double gyre in its standard parameters, chosen because it is the smallest unsteady flow that is genuinely chaotic and because the same flow carries the area that must not move, which is this collection’s check that an integrator preserves what it must.

Trajectories are integrated with the ordinary fourth-order Runge-Kutta rule rather than the implicit midpoint rule used there, and deliberately: the question here is where a parcel went, not what a stepper conserves, and the explicit rule at three hundred steps is more accurate on the trajectory — it recovers the scalar to seven decimal places over six time units.

Three checks stand behind the numbers. The reconstruction is converged: halving the step count moves the reconstructed scalar by 3·10⁻⁷ of its range of two, so the map has been computed rather than approximated. The local guess is genuinely bad rather than badly implemented: its error is compared against the same converged answer over the same grid, and the check refuses a claim that its worst error exceeds the scalar’s entire range, which would be arithmetically impossible. And the separation is measured over an ensemble rather than at one point, because a single pair starting in the wrong place separates at a negative rate — reverse time contracts as often as it stretches — and the first version of this measurement did exactly that, read −0.117, and was right and useless.

The refusals are exercised: each check is offered a tolerance of zero and must refuse it.

The flow map as the memory, as computed. The convergence of the reconstruction, the error of the local guess, the separation of neighbouring origins over the window, and the horizon that follows from it.
Fig. 8 The reconstruction converging to 2.9·10⁻⁷, the local guess wrong by 1.886 of a range of two, the 0.281 separation rate of neighbouring origins, and the 24.6-unit horizon that follows from it.

Where this changes an answer

Source attribution. Asking where a pollutant came from is asking for the inverse flow map, and the answer degrades logarithmically with the quality of the wind or current field. Beyond the horizon, an attribution is a statement about a distribution over the whole basin rather than about a place, and quoting it as a place is quoting a number the map cannot support.

Data assimilation. A scheme that corrects a forecast by nudging the velocity field towards observations is correcting the state and not the memory. A scalar field carried by that flow keeps the signature of the trajectory it actually took, so the tracer and the velocity can disagree after assimilation even when both are individually good.

Reading a dye photograph. The most common error in interpreting a visualisation is to read the present pattern as a statement about the present flow. It is a statement about an interval, and about which interval depends on how long the dye has been in the water. Two photographs of the same flow taken with dye injected at different times show different patterns, and neither is more correct than the other; they are answers to different questions, both of them questions about the past.

And any measurement of mixing. The rate at which a scalar’s gradients steepen is set by the flow map’s stretching, and the eventual homogenisation is set by diffusion acting on those gradients. A model that gets the velocity statistics right and the trajectories wrong will get the first qualitatively right and the second wrong by an exponential, which is why steady, three-dimensional, and mixing anyway insists that mixing is a Lagrangian question asked about an Eulerian object.

Who found it, and when

The idea that a conserved scalar is the initial field composed with a map is as old as the method of characteristics, which is Lagrange’s, and the fluid-mechanical statement of it is Lagrange’s too — the Lagrangian description is defined by carrying labels rather than fields, and the flow map is exactly the change of variables between the two descriptions.

What is recent is treating the map as an object to be computed and looked at. That arrived with chaotic advection in the 1980s, when it became clear that a smooth, slow, entirely deterministic flow could stretch material lines exponentially, and that no statistic of the velocity field predicted how fast. The instruments that followed — finite-time exponents, Poincaré sections, the finite-time material structures that a boundary that only exists over a window is about — are all instruments for reading the map rather than the field, and they exist because the field was measured first and found to be silent.

What the picture cannot show

The reconstructed field above is drawn on a grid of finite cells, and that is a real limit rather than a cosmetic one. By six time units the true scalar field has structure on scales far below the cell size — filaments the map has drawn out and folded — and the picture shows the value at the cell centre, not the average over the cell.

Diffusion, in a real fluid, is what stops that regress. It acts on the steep gradients the map creates and erases structure below a scale set by the balance between stretching and diffusion, so a real dye field has a finest filament and the idealised one here does not. That scale, and the fact that the mixing rate ends up nearly independent of the diffusivity, is the subject of a millionth is enough.

Limits recorded rather than smoothed over

Conserved means conserved. Everything above is for a scalar with no source, no sink and no diffusion. A reacting scalar is not a record of where its fluid was; it is a record of where its fluid was and what happened to it on the way, which needs the whole path rather than the endpoints of the map.

One flow, two dimensions. The double gyre is a model flow with an analytic velocity field, so its map is exact to the integration’s accuracy and nothing has been interpolated. A measured flow field is known on a grid, and interpolating it introduces its own error into the trajectories — which is usually the largest term in any real reconstruction and is absent here by construction.

The separation rate is this flow’s. The 0.281 is a property of the double gyre at these parameters and over this window; another flow has another number, and a flow with closed streamlines has none at all, because its trajectories do not separate. What transfers is the shape of the horizon, not its value.

And the local guess was chosen to be the natural one, not the best one. Displacing by the instantaneous velocity is what a reader’s intuition offers and is what the essay refutes. A better approximation — displacing by the time-averaged velocity along the path — is closer and is still not the map, because it is the map that decides which velocities to average.

What links here

Computed from the collection rather than written here: the essays that point at this one.

Shares its objects with

Essays naming at least two of the same things, that neither author linked.

Named objects

A dashed tag is an object no other essay names yet.

AdvectionFlow mapInitial conditionThe Lyapunov exponentMaterial derivativeMeasurementMemory kernelMixingModel validityPredictabilityScalar transportTrajectory