Ferromagnetic Hysteresis Loop

2D twin of the 3D magnetic-memory laboratory: the B-H loop with a fading trail, the grid of domain relays and four live graphs, from the identical Preisach engine.

Presets

Playback

Material and drive

A field sweeps up and down; each domain flips at its own threshold. The loop area is the energy lost as heat in every cycle.

Waveform and state

Model checks

The science

What is modelled

The classical Preisach model: the material is an ensemble of many tiny two-state domains (relays). Each switches up when the field exceeds its upper threshold alpha and down when the field falls below its lower threshold beta, so the state depends on the history of the field. The distribution of thresholds is a Gaussian in coercivity and in interaction (bias) field. The magnetisation is the weighted sum of the relay states, and B includes a small reversible part.

Equations

  • M = Ms Σ wi si, with s = +1 when H ≥ alpha and s = -1 when H ≤ beta.
  • B = μ0 [ (1 + χrev) H + M ].
  • Energy lost per cycle: W = ∮ H dB (the area of the loop).

Checks run in the page

  • The engine's accumulated loss over a cycle against the shoelace area of the same loop.
  • Point symmetry M(phase + 1/2) = -M(phase) for zero bias.
  • Remanence and coercive field from the relay weights (bisection) against the engine swept in small steps.

Honest simplifications

A rate-independent scalar model with a Gaussian distribution of thresholds: no eddy-current or viscous (frequency-dependent) loss, no temperature dependence, no vector rotation of magnetisation, no demagnetising shape effects. The loss formula uses the loop in the engine's own units.

What to try
  • Select Soft iron and then Hard magnet: the loop widens and the loss per cycle rises sharply.
  • Press Demagnetise, then watch the first loops settle into a stationary loop.
  • Raise the bias to see a minor loop that does not enclose the origin.
B and H against time
Energy lost in each completed cycle
Stationary loss against drive amplitude
Fraction of domains pointing up
Made with 🤖 ChatGPT