What are structure functions?

The structure functions (SFs) calculated within this package are statistics that describe how fluid properties vary between pairs of points as a function of their separation vector (\(\mathbf{r}\)), averaged over all pairs of points with the same separation vector. There are numerous structure functions, describing different-order correlations of various variables, that can provide fundamental insights into the physical properties of dynamic fluid systems.

Structure functions and how to calculate them

Scalar Structure Functions

When a scalar property, arbitrarily \(\phi\), is measured at various locations, we can calculate second-order structure functions that describe the scalar’s spatial variations:

\[SF_{\phi\phi}(\mathbf{r}) = \overline{{\left[\phi(\mathbf{x}+\mathbf{r}) - \phi(\mathbf{x})\right]^2}} = \overline{{\left[\delta \phi \right]^2}}\]

where \(\theta(\mathbf{x})\) is the scalar at position \(\mathbf{x}\), and \(\mathbf{r}\) is the separation vector between pairs of points. The overline represents an average over all pairs of data in the flow field that are separated by \(\mathbf{r}\), and \(\delta \phi\) is a short-hand notation for the spatial difference in the scalar. This second-order (i.e. product of two \(\delta\)) structure function can be used to characterize the distribution of scalar variance across different scales of motion (McCaffrey et al., 2015), analogous to the power spectra of the scalar field. Common scalars for fluid systems include temperature, density, and (vertical) vorticity.

Velocity Structure Functions

Since velocity is a vector, structure functions often decompose a (two dimensional) velocity field into a longitudinal component (\(u_L = \mathbf{u} \cdot \mathbf{\hat{r}}\)) and a transverse component (\(u_T = \mathbf{u} \times \mathbf{\hat{r}}\)). These velocity components can be visualized by considering a pair of velocity observations separated by a vector \(\mathbf{r}\), as illustrated below.

A diagram showing two moorings in the ocean separated by a distance r.

There are a variety of physically-useful velocity structure functions including second-order structure functions of both velocity components,

\[SF_{LL}(\mathbf{r}) = \overline{{\left[u_L(\mathbf{x}+\mathbf{r}) - u_L(\mathbf{x})\right]^2}} = \overline{{\left[\delta u_L \right]^2}}\]
\[SF_{TT}(\mathbf{r}) = \overline{{\left[\delta u_T \right]^2}}\]

The spatial variations of \(SF_{LL}\) and \(SF_{TT}\), and their ratio, are often used to explore the distribution of energy across scales (LaCasce, 2016), and the relative prevalence of rotational and divergent motions within a fluid (Lindborg, 2015).

It is also common to utilize third-order velocity structure functions,

\[SF_{LLL}(\mathbf{r}) = \overline{{\left[\delta u_L \right]^3}}\]
\[SF_{LTT}(\mathbf{r}) = \overline{{\left[\delta u_L \right]\left[\delta u_T \right]^2}}\]
\[SF_{L\phi \phi}(\mathbf{r}) = \overline{{\left[\delta u_L \right]\left[\delta \phi \right]^2}}\]

which can provide information about the inter-scale transfers of energy (\(SF_{LTT}\) and \(SF_{LTT}\)) or tracer variance (\(SF_{L\phi\phi}\)) within a fluid flow. Note that \(SF_{LTT}\) and \(SF_{L\phi\phi}\) are blended structure functions, in that they utilize the spatial differences of multiple properties.

Now consider an array of moorings. The structure function is calculated for all pairs of moorings separated by \(r\), and the average is taken over all pairs. The diagram below depicts an array of moorings and highlights mooring pairs with separation vectors of \(r = 1\), \(r = 2\), and \(r = 3\).

3 figures showing a grid of data points in a flow field. The separation vector r is shown between pairs of data points where the first panel is shows r = 1, the second panel shows r = 2, and the third panel shows r = 3.

Advective structure functions

Advective structure functions (herein ASFs) are a novel type of blended structure function (Pearson et al., 2021). The advective structure functions for velocity and scalars are,

\[ASF_{velocity}(\mathbf{r}) = \overline{\delta \mathbf{u} \cdot \delta \boldsymbol{\mathcal{A}}_{\mathbf{u}}}\]
\[ASF_{\phi}(\mathbf{r}) = \overline{\delta \phi \delta \mathcal{A}_{\phi}}\]

As the name suggests, advective structure functions depend on the advection of scalars (\(\mathcal{A}_{\phi}(\mathbf{x}) = \left[\mathbf{u} \cdot \nabla\right] \phi\)) or velocity (\(\boldsymbol{\mathcal{A}}_{\mathbf{u}}(\mathbf{x}) = \left[\mathbf{u} \cdot \nabla\right] \mathbf{u}\)) where \(\nabla\) is the gradient operator.

Similar to the third-order structure functions above, advective structure functions can provide information about inter-scale transfers of energy, enstrophy, and tracer variance in simple/idealized flows. An advantage of advective structure functions is that can also be used to diagnose these properties to more complex flows (e.g., with strong anisotropy), and have different statisical properties (Pearson et al., 2021).

Example relations between various structure functions and turbulent properties

As mentioned earlier, structure functions have been used to estimate to infer physical properties of turbulent properties. For example, in 2D turbulence, the following table shows several SF relationships that can be used to diagnose the inverse (upscale) cascade rate of energy (after some assumptions about flow properties):

Structure function

Relation to 2D upscale energy transfer (\(\epsilon>0\))

Reference

\(SF_{LLL}\)

\(\frac{3}{2}\epsilon r\)

Lindborg (1999)

\(SF_{L\mathbf{u}\mathbf{u}}=SF_{LLL}+SF_{LTT}\)

\(2\epsilon r\)

Lindborg (1999)

\(ASF_{velocity}\)

\(2\epsilon\)

Pearson et al. (2021)

References