Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Session 01 — Solving the detector by matrix inversion: cavities, loops, and transfer functions

Spine placement: Block 1 (The Interferometer) → optics/matrix_methods, session 1 of 3. This is the session where the curriculum’s organizing idea — “the detector is a hierarchy of linear systems” — becomes a concrete, repeatable computational recipe.

The recipe (one method, used everywhere below):

  1. Draw the system as a directed graph of fields/signals (nodes) and couplings (edges).

  2. Write the node-coupling (“adjacency”) matrix M by inspection of the drawing.

  3. Invert: solve (I − M) x = x_in, i.e. x = (I − M)⁻¹ x_in. The inverse is the closed-loop response of the whole system.

A Fabry–Perot cavity, a SISO feedback loop, and (later) a full interferometer are the same calculation with a bigger matrix.


Commissioning question

“When I push on a mirror or step the laser frequency, how much does the field inside the arm cavity actually move — and how fast can my control loop correct it?”

Every answer in commissioning is some entry of an inverted matrix. This session teaches you to build that matrix from a drawing and read the answer off the inverse.

Learning objectives

Participants can:

  1. Draw a two-mirror cavity as a field-node graph and write its coupling matrix M by inspection.

  2. Solve the cavity by matrix inversion and show the result equals the analytic self-consistency solution E = t₁E_in /(1 − r₁r₂e^{2iφ}).

  3. Recognize that a SISO feedback loop is the identical construction, and read the sensitivity S = 1/(1+PC) and complementary sensitivity T = PC/(1+PC) directly off (I − M)⁻¹.

  4. Compute a frequency response in the audio-sideband (small-signal) approximation by evaluating the inverted system at s = iΩ, and extract the cavity pole.

  5. Explain why “scaling up” to MIMO / a full interferometer changes only the size of M, not the method.

Retrieval warm-up

(Answers at the end of this note.)

  1. In our convention (exp(−iωt), propagation exp(+ikL)), what is the one-way phase a field accumulates traversing a cavity of length L at frequency ω?

  2. A cavity is “resonant” when the round-trip field reinforces the input. In one sentence, why is that a feedback condition rather than a static one?

  3. For a single-pole low-pass response, what happens to gain and phase as frequency passes the pole?

Scope

Included

Excluded (named here so you know where they live)

Core model

1. The system is a graph; the matrix is its adjacency

A linear optical/control system is a directed graph: nodes are complex amplitudes (fields or signals), edges carry a complex gain. Each node equals the sum of its incoming edges plus any external injection:

xi=jMijxj+(xin)i(IM)x=xin.x_i = \sum_j M_{ij}\,x_j + (x_\text{in})_i \qquad\Longrightarrow\qquad (I-M)\,x = x_\text{in}.

MijM_{ij} is the gain of the edge from node jj into node ii — read straight off the drawing; it is the (complex-weighted) adjacency matrix. Solving is one numpy.linalg.solve, and the inverse (IM)1(I-M)^{-1} is the closed-loop response: every node’s response to every injection at once.

2. Fabry–Perot cavity

Mirrors ITM (r1,t1)(r_1,t_1), ETM (r2,t2)(r_2,t_2); one-way phase ϕ=kL=ωL/c\phi=kL=\omega L/c. Four nodes around the round trip, with one sign convention that matters: a field reflecting off the HR/cavity side of a mirror picks up r-r (off the substrate side, +r+r); transmission is real. (This is the unitary convention in shared/code/conventions.py.)

By inspection,

M=(000r1eiϕ0000r20000eiϕ0),xin=(t1Ein,0,0,0)T.M=\begin{pmatrix} 0&0&0&-r_1\\ e^{i\phi}&0&0&0\\ 0&-r_2&0&0\\ 0&0&e^{i\phi}&0\end{pmatrix}, \qquad x_\text{in}=(t_1E_\text{in},\,0,\,0,\,0)^{\mathsf T}.

The drawing is the matrix: each directed edge below is one nonzero entry of MM (edge gain from node jj into node ii is MijM_{ij}), and the round trip carries the two HR-side reflection signs r1-r_1 (ITM) and r2-r_2 (ETM).

Caption: the Fabry–Perot field graph. Read MM straight off this drawing — the four loop edges E1 ⁣ ⁣E2E_1\!\to\!E_2, E2 ⁣ ⁣E3E_2\!\to\!E_3, E3 ⁣ ⁣E4E_3\!\to\!E_4, E4 ⁣ ⁣E1E_4\!\to\!E_1 are exactly the four nonzero entries eiϕ,r2,eiϕ,r1e^{i\phi},\,-r_2,\,e^{i\phi},\,-r_1 of MM above; the injection t1Eint_1E_\text{in} into E1E_1 is xinx_\text{in}, and the reflected field Erefl=r1Ein+t1E4E_\text{refl}=r_1E_\text{in}+t_1E_4 leaves toward the laser.

Solving (IM)E=xin(I-M)E=x_\text{in} reproduces the textbook result — but we never derive it by hand; we invert.

Resonance is a feedback condition. The denominator 1r1r2e2iϕ1-r_1r_2e^{2i\phi} is 1(round-trip gain)1-(\text{round-trip gain}). As r1r2e2iϕ1r_1r_2e^{2i\phi}\to1 the loop gain approaches unity and the field diverges — exactly a feedback loop approaching instability. That is the bridge to the next part.

3. SISO feedback loop — the same drawing

Plant PP, controller CC, error ee, actuation uu, output yy, reference rr, disturbance dd:

e=ry,u=Ce,y=Pu+d.e=r-y,\qquad u=Ce,\qquad y=Pu+d.

Three nodes (e,u,y)(e,u,y); edges yey\to e (gain -1), eue\to u (CC), uyu\to y (PP); injections rr into ee, dd into yy:

M=(001C000P0),xin=(r,0,d)T.M=\begin{pmatrix}0&0&-1\\ C&0&0\\ 0&P&0\end{pmatrix},\qquad x_\text{in}=(r,0,d)^{\mathsf T}.

Drawn as a block diagram, this is the same graph: the comparison node forms e=rye=r-y, the controller CC and plant PP are the forward edges, and the output yy feeds back with gain -1 (negative feedback) — the optical analogue of the r1,r2-r_1,-r_2 round-trip signs above.

Caption: the SISO feedback loop as a block diagram. The summing node computes the error e=rye=r-y; u=Ceu=Ce drives the plant; the disturbance dd adds at the plant output to make y=Pu+dy=Pu+d; and yy returns through the -1 feedback edge. This is the same three-node graph (e,u,y)(e,u,y) whose coupling matrix MM is written above.

The inverse hands you the closed-loop transfer functions with no extra algebra:

S=11+PC (sensitivity),T=PC1+PC (complementary),S+T=1.S=\frac{1}{1+PC}\ (\text{sensitivity}),\qquad T=\frac{PC}{1+PC}\ (\text{complementary}),\qquad S+T=1.

4. Transfer functions: the audio-sideband (small-signal) approximation

So far MM’s entries were numbers (one frequency). For a frequency response we let a quantity wiggle at audio frequency Ω\Omega and ask how the steady state responds — the small-signal picture. A real modulation at Ω\Omega places audio sidebands on the carrier at ±Ω\pm\Omega; in the linear regime each sideband propagates independently, so we re-evaluate the same matrix with frequency-dependent edges and read the response at offset Ω\Omega.

Concept questions (ConcepTests)

  1. You double the ITM transmissivity T₁ (cavity becomes “leakier”). Predict, before computing: does the cavity pole f_c go up or down, and does on-resonance buildup go up or down?

  2. In the loop matrix, the y→e edge has gain −1 (negative feedback). What single sign change in M would turn this into positive feedback, and what would the inverse do near PC → 1? (Connect this back to cavity resonance.)

Common misconceptions

Laptop block (30 min) — Predict → Model → Measure → Explain

Notebook: notebooks/optics/matrix_methods/session_01_matrix_inversion.ipynb. Imports the canonical conventions from shared/code/conventions.py. The notebook fades from a worked example → guided completion → an independent task; each part has an analytic check (assert) so you get private, immediate pass/fail feedback.

  1. Predict — sketch circulating power vs detuning, and the reflected-field phase through resonance, before running anything.

  2. Model (worked) — build the cavity coupling matrix M(φ) by inspection; solve (I − M)E = x_in.

  3. Measure — sweep detuning; overlay the matrix solution on the analytic Airy curve (they must coincide to machine precision); compute FSR, finesse, and the cavity pole.

  4. Guided — build the SISO loop matrix and confirm (I − M)⁻¹ reproduces S and T.

  5. Independent — compute the cavity frequency response in the audio-sideband approximation, extract f_c numerically, and compare to FSR/(2𝓕).

  6. Explain — write one or two sentences reconciling your prediction with the result.

Mandatory figures (produced by the notebook):

  1. Circulating power vs detuning (Airy curve), matrix vs analytic overlaid.

  2. Complex reflectivity vs detuning (magnitude and phase flip through resonance).

  3. |H(Ω)| vs frequency showing the cavity pole.

  4. Condition number of (I − M) vs detuning (why near-resonance is numerically delicate).

Exit prompt

In your own words (2–3 sentences): what is the same, and what is different, between solving a Fabry–Perot cavity and solving a feedback loop? If you can answer this, you can read the next two sessions as “the matrix just got bigger.”

Go deeper / refresher


Retrieval warm-up — answers

  1. φ = kL = ωL/c one way; for a round trip.

  2. The circulating field appears on both sides of its own equation (E₁ = t₁E_in + r₁r₂e^{2iφ}E₁): the output feeds back into the input, so the steady state is a self-consistency (fixed-point) condition, not a one-pass calculation.

  3. At the pole the gain is down 3 dB (×1/√2) and the phase lag is 45°; well above it gain rolls off ∝ 1/Ω and phase approaches 90°.