Instantaneous phase

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found.

Instantaneous phase and instantaneous frequency are important concepts in signal processing that occur in the context of the representation and analysis of time-varying functions. The instantaneous phase (or "local phase" or simply "phase") of a complex-valued function s(t), is the real-valued function:

\phi(t) = \arg[s(t)],

where arg is the argument function.

And for a real-valued function s(t), it is determined from the function's analytic representation, sa(t):[1]

\phi(t) = \arg[s_\mathrm{a}(t)].

When φ(t) is constrained to its principal value, either the interval (-π, π] or [0, 2π), it is called wrapped phase. Otherwise it is called unwrapped phase, which is a continuous function of argument t, assuming sa(t) is a continuous function of t. Unless otherwise indicated, the continuous form should be inferred.

File:Phase vs Time, wrapped and unwrapped.jpg
Instantaneous phase vs time.

Examples

Example 1

s(t) = A \cos(\omega t + \theta),

where ω > 0.

s_\mathrm{a}(t) = A e^{j(\omega t + \theta)},
\phi(t) = \omega t + \theta.

In this simple sinusoidal example, the constant θ is also commonly referred to as phase or phase offset. φ(t) is a function of time; θ is not. In the next example, we also see that the phase offset of a real-valued sinusoid is ambiguous unless a reference (sin or cos) is specified. φ(t) is unambiguously defined.

Example 2

s(t) = A \sin(\omega t) = A \cos(\omega t - \pi/2),

where ω > 0.

s_\mathrm{a}(t) = A e^{j (\omega t - \pi/2)},
\phi(t) = \omega t - \pi/2.

In both examples the local maxima of s(t) correspond to φ(t) = 2πN for integer values of N. This has applications in the field of computer vision.

Instantaneous frequency

Instantaneous angular frequency is defined as:

\omega(t) = \frac{d\phi}{dt}(t),

and instantaneous frequency is defined as:

f(t) = \frac{1}{2\pi} \frac{d\phi}{dt}(t) = \frac{\omega(t)}{2\pi}.

The inverse operation is:

\begin{align}
\phi(t)
&= 2 \pi \int_{-\infty}^t f(\tau)\, d\tau\\
&= 2\pi \int_{-\infty}^0 f(\tau)\, d\tau + 2 \pi \int_{0}^{t} f(\tau)\, d\tau\\
&= \phi(0) + 2 \pi \int_0^t f(\tau)\, d\tau.
\end{align}

For discrete-time functions, this can be written as a recursion:

\phi(nT) = \phi[(n - 1)T] + 2\pi Tf(nT) = \phi[(n - 1)T] + \underbrace{\arg[s_\mathrm{a}(nT)] - \arg[s_\mathrm{a}((n - 1)T)]}_{\Delta \phi(nT)}.

Discontinuities can then be removed by adding 2π whenever Δφ(nT) ≤ −π, and subtracing 2π whenever Δφ(nT) > π. That allows φ(nT) to accumulate without limit and produces an unwrapped instantaneous phase. An equivalent formulation that replaces the modulo 2π operation with a complex multiplication is:

\phi(nT) = \phi[(n - 1)T] + \arg[s_\mathrm{a}(nT)\, s_\mathrm{a}^*((n-1)T)],

where the asterisk denotes complex conjugate.

Complex representation

In some applications, such as averaging the values of phase at several moments of time, it may be useful to convert each value to a complex number, or vector representation:[2]

\begin{align}
e^{i\phi(t)}
&= \frac{s_\mathrm{a}(t)}{|s_\mathrm{a}(t)|}\\
&= \cos[\phi(t)] + i \sin[\phi(t)].
\end{align}

This representation is similar to the wrapped phase representation in that it does not distinguish between multiples of 2π in the phase, but similar to the unwrapped phase representation since it is continuous. A vector-average phase can be obtained as the arg of the sum of the complex numbers without concern about wrap-around.

See also

Citations

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.

References

  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.