Skip to main content

β: This English translation is in beta — the Traditional-Chinese original is the authoritative version.

Math Toolbox — Math Identities

See also: notation (authoritative symbols and units), glossary (Chinese–English term intuitions), convolution_derivation (LTV convolution uses the tools on this page), white_noise_to_phase_noise (application site for Parseval/integrator response)

ISF theory looks very "circuits," but its skeleton is really a handful of standard math tools combined repeatedly. This page collects them, gives each a short proof or citation, and marks which page on the site uses it. Come back here when a derivation stalls — it beats memorizing formulas by rote.

How to use this page: each section first gives "one line on what it says," then "why it holds" (proof or citation), and finally "where on the site it's used." Every quantity carries units — doing a dimension check is always the fastest way to catch mistakes.


1. Fourier series and Parseval (harmonic decomposition of the ISF)

One line: any 2π2\pi-periodic real function can be split into DC plus a set of harmonics; its "total energy" equals the sum of each harmonic's energy. This is the mathematical basis for splitting the ISF Γ(ω0τ)\Gamma(\omega_0\tau) into c0,c1,c2,c_0,c_1,c_2,\dots.

The ISF is a dimensionless, 2π2\pi-periodic function, written as a cosine series ([P1] Eq.(12), p.183):

Γ(ω0τ)=c02+n=1cncos(nω0τ+θn)\Gamma(\omega_0\tau)=\frac{c_0}{2}+\sum_{n=1}^{\infty}c_n\cos(n\omega_0\tau+\theta_n)

Write the argument as x=ω0τx=\omega_0\tau. Parseval's relation ([P1] Eq.(20), p.185):

n=0cn2=1π02πΓ(x)2dx=2Γrms2\sum_{n=0}^{\infty}c_n^2=\frac{1}{\pi}\int_0^{2\pi}|\Gamma(x)|^2\,dx=2\,\Gamma_{rms}^2

Why it holds (short proof): square the series and integrate from 00 to 2π2\pi. Cosines of different harmonics are mutually orthogonal,

02πcos(mx+θm)cos(nx+θn)dx=πδmn(m,n1),\int_0^{2\pi}\cos(mx+\theta_m)\cos(nx+\theta_n)\,dx=\pi\,\delta_{mn}\quad(m,n\ge1),

so the cross terms all vanish, leaving only the square terms: each cncos()c_n\cos(\cdot) term contributes cn2πc_n^2\cdot\pi, and the DC term (c02)2\left(\frac{c_0}{2}\right)^2 contributes (c02)22π=c022π\left(\frac{c_0}{2}\right)^2\cdot 2\pi=\frac{c_0^2}{2}\pi. Dividing both sides by π\pi gives n=1cn2+c022\sum_{n=1}^{\infty}c_n^2+\frac{c_0^2}{2}. Hajimiri–Lee write the DC term as c022\frac{c_0^2}{2} (note the n=0n=0 term is counted as only half in the sum), and rearranging gives exactly the form above.

rms definition consistency check: Γrms2=12π02πΓ(x)2dx\Gamma_{rms}^2=\frac{1}{2\pi}\int_0^{2\pi}|\Gamma(x)|^2\,dx (rms is just "root mean square": square first, average, then take the root). Substituting into the right-hand side of Parseval: 1π=212π=2Γrms2\frac{1}{\pi}\int=2\cdot\frac{1}{2\pi}\int=2\Gamma_{rms}^2 ✓.

Numerical feel: for the ideal LC, Γ(θ)=sinθ\Gamma(\theta)=-\sin\theta, only c1=1c_1=1 (all others 0). Γrms2=12π02πsin2θdθ=12\Gamma_{rms}^2=\frac{1}{2\pi}\int_0^{2\pi}\sin^2\theta\,d\theta=\frac12, so Γrms=1/20.707\Gamma_{rms}=1/\sqrt2\approx0.707; the right-hand side of Parseval, 2×12=1=c122\times\frac12=1=c_1^2 ✓.

Used on this site: fourier_series_of_isf (splitting the ISF into harmonics, explaining how noise near nω0n\omega_0 downconverts), rms_isf, lab_05 (numerically verifying cn2=2Γrms2\sum c_n^2=2\Gamma_{rms}^2).


2. Convolution and the LTI vs LTV distinction (why the oscillator is "time-variant")

One line: an LTI (linear time-invariant) system's impulse response depends only on "how long ago" tτt-\tau; an LTV (linear time-variant) system also depends on "at what instant it's kicked" τ\tau. The oscillator's response to noise is LTV — this is the core of ISF theory.

LTI superposition is standard convolution:

y(t)=h(tτ)x(τ)dτ.y(t)=\int_{-\infty}^{\infty}h(t-\tau)\,x(\tau)\,d\tau .
  • Core feature: hh depends only on the difference tτt-\tau (time-invariant). Delay the input, and the output is delayed unchanged.

The oscillator's excess-phase impulse response, however, is ([P1] Eq.(10), p.182):

hϕ(t,τ)=Γ(ω0τ)qmaxu(tτ).h_\phi(t,\tau)=\frac{\Gamma(\omega_0\tau)}{q_{max}}\,u(t-\tau).

It simultaneously depends on τ\tau (via Γ(ω0τ)\Gamma(\omega_0\tau) — at what phase of the waveform it's kicked) and on tτt-\tau (via the step u(tτ)u(t-\tau) — it persists permanently after being kicked). Superposing all past noise ([P1] Eq.(11), p.182):

ϕ(t)=hϕ(t,τ)in(τ)dτ=1qmaxtΓ(ω0τ)in(τ)dτ.\phi(t)=\int_{-\infty}^{\infty}h_\phi(t,\tau)\,i_n(\tau)\,d\tau=\frac{1}{q_{max}}\int_{-\infty}^{t}\Gamma(\omega_0\tau)\,i_n(\tau)\,d\tau .

Why it's LTV, not LTI: because Γ(ω0τ)\Gamma(\omega_0\tau) is a periodic function of the absolute instant of injection. The same impulse, kicked at the peak (Γ0\Gamma\approx0), barely changes phase; kicked at the zero crossing (Γ|\Gamma| maximal), changes it the most. This is exactly [P1] Sec. III's claim C1: "the oscillator's response to noise is linear time-variant, not LTI."

Unit check: hϕh_\phi has units of 1/C1/\text{C} (Γ\Gamma dimensionless, qmaxq_{max} in C, uu dimensionless), hϕindτ\int h_\phi\, i_n\, d\tau has units =(1/C)As=(1/C)C==(1/\text{C})\cdot\text{A}\cdot\text{s}=(1/\text{C})\cdot\text{C}= dimensionless == rad ✓.

Used on this site: impulse_to_phase_shift, convolution_derivation, lab_04 (lti_vs_ltv_impulse_response.png: LTI's step height is fixed, LTV's step height varies with injection phase).


3. The integrator's frequency response 1/(jω)1/(j\omega) (why white noise → 1/f² phase noise)

One line: phase is the "integral" of noise current (the upper limit of Eq.(11) is tt); an integrator in the frequency domain is 1/(jω)1/(j\omega), and in power terms 1/ω21/\omega^2. This is the source of the 20-20 dB/dec slope.

For an ideal integrator y(t)=tx(τ)dτy(t)=\int_{-\infty}^{t}x(\tau)\,d\tau, with a single tone x(t)=ejωtx(t)=e^{j\omega t}:

tejωτdτ=1jωejωt    H(jω)=1jω.\int^{t}e^{j\omega\tau}\,d\tau=\frac{1}{j\omega}e^{j\omega t}\;\Rightarrow\;H(j\omega)=\frac{1}{j\omega}.
  • Magnitude: H(jω)=1/ω|H(j\omega)|=1/\omega. Power (PSD multiplier): H2=1/ω2|H|^2=1/\omega^2.
  • dB slope: 10log10(1/ω2)=20log10ω10\log_{10}(1/\omega^2)=-20\log_{10}\omega, 20-20 dB per decade — exactly the 1/f21/f^2-region slope of phase noise.

Connecting to the ISF: taking Γ\Gamma's rms as an effective gain, the noise-current PSD SiS_i, after "multiplying by Γrms/qmax\Gamma_{rms}/q_{max} then integrating," gives the phase PSD:

Sϕ(Δω)=Γrms2qmax2SiΔω2.S_\phi(\Delta\omega)=\frac{\Gamma_{rms}^2}{q_{max}^2}\cdot\frac{S_i}{\Delta\omega^2}.
  • Unit check (using C=As\text{C}=\text{A}\cdot\text{s}):
1C2A2/Hz(rad/s)2=A2/HzC2s2=A2/HzA2=1Hz=rad2/Hz \frac{1}{\text{C}^2}\cdot\frac{\text{A}^2/\text{Hz}}{(\text{rad/s})^2}=\frac{\text{A}^2/\text{Hz}}{\text{C}^2\cdot\text{s}^{-2}}=\frac{\text{A}^2/\text{Hz}}{\text{A}^2}=\frac{1}{\text{Hz}}=\text{rad}^2/\text{Hz}\ \checkmark

Factor-of-2 note: using the equation above (a clean time-domain derivation) gives L=12Sϕ\mathcal{L}=\frac12 S_\phi, corresponding to a denominator of 2Δω22\Delta\omega^2; whereas [P1] Eq.(21), p.185 writes 4Δω24\Delta\omega^2. The factor-of-2 difference is an SSB bookkeeping convention, a well-known minor point of contention in the literature, and does not affect the Γrms2/qmax2\Gamma_{rms}^2/q_{max}^2 scaling or the 20-20 dB/dec slope. See white_noise_to_phase_noise for details.

Used on this site: white_noise_to_phase_noise, lab_06.


4. The PSD of a stochastic process and the Wiener–Khinchin theorem

One line: a stationary stochastic process's "power spectral density" (PSD) is the Fourier transform of its "autocorrelation function." This connects time-domain noise (autocorrelation) with frequency-domain noise (PSD), and is the foundation of every phase-noise calculation.

For a stationary stochastic process x(t)x(t), the autocorrelation is Rx(τ)=x(t)x(t+τ)R_x(\tau)=\langle x(t)\,x(t+\tau)\rangle. Wiener–Khinchin theorem:

Sx(ω)=Rx(τ)ejωτdτ.S_x(\omega)=\int_{-\infty}^{\infty}R_x(\tau)\,e^{-j\omega\tau}\,d\tau .
  • White-noise special case: Rx(τ)=N02δ(τ)R_x(\tau)=\frac{N_0}{2}\delta(\tau) (completely uncorrelated at different instants) Sx(ω)=N02\Rightarrow S_x(\omega)=\frac{N_0}{2} (frequency-independent — that's what "white" means). This site uses the single-sided PSD Si=in2/ΔfS_i=\overline{i_n^2}/\Delta f (A²/Hz).
  • Variance (total power):
σx2=Rx(0)=12πSx(ω)dω=0Sx(1-side)(f)df.\sigma_x^2=R_x(0)=\frac{1}{2\pi}\int_{-\infty}^{\infty}S_x(\omega)\,d\omega=\int_0^{\infty}S_x^{(1\text{-side})}(f)\,df .

This is where the phase-variance formula σϕ2=f1f2Sϕ(f)df\sigma_\phi^2=\int_{f_1}^{f_2}S_\phi(f)\,df comes from: phase variance is the integral of the phase PSD over frequency ([P1]'s usage convention; a standard stochastic-process result).

Unit check: SϕS_\phi is in rad²/Hz, Sϕdf\int S_\phi\, df has units =rad2/HzHz=rad2=\text{rad}^2/\text{Hz}\cdot\text{Hz}=\text{rad}^2 ✓.

External source: Wiener–Khinchin is a standard stochastic-process theorem (not among the five downloaded PDFs, standard textbook material, e.g. Papoulis; [P1] uses its conclusion directly).

Used on this site: psd_phase_noise_jitter, stochastic_processes_recap, lab_06 (estimating PSD via Welch's method), lab_08 (integrating PSD to get jitter).


5. 10log1010\log_{10} / dB and dBc/Hz conversion

One line: dB is a "log scale of a power ratio"; dBc/Hz is the phase-noise unit "power relative to the carrier, per Hz of bandwidth." Remembering "×10\times10 power =+10=+10 dB, ×2\times2 power +3\approx+3 dB" is enough to get by.

Definition (power ratio):

XdB=10log10 ⁣(PPref).X_{\text{dB}}=10\log_{10}\!\left(\frac{P}{P_{ref}}\right).
  • Voltage/amplitude ratio: because power \propto amplitude2^2, XdB=20log10(V/Vref)X_{\text{dB}}=20\log_{10}(V/V_{ref}) (an extra factor of 2).
  • Inverse conversion: P/Pref=10XdB/10P/P_{ref}=10^{X_{\text{dB}}/10}.
  • SSB phase noise L(Δf)\mathcal{L}(\Delta f)'s unit is dBc/Hz: "c" = relative to carrier, "/Hz" = per unit bandwidth. Its relation to the phase PSD (small-angle approximation, see Section 6):
L(Δf)12Sϕ(Δf)LdBc/Hz=10log10 ⁣(12Sϕ),    Sϕ=210LdBc/Hz/10 rad2/Hz.\mathcal{L}(\Delta f)\approx\frac12 S_\phi(\Delta f)\quad\Longrightarrow\quad \mathcal{L}_{\text{dBc/Hz}}=10\log_{10}\!\left(\tfrac12 S_\phi\right),\;\; S_\phi=2\cdot10^{\mathcal{L}_{\text{dBc/Hz}}/10}\ \text{rad}^2/\text{Hz}.

Numerical feel (canonical example C): L=100\mathcal{L}=-100 dBc/Hz 10100/10=1010\Rightarrow 10^{-100/10}=10^{-10}, Sϕ=2×1010S_\phi=2\times10^{-10} rad²/Hz. 10× better in power (110-110 dBc/Hz) = 103.16×\sqrt{10}\approx3.16\times better in amplitude (rms).

Common conversion table:

Power ratiodBVoltage ratioIntuition
×2\times2+3.01+3.01 dB×2\times\sqrt2double the power
×10\times10+10+10 dB×103.16\times\sqrt{10}\approx3.16one order of magnitude
×100\times100+20+20 dB×10\times10two orders of magnitude
×12\times\tfrac123.01-3.01 dB×1/2\times1/\sqrt2halve it

Used on this site: psd_phase_noise_jitter, numerical_feeling (Example 3, the full set of conversions), white_noise_to_phase_noise.


6. The small-angle PM approximation (where L12Sϕ\mathcal{L}\approx\frac12 S_\phi comes from)

One line: when phase jitter is small, the single-sideband power of a phase modulation is about half the phase PSD. This is the bridge that converts "phase PSD" into the "dBc/Hz" on a datasheet.

Consider a phase-modulated carrier: v(t)=Acos ⁣(ω0t+ϕ(t))v(t)=A\cos\!\big(\omega_0 t+\phi(t)\big). When ϕ(t)1|\phi(t)|\ll1 rad (small-angle), expand trigonometrically and approximate cosϕ1\cos\phi\approx1, sinϕϕ\sin\phi\approx\phi:

v(t)=A[cosω0tcosϕsinω0tsinϕ]Acosω0tAϕ(t)sinω0t.v(t)=A\big[\cos\omega_0 t\cos\phi-\sin\omega_0 t\sin\phi\big]\approx A\cos\omega_0 t-A\,\phi(t)\sin\omega_0 t .
  • The first term is the pure carrier; the second term Aϕ(t)sinω0t-A\,\phi(t)\sin\omega_0 t is the "phase sideband" — it moves the baseband ϕ(t)\phi(t) to either side of the carrier.
  • For a phase component at a single offset frequency Δf\Delta f, the sideband power is proportional to the power of ϕ\phi; converting to the single-sideband (SSB) density relative to the carrier gives
L(Δf)12Sϕ(Δf).\mathcal{L}(\Delta f)\approx\frac12 S_\phi(\Delta f).

That 12\frac12 comes from the bookkeeping of "total phase power split evenly between the upper and lower sidebands."

Applicability condition (important): holds only for σϕ1\sigma_\phi\ll1 rad. If the integration bandwidth is wide enough that σϕ\sigma_\phi approaches or exceeds 1 rad, this approximation fails (the carrier gets "smeared out"), and a more complete treatment is needed. Canonical example C's σϕ=14.07\sigma_\phi=14.07 mrad 1\ll1, so it is safe.

Used on this site: psd_phase_noise_jitter, numerical_feeling, Eq.(16) of the spec (L12Sϕ\mathcal{L}\approx\frac12 S_\phi).


7. Trigonometric identities (the workhorse behind deriving Eq.(15)–(18))

One line: when multiplying "some harmonic of the ISF" by "an injected single tone" and integrating over time, you use product-to-sum identities to split the product into a slow term (survives) and a fast term (vanishes after integration).

For an injected single tone i(t)=I0cos(Δωt)i(t)=I_0\cos(\Delta\omega\,t) near DC, the phase response ([P1] Eq.(13), p.183's c0c_0 term) requires computing tI0cos(Δωτ)dτ=I0sin(Δωt)Δω\int^{t}I_0\cos(\Delta\omega\,\tau)\,d\tau=\dfrac{I_0\sin(\Delta\omega\,t)}{\Delta\omega}, directly giving [P1] Eq.(15), p.183:

ϕ(t)I0c0sin(Δωt)2qmaxΔω.\phi(t)\approx\frac{I_0\,c_0\sin(\Delta\omega\,t)}{2q_{max}\,\Delta\omega}.

When the tone is near nω0n\omega_0, use product-to-sum:

cos(nω0τ+θn)cos((nω0+Δω)τ)=12cos((2nω0+Δω)τ+θn)+12cos(Δωτθn).\cos(n\omega_0\tau+\theta_n)\cos\big((n\omega_0+\Delta\omega)\tau\big) =\frac12\cos\big((2n\omega_0+\Delta\omega)\tau+\theta_n\big)+\frac12\cos\big(\Delta\omega\,\tau-\theta_n\big).
  • The first term has frequency 2nω0\approx2n\omega_0 (fast); after integration its amplitude 1/(2nω0)\propto1/(2n\omega_0), tiny, negligible.
  • The second term has frequency Δω\Delta\omega (slow, near DC); after integration its amplitude 1/Δω\propto1/\Delta\omega, survives.

Keeping only the slow term and integrating gives [P1] Eq.(16)/(17), p.183:

ϕ(t)I0cnsin(Δωt)2qmaxΔω.\phi(t)\approx\frac{I_0\,c_n\sin(\Delta\omega\,t)}{2q_{max}\,\Delta\omega}.

That 12\frac12 is exactly what falls out of the product-to-sum step. Physical meaning: the ISF's nn-th harmonic acts like a mixer, "downconverting" noise near nω0n\omega_0 into low-frequency phase modulation near the carrier — this is the frequency-translation picture of phase noise.

Common identity quick reference:

IdentityUse
cosAcosB=12[cos(AB)+cos(A+B)]\cos A\cos B=\tfrac12[\cos(A-B)+\cos(A+B)]separating slow/fast terms (Eq.16/17)
sin2θ=12(1cos2θ)\sin^2\theta=\tfrac12(1-\cos2\theta)computing Γrms\Gamma_{rms} (rms of sin-\sin is 1/21/\sqrt2)
tcos(ωτ)dτ=sin(ωt)/ω\int^{t}\cos(\omega\tau)d\tau=\sin(\omega t)/\omegaintegrator 1/ω1/\omega (Eq.15)

Used on this site: fourier_series_of_isf, convolution_derivation, the orthogonality used in Section 1's Parseval.


8. Random walk variance (the Δt\sqrt{\Delta t} law of accumulated jitter)

One line: an open-loop oscillator has no absolute time reference, so each period's phase error accumulates independently like a "drunkard's walk"; the variance of the error grows linearly, so the standard deviation grows as Δt\sqrt{\Delta t}.

Suppose each period injects an independent, zero-mean phase error δk\delta_k with variance σ12\sigma_1^2 (the result of white noise integrated over one period). After MM periods the total phase error is ΦM=k=1Mδk\Phi_M=\sum_{k=1}^{M}\delta_k. Because each δk\delta_k is independent, the variances add (cross-correlation terms have zero expectation):

Var(ΦM)=k=1MVar(δk)=Mσ12.\mathrm{Var}(\Phi_M)=\sum_{k=1}^{M}\mathrm{Var}(\delta_k)=M\,\sigma_1^2 .
  • The measurement interval is Δt=MT\Delta t=M\cdot T, so M=Δt/TM=\Delta t/T, Var(ΦM)=σ12TΔtΔt\mathrm{Var}(\Phi_M)=\dfrac{\sigma_1^2}{T}\,\Delta t\propto\Delta t.
  • Converting to time jitter (σt=σϕ/(2πf0)\sigma_t=\sigma_\phi/(2\pi f_0)) and taking the square root:
σΔt=κΔt([P2] Eq.(10), p.793).\sigma_{\Delta t}=\kappa\,\sqrt{\Delta t}\qquad([P2]\ \text{Eq.}(10),\ \text{p.793}).

κ\kappa is a proportionality constant specific to each device, with units s\sqrt{\text{s}}; it is determined by the same Γrms2/qmax2\Gamma_{rms}^2/q_{max}^2 ratio ([P2] Eq.(12), p.793: κ=Γrmsqmax12in2Δf\kappa=\frac{\Gamma_{rms}}{q_{max}}\sqrt{\tfrac12\tfrac{\overline{i_n^2}}{\Delta f}}, verified verbatim).

Key intuition: variance (power) grows linearly, standard deviation (rms) grows as a square root. This is the hallmark of a random walk; it appears whenever phase errors accumulate independently with no restoring force (contrast: with a PLL locked, there is a restoring force and jitter is suppressed, no longer growing without bound). Corresponds to claim C6.

Numerical feel: at a spacing of 1000 periods (at 5 GHz, Δt=200\Delta t=200 ns), σΔt\sigma_{\Delta t} is 1000/10=100=10×\sqrt{1000/10}=\sqrt{100}=10\times that at a spacing of 10 periods (Δt=2\Delta t=2 ns) — a 100× longer interval gives only 10× more jitter.

Used on this site: lab_03 (ring_oscillator_timing_noise_accumulation.png: σΔt=σΔN\sigma_{\Delta t}=\sigma\sqrt{\Delta N} random walk), psd_phase_noise_jitter, serdes_clocking_connection.


9. Large-angle PM: the Bessel sideband ladder and where the small-angle approximation fails

One line: Section 6's small-angle PM result (L12Sϕ\mathcal{L}\approx\frac12 S_\phi) is only the first-order approximation of "large-angle phase modulation" valid for β1\beta\ll1; the full solution is an infinite ladder of Bessel sidebands, with the carrier and each sideband having amplitude J0(β)J_0(\beta) and Jn(β)J_n(\beta) respectively. This section builds the full ladder and quantifies exactly when the small-angle approximation starts to break down.

9.1 The Jacobi–Anger expansion (external literature, not in this site's 5 PDFs)

For any real β\beta (the modulation index) and angle Ωt\Omega t, the Jacobi–Anger expansion (a standard special-function identity, e.g. Abramowitz & Stegun 9.1.42; external literature, not in this site's 5 PDFs):

ejβsinΩt=n=Jn(β)ejnΩte^{j\beta\sin\Omega t}=\sum_{n=-\infty}^{\infty}J_n(\beta)\,e^{jn\Omega t}

where Jn(β)J_n(\beta) is the Bessel function of the first kind, order nn. Why it holds (one-line provenance): ejβsinΩte^{j\beta\sin\Omega t} is 2π2\pi-periodic in Ωt\Omega t; expanding it in a Fourier series, the integral defining its coefficients 12πππej(βsinxnx)dx\frac{1}{2\pi}\int_{-\pi}^{\pi}e^{j(\beta\sin x-nx)}dx is exactly one of the standard integral representations of Jn(β)J_n(\beta) — that integral representation itself is not re-derived here, only its result is cited.

Properties (used below): Jn(β)=(1)nJn(β)J_{-n}(\beta)=(-1)^n J_n(\beta) (symmetric for even nn, antisymmetric for odd nn), and the Bessel Parseval-like identity:

n=Jn(β)2=1(β)\sum_{n=-\infty}^{\infty}J_n(\beta)^2=1\qquad(\forall\beta)

This can later be used to check "the sideband ladder's total power is conserved" — a complete analogy to the Parseval relation for the ISF's Fourier coefficients in Section 1.

9.2 The sideband ladder for single-tone PM

Consider a carrier phase-modulated by a single audio tone Ω\Omega (writing Section 6's ϕ(t)=ϕpsinΩt\phi(t)=\phi_p\sin\Omega t as ϕ(t)=βsinΩt\phi(t)=\beta\sin\Omega t, where β\beta is the modulation index, i.e. the peak phase deviation, units rad):

V(t)=cos ⁣(ω0t+βsinΩt)V(t)=\cos\!\big(\omega_0 t+\beta\sin\Omega t\big)

Writing this as Re{ejω0tejβsinΩt}\mathrm{Re}\{e^{j\omega_0 t}\,e^{j\beta\sin\Omega t}\} and substituting the Jacobi–Anger expansion:

V(t)=Re{ejω0tn=Jn(β)ejnΩt}=n=Jn(β)cos((ω0+nΩ)t)V(t)=\mathrm{Re}\left\{e^{j\omega_0 t}\sum_{n=-\infty}^{\infty}J_n(\beta)e^{jn\Omega t}\right\} =\sum_{n=-\infty}^{\infty}J_n(\beta)\cos\big((\omega_0+n\Omega)t\big)

This is the full Bessel sideband ladder:

  • Carrier (n=0n=0): amplitude J0(β)J_0(\beta), located at ω0\omega_0.
  • nn-th sideband (n=±1,±2,n=\pm1,\pm2,\dots): amplitude Jn(β)J_n(\beta), located at ω0+nΩ\omega_0+n\Omega.
  • Because Jn=(1)nJnJ_{-n}=(-1)^nJ_n, the upper and lower sidebands have equal magnitude (Jn=Jn|J_{-n}|=|J_n|), differing only in sign (phase).

Unit check: β=ϕp\beta=\phi_p is the peak phase, arising from the integral ϕ(t)\int\phi(t), with units rad; Ωt\Omega t and ω0t\omega_0 t are both dimensionless phase angles (rad), and Jn(β)J_n(\beta) itself is dimensionless (an amplitude ratio), so substituting into cos()\cos(\cdot) raises no unit issue; V(t)V(t) has the same units as the original cos(ω0t+ϕ(t))\cos(\omega_0t+\phi(t)) (normalized amplitude) ✓.

9.3 The small-β\beta limit: recovering Section 6's small-angle approximation

Small-argument expansion of the Bessel functions (standard external-literature result):

J0(β)1β24,J1(β)β2(β1)J_0(\beta)\approx1-\frac{\beta^2}{4},\qquad J_1(\beta)\approx\frac{\beta}{2}\qquad(\beta\ll1)

Substituting back into the sideband ladder: the carrier amplitude J0(β)1β2/41J_0(\beta)\approx1-\beta^2/4\approx1 (barely attenuated at first order), and the first-sideband amplitude J1(β)β/2J_1(\beta)\approx\beta/2. The single-sideband relative power:

L(Δf)J1(β)2(β2)2\mathcal{L}(\Delta f)\approx J_1(\beta)^2\approx\left(\frac{\beta}{2}\right)^2

This is exactly Section 6's small-angle PM result L(ϕp2)2=12Sϕ\mathcal{L}\approx\left(\frac{\phi_p}{2}\right)^2=\frac12 S_\phi (β=ϕp\beta=\phi_p is the peak phase, Sϕ=ϕp2/2S_\phi=\phi_p^2/2 is its power) — the Bessel sideband ladder automatically converges to the small-angle PM formula as β1\beta\ll1; the two are the first-order and full versions of the same thing. The higher-order sidebands J2(β)β2/4,J3(β)β3/48,J_2(\beta)\approx\beta^2/4,\,J_3(\beta)\approx\beta^3/48,\dots vanish rapidly as β1\beta\ll1 (Jn(β)(β/2)n/n!J_n(\beta)\sim(\beta/2)^n/n!), which is why it is reasonable for the small-angle approximation to keep only the first-order sideband.

9.4 Failure boundary: where does the small-angle approximation err by 1 dB?

The small-angle approximation replaces J1(β)J_1(\beta) with the first-order term β/2\beta/2; as β\beta grows, this approximation drifts from the true value. Define the error (comparing the amplitude ratio of the two, in dB):

errdB(β)=20log10 ⁣(J1(β)β/2)\text{err}_{\text{dB}}(\beta)=20\log_{10}\!\left(\frac{J_1(\beta)}{\beta/2}\right)

(errdB0\text{err}_{\text{dB}}\to0 as β0\beta\to0; as β\beta grows, J1J_1's growth slows, the ratio drops below 1, and errdB<0\text{err}_{\text{dB}}<0, i.e. the small-angle approximation overestimates the sideband.) Solving numerically for errdB(β)=1\text{err}_{\text{dB}}(\beta)=-1 dB (root-finding scipy.optimize.brentq on scipy.special.jv, see the Python block below):

β1dB0.950 rad(54.5)\beta_{1\text{dB}}\approx0.950\ \text{rad}\quad(\approx54.5^\circ)

In plain terms: as long as the peak phase deviation β0.95\beta\lesssim0.95 rad, the small-angle approximation L(β/2)2\mathcal{L}\approx(\beta/2)^2 is accurate to within 1 dB; beyond this range (e.g. wideband FM, large-index PM, or an integration bandwidth wide enough that σϕ\sigma_\phi approaches 1 rad), the full Bessel sideband ladder must be used — the small-angle formula no longer applies. This echoes Section 6's qualitative statement that it "holds only for σϕ1\sigma_\phi\ll1 rad," now with a quantitative boundary.

9.5 Carrier-suppression null and Carson bandwidth (external literature, not in this site's 5 PDFs)

Carrier suppression: as β\beta grows to the first root of J0(β)=0J_0(\beta)=0, the carrier vanishes completely and all power is transferred to the sidebands — a classic phenomenon in FM/PM systems:

J0(β)=0’s first root: β=2.405(numerical solution, see the Python block below: J0(2.405)9×1050)J_0(\beta)=0\text{'s first root: }\beta=2.405\quad(\text{numerical solution, see the Python block below: }J_0(2.405)\approx-9\times10^{-5}\approx0)

Carson's bandwidth rule (external literature, an engineering rule of thumb, not in this site's 5 PDFs): in practice the sideband ladder has infinitely many terms, but Jn(β)J_n(\beta) decays rapidly to negligible size once n>β+1n>\beta+1, so an effective bandwidth is defined (fm=Ω/2πf_m=\Omega/2\pi):

BWCarson2(β+1)fmBW_{\text{Carson}}\approx2(\beta+1)f_m

At β=2.405\beta=2.405, BW6.81fmBW\approx6.81\,f_m; at small-angle β=0.1\beta=0.1, BW2.2fmBW\approx2.2\,f_m (barely more than a single sideband pair, consistent with the picture that "small-angle PM has only the ±1\pm1 sidebands").

9.6 Python check: the full sideband ladder at three values of β\beta

import numpy as np
from scipy.special import jv, jn_zeros
from scipy.optimize import brentq

for beta in [0.1, 1.0, 2.405]:
print(f"beta={beta}")
for n in range(5):
print(f" J_{n}({beta}) = {jv(n, beta):.6f}")
# -> beta=0.1: J0=0.997502, J1=0.049938, J2=0.001249, J3=0.000021, J4≈0
# -> beta=1.0: J0=0.765198, J1=0.440051, J2=0.114903, J3=0.019563, J4=0.002477
# -> beta=2.405: J0=-0.000091(≈0), J1=0.519110, J2=0.431783, J3=0.199032, J4=0.064763

# carrier null (classic 2.405)
z0 = jn_zeros(0, 1)[0]
print(f"first zero of J0: {z0:.6f}")
# -> first zero of J0: 2.404826

# small-angle approximation vs exact
for beta in [0.1, 0.3, 0.5, 1.0]:
J0, J1 = jv(0, beta), jv(1, beta)
print(f"beta={beta}: J0={J0:.6f} vs 1-b^2/4={1-beta**2/4:.6f} | "
f"J1={J1:.6f} vs b/2={beta/2:.6f}")
# -> beta=0.1: J0=0.997502 vs 0.997500 | J1=0.049938 vs 0.050000
# -> beta=1.0: J0=0.765198 vs 0.750000 | J1=0.440051 vs 0.500000

# 1 dB failure boundary: 20log10(J1(beta)/(beta/2)) = -1 dB
f = lambda b: 20*np.log10(jv(1, b)/(b/2)) - (-1.0)
beta_1dB = brentq(f, 0.5, 1.5)
print(f"beta_1dB = {beta_1dB:.4f}")
# -> beta_1dB = 0.9505

# Parseval check: sum J_n^2 = 1
for beta in [0.1, 1.0, 2.405]:
s = sum(jv(n, beta)**2 for n in range(-50, 51))
print(f"beta={beta}: sum J_n^2 = {s:.8f}")
# -> all beta give 1.00000000

Used on this site: Section 6's small-angle PM (this section is its full version), white_noise_to_phase_noise (the small-angle premise behind the single-tone sideband Eq.(16)–(18)), psd_phase_noise_jitter (the applicability boundary σϕ1\sigma_\phi\ll1 rad, now with a quantitative number 0.95\approx0.95 rad).


Quick-reference summary table

ToolCore formulaMain use on this site
Fourier/Parsevalcn2=2Γrms2\sum c_n^2=2\Gamma_{rms}^2ISF harmonic decomposition, Γrms\Gamma_{rms}
LTV convolutionϕ=1qmaxtΓindτ\phi=\frac{1}{q_{max}}\int^{t}\Gamma\,i_n\,d\tauphase superposition, LTV vs LTI
integrator 1/(jω)1/(j\omega)H2=1/ω2\vert H\vert ^2=1/\omega^2white noise → 1/f21/f^2 (20-20 dB/dec)
Wiener–KhinchinSx=F{Rx}S_x=\mathcal{F}\{R_x\}PSD ↔ autocorrelation, variance
dB / dBc/HzXdB=10log10(P/Pref)X_{\text{dB}}=10\log_{10}(P/P_{ref})unit conversion
small-angle PML12Sϕ\mathcal{L}\approx\frac12 S_\phidBc/Hz ↔ phase PSD
product-to-sumcosAcosB=12[]\cos A\cos B=\tfrac12[\cdots]Eq.(15)–(18) mixing
random walkσΔt=κΔt\sigma_{\Delta t}=\kappa\sqrt{\Delta t}accumulated jitter
Bessel sideband ladderJn(β)J_n(\beta), small-angle J1β/2J_1\approx\beta/2, fails for β0.95\beta\gtrsim0.95large-angle PM, carrier suppression at β=2.405\beta=2.405

Further reading