Assessment |
Biopsychology |
Comparative |
Cognitive |
Developmental |
Language |
Individual differences |
Personality |
Philosophy |
Social |
Methods |
Statistics |
Clinical |
Educational |
Industrial |
Professional items |
World psychology |
Statistics: Scientific method · Research methods · Experimental design · Undergraduate statistics courses · Statistical tests · Game theory · Decision theory
In mathematics, Fourier analysis is the study of the way general functions may be represented or approximated by sums of simpler trigonometric functions. Fourier analysis grew from the study of Fourier series, and is named after Joseph Fourier.
Today, the subject of Fourier analysis encompasses a vast spectrum of mathematics. In the sciences the process of decomposing a function into simpler pieces is often called Fourier analysis, while the operation of rebuilding the function from these pieces is known as Fourier synthesis. In mathematics, the term Fourier analysis often refers to the study of both operations.
The decomposition process itself is called a Fourier transform. The transform is often given a more specific name which depends upon the domain and other properties of the function being transformed. Moreover, the original concept of Fourier analysis has been extended over time to apply to more and more abstract and general situations, and the general field is often known as harmonic analysis. Each transform used for analysis (see list of Fourier-related transforms) has a corresponding inverse transform that can be used for synthesis.
ApplicationsEdit
Fourier analysis has many applications of interest to psychologists – in signal processing, probability theory, statistics, acoustics, optics, diffraction, structure and other areas.
So, for example, breaking up a time series or a periodic phenomena such as a sound wave into its sinusoidal components of different frequencies and amplitudes and fitting them to a Fourier transform makes them amenable to calculation
This wide applicability stems from many useful properties of the transforms:
- The transforms are linear operators and, with proper normalization, are unitary as well (a property known as Parseval's theorem or, more generally, as the Plancherel theorem, and most generally via Pontryagin duality) (Rudin 1990).
- The transforms are usually invertible.
- The exponential functions are eigenfunctions of differentiation, which means that this representation transforms linear differential equations with constant coefficients into ordinary algebraic ones (Evans 1998). Therefore, the behavior of a linear time-invariant system can be analyzed at each frequency independently.
- By the convolution theorem, Fourier transforms turn the complicated convolution operation into simple multiplication, which means that they provide an efficient way to compute convolution-based operations such as polynomial multiplication and multiplying large numbers (Knuth 1997).
- The discrete version of the Fourier transform (see below) can be evaluated quickly on computers using Fast Fourier Transform (FFT) algorithms. (Conte & de Boor 1980)
Fourier transformation is also useful as a compact representation of a signal. For example, JPEG compression uses a variant of the Fourier transformation (discrete cosine transform) of small square pieces of a digital image. The Fourier components of each square are rounded to lower arithmetic precision, and weak components are eliminated entirely, so that the remaining components can be stored very compactly. In image reconstruction, each image square is reassembled from the preserved approximate Fourier-transformed components, which are then inverse-transformed to produce an approximation of the original image.
Applications in signal processingEdit
When processing signals, such as audio, radio waves, light waves, seismic waves, and even images, Fourier analysis can isolate individual components of a compound waveform, concentrating them for easier detection and/or removal. A large family of signal processing techniques consist of Fourier-transforming a signal, manipulating the Fourier-transformed data in a simple way, and reversing the transformation.
Some examples include:
- Equalization of audio recordings with a series of bandpass filters;
- Digital radio reception with no superheterodyne circuit, as in a modern cell phone or radio scanner;
- Image processing to remove periodic or anisotropic artifacts such as jaggies from interlaced video, stripe artifacts from strip aerial photography, or wave patterns from radio frequency interference in a digital camera;
- Cross correlation of similar images for co-alignment;
- X-ray crystallography to reconstruct a crystal structure from its diffraction pattern;
- Fourier transform ion cyclotron resonance mass spectrometry to determine the mass of ions from the frequency of cyclotron motion in a magnetic field.
- Many other forms of spectroscopy also rely upon Fourier Transforms to determine the three-dimensional structure and/or identity of the sample being analyzed, including Infrared and Nuclear Magnetic Resonance spectroscopies.
- Generation of sound spectrograms used to analyze sounds.
- Passive sonar used to classify targets based on machinery noise.
Variants of Fourier analysisEdit
(Continuous) Fourier transform Edit
- Main article: Fourier Transform
Most often, the unqualified term Fourier transform refers to the transform of functions of a continuous real argument, and it produces a continuous function of frequency, known as a frequency distribution. One function is transformed into another, and the operation is reversible. When the domain of the input (initial) function is time (t), and the domain of the output (final) function is ordinary frequency, the transform of function s(t) at frequency ƒ is given by the complex number:
- $ S(f) = \int_{-\infty}^{\infty} s(t) \cdot e^{- i 2\pi f t} dt. $
Evaluating this quantity for all values of ƒ produces the frequency-domain function. Then s(t) can be represented as a recombination of complex exponentials of all possible frequencies:
- $ s(t) = \int_{-\infty}^{\infty} S(f) \cdot e^{i 2\pi f t} df, $
which is the inverse transform formula. The complex number, S(ƒ), conveys both amplitude and phase of frequency ƒ.
See Fourier transform for much more information, including:
- conventions for amplitude normalization and frequency scaling/units
- transform properties
- tabulated transforms of specific functions
- an extension/generalization for functions of multiple dimensions, such as images.
Fourier series Edit
- Main article: Fourier series
The Fourier transform of a periodic function, s_{P}(t), with period P, becomes a Dirac comb function, modulated by a sequence of complex coefficients:
- $ S[k] = \frac{1}{P}\int_{P} s_P(t)\cdot e^{-i 2\pi \frac{k}{P} t}\, dt $ for all integer values of k,
and where $ \scriptstyle \int_P $ is the integral over any interval of length P.
The inverse transform, known as Fourier series, is a representation of s_{P}(t) in terms of a summation of a potentially infinite number of harmonically related sinusoids or complex exponential functions, each with an amplitude and phase specified by one of the coefficients:
- $ s_P(t)=\sum_{k=-\infty}^\infty S[k]\cdot e^{i 2\pi \frac{k}{P} t} \quad\stackrel{\mathcal{F}}{\Longleftrightarrow}\quad \sum_{k=-\infty}^{+\infty} S[k]\ \delta \left(f-\frac{k}{P}\right). $
When s_{P}(t), is expressed as a periodic summation of another function, s(t): $ s_P(t)\ \stackrel{\text{def}}{=}\ \sum_{k=-\infty}^{\infty} s(t-kP), $
the coefficients are proportional to samples of S(ƒ) at discrete intervals of 1/P: $ S[k] =\frac{1}{P}\cdot S\left(\frac{k}{P}\right).\, $^{[note 1]}
A sufficient condition for recovering s(t) (and therefore S(ƒ)) from just these samples is that the non-zero portion of s(t) be confined to a known interval of duration P, which is the frequency domain dual of the Nyquist–Shannon sampling theorem.
See Fourier series for more information, including the historical development.
Discrete-time Fourier transform (DTFT) Edit
- Main article: Discrete-time Fourier transform
The DTFT is the mathematical dual of the time-domain Fourier series. Thus, a convergent periodic summation in the frequency domain can be represented by a Fourier series, whose coefficients are samples of a related continuous time function:
- $ S_{1/T}(f)\ \stackrel{\text{def}}{=}\ \underbrace{\sum_{k=-\infty}^{\infty} S\left(f - \frac{k}{T}\right) \equiv \overbrace{\sum_{n=-\infty}^{\infty} s[n] \cdot e^{-i 2\pi f n T}}^{\text{Fourier series (DTFT)}}}_{\text{Poisson summation formula}} = \mathcal{F} \left \{ \sum_{n=-\infty}^{\infty} s[n]\ \delta(t-nT)\right \},\, $
which is known as the DTFT. Thus the DTFT of the s[n] sequence is also the Fourier transform of the modulated Dirac comb function.^{[note 2]}
The Fourier series coefficients, defined by:
- $ s[n]\ \stackrel{\mathrm{def}}{=} \ T \int_{1/T} S_{1/T}(f)\cdot e^{i 2\pi f nT} df = T \underbrace{\int_{-\infty}^{\infty} S(f)\cdot e^{i 2\pi f nT} df}_{\stackrel{\mathrm{def}}{=} \ s(nT)}\, $
is the inverse transform. With s[n] = T•s(nT), this Fourier series can now be recognized as a form of the Poisson summation formula. Thus we have the important result that when a discrete data sequence, s[n], is proportional to samples of an underlying continuous function, s(t), one can observe a periodic summation of the continuous Fourier transform, S(ƒ). That is a cornerstone in the foundation of digital signal processing. Furthermore, under certain idealized conditions one can theoretically recover S(ƒ) and s(t) exactly. A sufficient condition for perfect recovery is that the non-zero portion of S(ƒ) be confined to a known frequency interval of width 1/T. When that interval is [-0.5/T, 0.5/T], the applicable reconstruction formula is the Whittaker–Shannon interpolation formula.
Another reason to be interested in S_{1/T}(ƒ) is that it often provides insight into the amount of aliasing caused by the sampling process.
Applications of the DTFT are not limited to sampled functions. See Discrete-time Fourier transform for more information on this and other topics, including:
- normalized frequency units
- windowing (finite-length sequences)
- transform properties
- tabulated transforms of specific functions
Discrete Fourier transform (DFT) Edit
- Main article: Discrete Fourier transform
The DTFT of a periodic sequence, s_{N}[n], with period N, becomes another Dirac comb function, modulated by the coefficients of a Fourier series. And the integral formula for the coefficients simplifies to a summation (see DTFT/Periodic data):
- $ S_N[k] =\frac{1}{NT} \underbrace{\sum_N s_N[n]\cdot e^{-i 2\pi \frac{k}{N} n}}_{S_k}\, $, where $ \scriptstyle \sum_N $ is the sum over any n-sequence of length N.
The S_{k} sequence is what's customarily known as the DFT of s_{N}. It is also N-periodic, so it is never necessary to compute more than N coefficients. In terms of S_{k}, the inverse transform is given by:
- $ s_N[n] = \frac{1}{N} \sum_{N} S_k\cdot e^{i 2\pi \frac{n}{N}k},\, $ where $ \scriptstyle \sum_N $ is the sum over any k-sequence of length N.
When s_{N}[n] is expressed as a periodic summation of another function: $ s_N[n]\ \stackrel{\text{def}}{=}\ \sum_{k=-\infty}^{\infty} s[n-kN], $ and $ s[n]\ \stackrel{\text{def}}{=}\ T\cdot s(nT),\, $
the coefficients are equivalent to samples of S_{1/T}(ƒ) at discrete intervals of 1/P = 1/NT: $ S_k = S_{1/T}(k/P).\, $ (see DTFT/Sampling the DTFT)
Conversely, when one wants to compute an arbitrary number (N) of discrete samples of one cycle of a continuous DTFT, $ S_{1/T}(f),\, $ it can be done by computing the relatively simple DFT of s_{N}[n], as defined above. In most cases, N is chosen equal to the length of non-zero portion of s[n]. Increasing N, known as zero-padding or interpolation, results in more closely spaced samples of one cycle of S_{1/T}(ƒ). Decreasing N, causes overlap (adding) in the time-domain (analogous to aliasing), which corresponds to decimation in the frequency domain. (see Sampling the DTFT) In most cases of practical interest, the s[n] sequence represents a longer sequence that was truncated by the application of a finite-length window function or FIR filter array.
The DFT can be computed using a fast Fourier transform (FFT) algorithm, which makes it a practical and important transformation on computers.
See Discrete Fourier transform for much more information, including:
- transform properties
- applications
- tabulated transforms of specific functions
SummaryEdit
For periodic functions, both the Fourier transform and the DTFT comprise only a discrete set of frequency components (Fourier series), and the transforms diverge at those frequencies. One common practice (not discussed above) is to handle that divergence via Dirac delta and Dirac comb functions. But the same spectral information can be discerned from just one cycle of the periodic function, since all the other cycles are identical. Similarly, finite-duration functions can be represented as a Fourier series, with no actual loss of information except that the periodicity of the inverse transform is a mere artifact. We also note that none of the formulas here require the duration of $ s\, $ to be limited to the period, P or N. But that is a common situation, in practice.
Continuous frequency | Discrete frequencies | |
---|---|---|
Transform | $ S(f)\ \stackrel{\text{def}}{=}\ \int_{-\infty}^{\infty} s(t)\ e^{-i 2\pi f t}\,dt $ | $ \underbrace{\frac{1}{P}\cdot S\left(\frac{k}{P}\right)}_{S[k]}\ \stackrel{\text{def}}{=}\ \frac{1}{P} \int_{-\infty}^{\infty} s(t)\ e^{-i 2\pi \frac{k}{P} t}\,dt \equiv \frac{1}{P} \int_P s_P(t)\ e^{-i 2\pi \frac{k}{P} t}\,dt $ |
Inverse | $ s(t) = \int_{-\infty}^{\infty} S(f)\ e^{ i 2 \pi f t}\,df $ | $ \underbrace{s_P(t) = \sum_{k=-\infty}^{\infty} S[k] \cdot e^{i 2\pi \frac{k}{P} t}}_{\text{Poisson summation formula (Fourier series)}} $ |
Continuous frequency | Discrete frequencies | |
---|---|---|
Transform | $ \underbrace{S_{1/T}(f) = \sum_{n=-\infty}^{\infty} \overbrace{T\cdot s(nT)}^{s[n]}\cdot e^{-i 2\pi f nT}}_{\text{Poisson summation formula (DTFT)}} $ | $ \underbrace{\overbrace{S_{1/T}\left(\frac{k}{NT}\right)}^{S_k} = \sum_{n=-\infty}^{\infty} s[n]\cdot e^{-i 2\pi \frac{kn}{N}}}_{\text{Poisson summation formula}} \equiv \underbrace{\sum_{N} s_N[n]\cdot e^{-i 2\pi \frac{kn}{N}}}_{\text{DFT}} $ |
Inverse | $ s[n] = T \int_{1/T} S_{1/T}(f)\cdot e^{i 2\pi f nT} \,df $
$ \sum_{n=-\infty}^{\infty} s[n]\cdot \delta(t-nT) = \underbrace{\int_{-\infty}^{\infty} S_{1/T}(f)\cdot e^{i 2\pi f t}\,df}_{\text{inverse Fourier transform}} $ | $ s_N[n] = \underbrace{\frac{1}{N} \sum_{N} S_k\cdot e^{i 2\pi \frac{kn}{N}}}_{\text{inverse DFT}} $
$ s_P(nT) = \frac{1}{T}\cdot s_N[n] = \sum_{N} \underbrace{\frac{1}{P}\cdot S_{1/T}\left(\frac{k}{P}\right)}_{S_{N}[k]} \cdot e^{i 2\pi \frac{kn}{N}} $ |
Fourier transforms on arbitrary locally compact abelian topological groupsEdit
The Fourier variants can also be generalized to Fourier transforms on arbitrary locally compact abelian topological groups, which are studied in harmonic analysis; there, the Fourier transform takes functions on a group to functions on the dual group. This treatment also allows a general formulation of the convolution theorem, which relates Fourier transforms and convolutions. See also the Pontryagin duality for the generalized underpinnings of the Fourier transform.
Time–frequency transformsEdit
- For more details on this topic, see Time–frequency analysis.
In signal processing terms, a function (of time) is a representation of a signal with perfect time resolution, but no frequency information, while the Fourier transform has perfect frequency resolution, but no time information.
As alternatives to the Fourier transform, in time–frequency analysis, one uses time–frequency transforms to represent signals in a form that has some time information and some frequency information – by the uncertainty principle, there is a trade-off between these. These can be generalizations of the Fourier transform, such as the short-time Fourier transform, the Gabor transform or fractional Fourier transform (FRFT), or can use different functions to represent signals, as in wavelet transforms and chirplet transforms, with the wavelet analog of the (continuous) Fourier transform being the continuous wavelet transform.
History Edit
- See also: Fourier series#Historical development
A primitive form of harmonic series dates back to ancient Babylonian mathematics, where they were used to compute ephemerides (tables of astronomical positions).^{[1]} The classical Greek concepts of deferent and epicycle in the Ptolemaic system of astronomy were related to Fourier series (see Deferent and epicycle: Mathematical formalism).
In modern times, variants of the discrete Fourier transform were used by Alexis Clairaut in 1754 to compute an orbit,^{[2]} which has been described as the first formula for the DFT,^{[3]} and in 1759 by Joseph Louis Lagrange, in computing the coefficients of a trigonometric series for a vibrating string.^{[4]} Technically, Clairaut's work was a cosine-only series (a form of discrete cosine transform), while Lagrange's work was a sine-only series (a form of discrete sine transform); a true cosine+sine DFT was used by Gauss in 1805 for trigonometric interpolation of asteroid orbits.^{[5]} Euler and Lagrange both discretized the vibrating string problem, using what would today be called samples.^{[4]}
An early modern development toward Fourier analysis was the 1770 paper Réflexions sur la résolution algébrique des équations by Lagrange, which in the method of Lagrange resolvents used a complex Fourier decomposition to study the solution of a cubic:^{[6]} Lagrange transformed the roots $ x_1,x_2,x_3 $ into the resolvents:
- $ \begin{align} r_1 &= x_1 + x_2 + x_3\\ r_2 &= x_1 + \zeta x_2 + \zeta^2 x_3\\ r_3 &= x_1 + \zeta^2 x_2 + \zeta x_3 \end{align} $
where ζ is a cubic root of unity, which is the DFT of order 3.
A number of authors, notably Jean le Rond d'Alembert, and Carl Friedrich Gauss used trigonometric series to study the heat equation,^{[citation needed]} but the breakthrough development was the 1807 paper Mémoire sur la propagation de la chaleur dans les corps solides by Joseph Fourier, whose crucial insight was to model all functions by trigonometric series, introducing the Fourier series.
Historians are divided as to how much to credit Lagrange and others for the development of Fourier theory: Daniel Bernoulli and Leonhard Euler had introduced trigonometric representations of functions,^{[3]} and Lagrange had given the Fourier series solution to the wave equation,^{[3]} so Fourier's contribution was mainly the bold claim that an arbitrary function could be represented by a Fourier series.^{[3]}
The subsequent development of the field is known as harmonic analysis, and is also an early instance of representation theory.
The first fast Fourier transform (FFT) algorithm for the DFT was discovered around 1805 by Carl Friedrich Gauss when interpolating measurements of the orbit of the asteroids Juno and Pallas, although that particular FFT algorithm is more often attributed to its modern rediscoverers Cooley and Tukey.^{[5]}^{[7]}
Interpretation in terms of time and frequencyEdit
In signal processing, the Fourier transform often takes a time series or a function of continuous time, and maps it into a frequency spectrum. That is, it takes a function from the time domain into the frequency domain; it is a decomposition of a function into sinusoids of different frequencies; in the case of a Fourier series or discrete Fourier transform, the sinusoids are harmonics of the fundamental frequency of the function being analyzed.
When the function ƒ is a function of time and represents a physical signal, the transform has a standard interpretation as the frequency spectrum of the signal. The magnitude of the resulting complex-valued function F at frequency ω represents the amplitude of a frequency component whose initial phase is given by the phase of F.
Fourier transforms are not limited to functions of time, and temporal frequencies. They can equally be applied to analyze spatial frequencies, and indeed for nearly any function domain. This justifies their use in branches such diverse as image processing, heat conduction, and automatic control.
NotesEdit
- ↑
- $ \int_{P} \left[\sum_{k=-\infty}^{\infty} s(t-kP)\right] \cdot e^{-i 2\pi \frac{k}{P} t} dt = \underbrace{\int_{-\infty}^{\infty} s(t) \cdot e^{-i 2\pi \frac{k}{P} t} dt}_{\stackrel{\mathrm{def}}{=}\ S(k/P)} $
- ↑ We may also note that:
$ \scriptstyle \sum_{n=-\infty}^{+\infty} T\ s(nT)\ \delta(t-nT)\ =\ \sum_{n=-\infty}^{+\infty} T\ s(t)\ \delta(t-nT)\ =\ s(t)\cdot T \sum_{n=-\infty}^{+\infty} \delta(t-nT). $
Consequently, a common practice is to model "sampling" as a multiplication by the Dirac comb function, which of course is only "possible" in a purely mathematical sense.
See alsoEdit
- Generalized Fourier series
- Fourier-Bessel series
- Fourier-related transforms
- Laplace transform (LT)
- Two-sided Laplace transform
- Mellin transform
- Non-uniform discrete Fourier transform (NDFT)
- Quantum Fourier transform (QFT)
- Number-theoretic transform
- Least-squares spectral analysis
- Basis vectors
- Bispectrum
- Characteristic function (probability theory)
- Orthogonal functions
- Schwartz space
- Spectral density
- Spectral density estimation
- Spectral music
- Wavelet
CitationsEdit
- ↑ Prestini, Elena (2004), The evolution of applied harmonic analysis: models of the real world, Birkhäuser, ISBN 978-0-8176-4125-2, http://books.google.com/?id=fye--TBu4T0C, p. 62
Rota, Gian-Carlo; Palombi, Fabrizio (1997), Indiscrete thoughts, Birkhäuser, ISBN 978-0-8176-3866-5, http://books.google.com/?id=H5smrEExNFUC, p. 11
Neugebauer, Otto (1969) [1957], The Exact Sciences in Antiquity (2 ed.), Dover Publications, ISBN 978-0-486-22332-2, http://books.google.com/?id=JVhTtVA2zr8C
Brack-Bernsen, Lis; Brack, Matthias, Analyzing shell structure from Babylonian and modern times - ↑ Terras, Audrey (1999), Fourier analysis on finite groups and applications, Cambridge University Press, ISBN 978-0-521-45718-7, http://books.google.com/?id=-B2TA669dJMC, p. 30
- ↑ ^{3.0} ^{3.1} ^{3.2} ^{3.3} Briggs, William L.; Henson, Van Emden (1995), The DFT : an owner's manual for the discrete Fourier transform, SIAM, ISBN 978-0-89871-342-8, http://books.google.com/?id=coq49_LRURUC, p. 4
- ↑ ^{4.0} ^{4.1} Briggs, William L.; Henson, Van Emden (1995), The DFT: an owner's manual for the discrete Fourier transform, SIAM, ISBN 978-0-89871-342-8, http://books.google.com/?id=coq49_LRURUC, p. 2
- ↑ ^{5.0} ^{5.1} Heideman, M. T., D. H. Johnson, and C. S. Burrus, "Gauss and the history of the fast Fourier transform," IEEE ASSP Magazine, 1, (4), 14–21 (1984)
- ↑ Knapp, Anthony W. (2006), Basic algebra, Springer, ISBN 978-0-8176-3248-9, http://books.google.com/?id=KVeXG163BggC, p. 501
- ↑ Terras, Audrey (1999), Fourier analysis on finite groups and applications, Cambridge University Press, ISBN 978-0-521-45718-7, http://books.google.com/?id=-B2TA669dJMC, p. 31
ReferencesEdit
- Conte, S. D.; de Boor, Carl (1980), Elementary Numerical Analysis (Third ed.), New York: McGraw Hill, Inc., ISBN 0-07-066228-2
- Evans, L. (1998), Partial Differential Equations, American Mathematical Society, ISBN 3-540-76124-1
- Howell, Kenneth B. (2001). Principles of Fourier Analysis, CRC Press. ISBN 978-0-8493-8275-8
- Kamen, E.W., and B.S. Heck. "Fundamentals of Signals and Systems Using the Web and Matlab". ISBN 0-13-017293-6
- Knuth, Donald E. (1997), The Art of Computer Programming Volume 2: Seminumerical Algorithms (3rd ed.), Section 4.3.3.C: Discrete Fourier transforms, pg.305: Addison-Wesley Professional, ISBN 0-201-89684-2
- Polyanin, A.D., and A.V. Manzhirov (1998). Handbook of Integral Equations, CRC Press, Boca Raton. ISBN 0-8493-2876-4
- Rudin, Walter (1990), Fourier Analysis on Groups, Wiley-Interscience, ISBN 0-471-52364-X
- Smith, Steven W. (1999), The Scientist and Engineer's Guide to Digital Signal Processing (Second ed.), San Diego, Calif.: California Technical Publishing, ISBN 0-9660176-3-3, http://www.dspguide.com/pdfbook.htm
- Stein, E.M., and G. Weiss (1971). Introduction to Fourier Analysis on Euclidean Spaces. Princeton University Press. ISBN 0-691-08078-X
External linksEdit
- Tables of Integral Transforms at EqWorld: The World of Mathematical Equations.
- An Intuitive Explanation of Fourier Theory by Steven Lehar.
- Lectures on Image Processing: A collection of 18 lectures in pdf format from Vanderbilt University. Lecture 6 is on the 1- and 2-D Fourier Transform. Lectures 7–15 make use of it., by Alan Peters
- Moriarty, Philip, Bowley, Roger (2009). ∑ Summation (and Fourier Analysis). Sixty Symbols. Brady Haran for the University of Nottingham.
This page uses Creative Commons Licensed content from Wikipedia (view authors). |