Cell Biophysics · Cytoskeletal Mechanics
📅 July 2026 ⏱ ≈ 12 min read 🎯 Intermediate

Mitosis and Kinetochore Mechanics — The Physics of Chromosome Segregation

Every time a human cell divides, it must find, grip, align and pull apart 46 chromosomes with almost zero error tolerance — a missegregation rate below roughly 1 in 1000 is required to avoid the aneuploidy that drives cancer and birth defects. This precision is achieved not by a central controller but by a self-organising mechanical system: microtubules that grow and shrink stochastically, kinetochores that convert tension into a stop signal, and a checkpoint that refuses to let the cell divide until every last attachment is correct.

1. Dynamic Instability: Microtubules as Stochastic Rods

The mitotic spindle is built from microtubules — hollow tubes of αβ-tubulin dimers, 25 nm across, nucleated from centrosomes at each spindle pole. Unlike a rigid rod, a microtubule constantly switches between growing and shrinking in a process called dynamic instability: it grows by adding GTP-tubulin to its plus end, but if the GTP cap is lost before more tubulin arrives, the microtubule undergoes a "catastrophe" and rapidly depolymerises, occasionally reversing into a "rescue".

States: growing (v_g ≈ 5-15 µm/min) ⇌ shrinking (v_s ≈ 10-25 µm/min)

P(catastrophe) per unit time = f_cat    P(rescue) per unit time = f_res // four-state Markov process per microtubule tip

This constant turnover is not wasted energy — it is a search strategy. A microtubule that always grows in the same direction would rarely encounter a chromosome; one that stochastically grows and collapses samples the entire spindle volume in a few minutes.

2. Search-and-Capture: Finding Every Chromosome

Kirschner and Mitchison's 1986 search-and-capture model treats each microtubule tip as an explorer performing biased dynamic instability. Capture of a kinetochore stabilises the attached microtubule against catastrophe (the kinetochore acts as a "cap"), converting a transient contact into a persistent kinetochore fibre (k-fibre) of 15-25 bundled microtubules.

Pure random search is slow — for realistic microtubule dynamics it would take longer than the ~20 minutes prometaphase actually allows. Real spindles accelerate the search with:

3. The Kinetochore as a Force Transducer

The kinetochore is a multi-layered protein complex (~100+ proteins) assembled on centromeric chromatin. Its outer layer, the NDC80 complex, forms a ring-like collar around the microtubule that can track a depolymerising tip while remaining attached — converting the chemical energy of tubulin disassembly directly into mechanical pulling force, a "biased diffusion" or "forced walk" mechanism that requires no ATP-hydrolysing motor.

Order-of-magnitude force budget:
Force per depolymerising microtubule ≈ 30-65 pN (Grishchuk & McIntosh estimates)
k-fibre of ~20 microtubules ≈ several hundred pN of pulling capacity
Chromosome drag in cytoplasm at anaphase speeds (~1 µm/min) is negligible by comparison — the system is heavily overbuilt for redundancy

At metaphase, sister kinetochores are pulled toward opposite poles simultaneously (biorientation), stretching the centromeric chromatin like a spring. This stretch generates measurable inter-kinetochore tension, which is the physical signal used in error correction.

4. Tension-Based Error Correction

Not every initial attachment is correct. A dangerous error is syntelic attachment, where both sister kinetochores attach to the same pole — with no opposing pull, tension across the centromere stays low. The cell corrects this using Aurora B kinase, positioned at the inner centromere, which phosphorylates NDC80 and destabilises any kinetochore-microtubule attachment that is not under sufficient tension.

low tension → high local [Aurora B activity] → NDC80 phosphorylated → microtubule released → attachment retried

high tension (bioriented) → kinetochore pulled away from Aurora B → NDC80 dephosphorylated → attachment stabilised

This is a beautifully simple mechanochemical feedback loop: geometry (biorientation) creates tension, tension creates spatial separation from a kinase, and that separation is what stabilises the correct state. Errors are unstable by construction and are repeatedly tried again until biorientation is achieved.

5. The Spindle Assembly Checkpoint

Even with error correction, some kinetochores remain unattached at any given moment during prometaphase. The spindle assembly checkpoint (SAC) is a surveillance system: unattached kinetochores catalytically generate the mitotic checkpoint complex (MCC), which diffuses throughout the cell and inhibits the anaphase-promoting complex/cyclosome (APC/C). APC/C is required to degrade securin (which otherwise restrains separase) and cyclin B — so as long as even a single kinetochore is unattached, anaphase is blocked cell-wide.

① Unattached

Kinetochore generates "wait" signal (MCC) — APC/C inhibited globally.

② Last attachment

MCC production stops; existing MCC is degraded within minutes.

③ APC/C active

Securin and cyclin B degraded; separase released.

④ Anaphase onset

Separase cleaves cohesin; sister chromatids pulled to opposite poles.

The checkpoint's amplification (one unattached kinetochore blocking the whole cell) is what makes chromosome segregation so reliable despite the inherently noisy, stochastic search-and-capture process that finds each attachment in the first place — a direct link between molecular noise (§1) and macroscopic fidelity.

6. JavaScript: A Search-and-Capture Simulation

A minimal simulation models each microtubule tip as a 1D dynamic instability process growing from a pole toward randomly placed kinetochores, capturing one when the tip passes within a capture radius.

class MicrotubuleTip {
  constructor(poleX, angle) {
    this.pole  = poleX;
    this.angle = angle;
    this.length = 0;
    this.growing = true;
    this.captured = false;
  }
  step(dt, fCat = 0.03, fRes = 0.02, vG = 0.15, vS = 0.3) {
    if (this.captured) return;
    if (this.growing) {
      this.length += vG * dt;
      if (Math.random() < fCat * dt) this.growing = false; // catastrophe
    } else {
      this.length = Math.max(0, this.length - vS * dt);
      if (Math.random() < fRes * dt) this.growing = true;  // rescue
    }
  }
  tipPosition() {
    return {
      x: this.pole + this.length * Math.cos(this.angle),
      y: this.length * Math.sin(this.angle),
    };
  }
}

// Fire N microtubules per pole at random angles; check capture each step
function checkCapture(tips, kinetochores, captureRadius = 0.3) {
  for (const tip of tips) {
    if (tip.captured) continue;
    const p = tip.tipPosition();
    for (const kt of kinetochores) {
      const d = Math.hypot(p.x - kt.x, p.y - kt.y);
      if (d < captureRadius) { tip.captured = true; kt.attached++; }
    }
  }
}
// With ~30 microtubules per pole and realistic fCat/fRes, all kinetochores
// are typically captured within simulated minutes — matching prometaphase timing

Extending this with an Aurora-B-style tension check (releasing attachments where both sisters face the same pole) reproduces the self-correcting behaviour described in §4, and gating anaphase on "all kinetochores attached" reproduces the checkpoint logic of §5.