Web Simulation

 

 

 

Interactive Laplace Transform Visualizer

Objective. This tool helps you explore the Laplace transform and continuous-time LTI systems by placing poles (x) and zeros (o) on the s-plane. The s = jw line (imaginary axis) corresponds to the frequency axis. You see the magnitude and phase of the frequency response H(jw), and the impulse response h(t) from the associated differential equation.

Stability. A system is stable iff all poles lie in the left half-plane (Re(s) < 0). Any pole with Re(s) > 0 makes the system unstable; the impulse response grows without bound (we clamp it for display).

Mathematical Foundation

Transfer function. We model the system as H(s) = gain * prod(s - zeroi) / prod(s - polei). On the imaginary axis, s = jw, so H(jw) gives the frequency response. Magnitude |H(jw)| is plotted in dB; phase angle H(jw) in degrees.

Impulse response. H(s) is converted to an equivalent discrete-time system via the bilinear transform; we simulate the recurrence with an impulse input to approximate h(t). The time axis is continuous t = n * dt.

Poles and zeros. Poles attract |H|; near a pole, the magnitude grows. Zeros null |H|; on the jw axis they create notches. Conjugate pairs keep coefficients real and yield symmetric magnitude response.

Design presets. Butterworth, Chebyshev I/II, and Elliptic low-pass presets use the same pole/zero layouts as the Z-transform visualizer, mapped to the s-plane via the inverse bilinear transform s = (z−1)/(z+1). Use the Order slider (2–12) when a design preset is selected.

S-Plane: jw axis (s=jw), poles (x), zeros (o)
Stable

Drag to move; right-click to delete.

Magnitude |H(jw)| (dB)
Phase angle H (deg)
Impulse response h(t)
3D: |H(s)| over s-plane (sigma, jw)
|H(jw)| on jw axis

 

Usage

Preset: Choose a built-in configuration. Order (slider): when a design preset (Butterworth, Chebyshev I/II, Elliptic) is selected, the Order slider appears; set filter order 2–12. Add Pole / Add Zero: place new roots (as conjugate pairs if enabled). Delete: remove the selected pole or zero (click to select). Clear All: remove all. Conjugate pairs: when on, adding or dragging a root updates its mirror. Show phase: toggle the phase plot.

On the s-plane, drag a pole (x) or zero (o) to move it. Right-click one to delete it. Green = stable (Re(s) < 0); red = unstable (Re(s) > 0). The jw axis (vertical line at sigma=0) is the frequency axis. Near it, dashed lines to the cursor suggest the distance interpretation of H(jw).

3D plot: |H(s)| in dB over (sigma, jw). Use the rotation step buttons (top) for elevation/azimuth and camera presets (bottom): Top, Iso, Front, Side, Bottom. Drag to rotate, scroll to zoom. The white tube traces |H(s)| along the jw axis (s = jw) on the surface.

2D projection: |H(jw)| vs omega on the jw axis. Use the overlay buttons to switch the x-axis range between 0 to w_max and -w_max to w_max.

Presets

  • Simple Low-Pass: one real pole (sigma = -1). Smooths; |H| falls at high w.
  • Narrow Bandpass (Resonator): conjugate pole pair in LHP; zero at origin. Sharp peak; impulse rings.
  • Notch: zeros on jw axis; poles inside LHP. Deep null at a specific w.
  • High-Pass: pole in LHP; zero at origin. Attenuates low w.
  • Unstable: conjugate poles with Re(s) > 0. |H| and h(t) grow; plot clamped.
  • Butterworth LP: maximally flat passband; poles only in LHP. Order 2–12.
  • Chebyshev I LP: passband ripple; steeper rolloff. Order 2–12.
  • Chebyshev II LP: stopband ripple; zeros on jw axis. Order 2–12.
  • Elliptic LP: ripple in both bands; sharpest transition. Order 2–12.

Key Concepts

  • S-plane: sigma (real) horizontal, jw (imaginary) vertical. The jw axis (sigma = 0) is the frequency axis.
  • Stability: all poles in left half-plane (Re(s) < 0). Any pole with Re(s) > 0 gives unbounded h(t).
  • Frequency response: H(jw) = B(jw)/A(jw). Magnitude in dB; phase in degrees.
  • Impulse response: h(t) approximated via bilinear transform and difference equation; clamped when unstable.
  • 3D plot: |H(s)| in dB over (sigma, jw). Fine grid; ±120 dB range. Rotation-step buttons (top) and camera presets (bottom). White tube = jw-axis trace (|H| along s = jw on the surface).
  • 2D projection: |H(jw)| vs omega on the jw axis. Overlay buttons switch the x-axis between 0 to w_max and -w_max to w_max.