Brownian motion · Your observations
From your track to an honest inference.
Keep the measured positions, the missing observations and the assumptions together. Change the analysis without rewriting the evidence.
Local observations
Your observations, kept on this device
Import a classroom CSV, or try the synthetic practice track. Everything stays in this page: nothing is sent to a server or put in a share link.
Paste an observation CSV instead
CSV limit: 2 MiB and 20,000 rows. To capture coordinates from your own video, use the tracker at the end of this laboratory. Nothing is saved automatically: export the observations, or keep them on this device, before closing or reloading the page.
No observation file is loaded. No worker has started.
Track a particle in a local video
No video or frame pixels are uploaded or included in exports. Nothing is saved automatically. Keep the original recording and download annotations before leaving this page.
Limits: 256 MiB, 10 minutes, 4096 pixels per source edge, a 1920-pixel working canvas, 2000 requested frame reads, and 2 seconds per read. Internal decoder work is not observable or counted. Unsupported videos can still be measured elsewhere and imported as CSV.
The small video is the decoder view; the large canvas is the frozen frame used for annotation. Coordinates are browser-oriented intrinsic pixels. Encoded rotation and pixel aspect are not independently verified. No crop or extra rotation is applied.
Record at least ten independent clicks on the same stationary feature. Repeated clicks in one paused frame describe click scatter, not a direct measurement of moving-particle localization error. The analyzer states that extra assumption and does not silently pool axes.
Two placements do not share files, drafts, workers or accepted results. Closing a placement discards its in-memory session.
Load a track of one particle's positions, from your own microscope video or the practice file, and the lab estimates how fast the particle spreads, after correcting for the camera's own errors. Without the particle's size it cannot go on to count molecules.
This laboratory takes a record you made yourself, or the synthetic practice record, and asks what it can support. A record is a table of clicked positions at stated times, a calibration from pixels to micrometres, repeated clicks on one feature that does not move, and declared inputs: temperature, viscosity, exposure and, if you know it, the particle's radius. Section 4 says the displacement along one axis over a time τ has mean square 2Dτ, so D can be read backwards from measured displacements. A camera adds two things the paper does not consider. Each click misses the true centre by a little, which adds to every displacement's variance, and each frame averages the position over its exposure, which takes some away. The analysis uses disjoint pairs of frames, measures the click error on the stationary feature, fits a constant drift and corrects for both. On the practice record's x coordinate that gives D = 0.372 μm²/s, with a conservative 95 percent interval from 0.203 to 0.654 μm²/s, against 0.335 μm²/s if the camera is ignored. The record was generated with D = 0.429 μm²/s, so the interval contains the value it was made from; recovering a planted value shows that the method works, not that molecules exist. Section 5's route from D to the number of molecules N needs the radius. Without one, the record fixes only the product a·N, here 3.47 × 1017 m/mol. Excluded points keep their rows and their reasons, and an interval is withheld once points have been chosen by hand.
Here is the calculation on the practice record's x coordinate, step by step. The calibration is 10 pixels per micrometre, so each clicked pixel coordinate is divided by 10. The record has 100 frames 1 s apart. Pair frame 0 with frame 1, frame 2 with frame 3, and so on: 50 pairs, each giving one displacement Δ over τ = 1 s. The pairs do not share frames, because two displacements that share a frame share that frame's click error and are no longer independent. Ignoring the camera, Section 4 read backwards gives D as the average of Δ² divided by 2τ: 0.335 μm²/s. Now the camera. Thirty clicks on a feature that does not move scatter with variance σ² = 0.0283 μm², a standard deviation of 0.17 μm, or 1.7 pixels. Every displacement is the difference of two clicks, so it carries twice that variance, 2σ² = 0.057 μm², which has nothing to do with the particle. The exposure works the other way. Each frame records the particle's average position over 0.5 s, and averaging smooths the path, so a displacement between two frames is smaller on average than one between two instants. For a random walk the effect is exact: the mean square of Δ is 2D(τ − E/3) + 2σ², with E the exposure, so the effective time is 1 − 0.5/3 = 0.833 s instead of 1 s. Next, drift. The average of the 50 displacements is −0.076 μm, a fitted drift of −0.076 μm/s. Its standard error is √(0.677/50) = 0.12 μm/s, so this drift is well within chance, but subtracting it costs one degree of freedom, leaving 49. The spread of the displacements about their mean is s² = 0.677 μm². Solve for D: (0.677 − 0.057)/(2 × 0.833) = 0.620/1.667 = 0.372 μm²/s. The interval has two sources of uncertainty and spends 2.5 percent of its risk on each: a chi-square interval for s² with 49 degrees of freedom, and one for σ² with 29. Combining the largest s² with the smallest σ², and the reverse, gives 0.203 to 0.654 μm²/s, and because the two 2.5 percent risks add to at most 5 percent, the coverage is at least 95 percent. The practice record was generated with D = 0.429 μm²/s, and the interval contains it. The y coordinate of the same particle gives 0.580 μm²/s, from 0.343 to 0.995, which also contains it: with 50 pairs each, two coordinates of one track can differ this much. Last, Section 5's step. Stokes's law gives D = RT/(6πηaN), so a·N = RT/(6πηD) = 8.314 × 293.15/(6π × 0.001 × 3.72 × 10−13) = 3.47 × 1017 m/mol. The record declares no radius, so N stays unknown: a 0.5 μm sphere would give one value and a 1 μm sphere half of it, and the displacements cannot choose between them.
Einstein proposed the test in Section 5 without knowing whether the motion he predicted was the one already observed, and gave a number to look for: about 6 μm in a minute for a sphere 0.001 mm across in water at 17 °C. Henri filmed grains in 1908, and Perrin, from 1908, traced grain positions at fixed intervals with a camera lucida, reading displacements from the drawings much as this lab reads them from clicks. Neither corrected for the error of marking a position or for a frame's exposure. Those corrections come from the modern analysis of camera-based particle tracking, where the effective time τ − E/3 and the added 2σ² are standard results. The practice record is synthetic, and a record loaded here is the reader's own, not a reviewed measurement.
What this version admits
Classroom CSVs contain source-image coordinates, actual timestamps, per-axis calibration, stationary-feature clicks and physical-input declarations. The calculation uses one calibrated coordinate and disjoint frame pairs. Unknown click error, exposure or radius stays unknown. Invalid equal-spacing or calibration assumptions cannot acquire a confident-looking interval.
Manual exclusions preserve the recorded row and its reason, and withhold interval coverage after sample selection. Calibration and physical-input uncertainty are not included in a combined interval. A record marked reader-supplied is not automatically a verified experiment.
Local video annotation is available at the end of each laboratory; automatic session saving is not. Browser-reported orientation and frame timing are not an independent camera calibration. A CSV export preserves the accepted observations for later import; an analysis export records the result and its assumptions.