Stimulus Operators
On this page
All stimulus operators take a destination field and an options table; most support scale_by_dt (bool) to scale writes by the simulation timestep.
-
Wave Drivers: Sinusoids, chirps, harmonic stacks, and waveform generators.
-
Spatial Patterns: Checkerboards, moire fields, positional encodings, and structured masks.
-
Beam & Wavelet Families: Localized pulses, beams, vortices, wavelets, and moving packets.
-
Modal Sources: Chladni figures, fixed-boundary modes, and Laplace-Beltrami eigenmodes.
Shared Coordinate Mapping 🧭
Most spatial stimuli support alternate coordinate mappings. The wave, beam, modal, and pattern operators on this page all draw from the same expanded coordinate contract.
| Parameter | Type | Default | Description |
|---|---|---|---|
coord_mode |
enum |
"axis" |
Coordinate mode: axis, angle, radial, polar, azimuth, elliptic, separable, spiral |
coord_axis |
enum |
"x" |
Axis for coord_mode = "axis" |
coord_combine |
enum |
"multiply" |
Separable combine rule: multiply, add |
coord_angle |
double |
0.0 |
Angle for coord_mode = "angle" or ellipse orientation (radians) |
origin_x, origin_y |
double |
0.0 |
Coordinate origin for 2D mappings |
spacing_x, spacing_y |
double |
1.0 |
Coordinate spacing for 2D mappings |
coord_center_x, coord_center_y |
double |
0.0 |
Center used by radial, polar, azimuth, elliptic, and spiral mappings |
coord_velocity_x, coord_velocity_y |
double |
0.0 |
Center velocity for moving radial/polar/elliptic mappings |
coord_ellipse_u, coord_ellipse_v |
double |
1.0 |
Elliptic semi-axes for coord_mode = "elliptic" |
Spiral coordinate parameters (for operators with coord_mode = "spiral"):
| Parameter | Type | Default | Description |
|---|---|---|---|
coord_spiral_arms |
double |
1.0 |
Spiral arm multiplier applied to theta |
coord_spiral_pitch |
double |
1.0 |
Spiral radial pitch multiplier |
coord_spiral_phase |
double |
0.0 |
Spiral phase offset (radians) |
coord_spiral_angular_velocity |
double |
0.0 |
Spiral angular drift rate (rad/s) |
Wavevector overrides (for stimulus_sine, stimulus_chirp, stimulus_spectral_lines, stimulus_gabor):
| Parameter | Type | Default | Description |
|---|---|---|---|
kx, ky |
double |
0.0 |
Wavevector components (rad/unit) |
use_wavevector |
boolean |
false |
Use kx/ky instead of wavenumber + coordinate mapping |
Shared Timing & Phase Controls ⏱️
| Parameter | Type | Default | Description |
|---|---|---|---|
amplitude |
double |
Peak output amplitude (before dt scaling) | |
wavenumber |
double |
Spatial wavenumber k (rad/unit) | |
omega |
double |
Angular frequency (rad/s) | |
phase |
double |
0.0 |
Phase offset (radians) |
time_offset |
double |
0.0 |
Shift time by constant before evaluation |
nominal_dt |
double |
0.0 |
Fixed timestep for fixed_clock = true |
fixed_clock |
boolean |
false |
Lock evolution to nominal_dt |
scale_by_dt |
boolean |
true |
Multiply write by dt |
rotation |
double |
0.0 |
Complex phase rotation on output (radians) |
Wave Drivers
- Sine: Traveling or standing sinusoidal plane wave.
- Standing Wave: Two counter-propagating sine waves forming a standing pattern.
- Chirp: Frequency-swept sinusoid with time-varying wavenumber or frequency.
- Spectral Lines: Superposition of sinusoidal harmonics with configurable decay.
- Fourier Waveform: Bandlimited saw, square, and triangle synthesis.
- Digamma Square Wave: Deformable digamma waveform with optional field-driven warp mixing.
- Former Digamma Square Warp links now resolve to Digamma Square Wave; use
warp_field,warp_mix,warp_bias, andwarp_mode. - Lissajous: Gaussian ridge built around coupled oscillator traces.
Spatial Patterns
- Checkerboard: Checker and stripe fields with configurable periods and phase.
- Moire: Beat patterns from nearby gratings or crossed wavevectors.
- Positional Encoding: Multi-scale sinusoidal coordinate encoding.
- Log Spectral Grid: Logarithmically spaced polar frequency-grid synthesis.
- RD Seed: One-shot reaction-diffusion seed templates.
- Log-Polar (experimental): Rings-and-spokes structure from log-radius and angle.
Beam & Wavelet Families
- Gaussian Pulse: Pure Gaussian envelope for localized pulses and masks.
- Gabor Kernel: Gaussian-windowed sinusoid for localized frequency structure.
- Morlet Wavelet Field: Multi-scale Morlet packet field with drifting orientation.
- Steerable Wavelet: Direction-selective multi-scale Simoncelli or Riesz synthesis.
- Heat Kernel: Diffusing Gaussian source with optional mass preservation.
- Optical Vortex: Phase-singular beam with topological charge.
- Airy Beam: Finite-energy Airy beam with apodized lobes.
- Zone Plate: Fresnel-style quadratic radial phase plate.
- Bessel Beam: Cylindrical Bessel beam with configurable order.
- Hermite-Gaussian Beam: Separable transverse beam modes inside a Gaussian envelope.
- Traveling Wave Packet: Gaussian-envelope packet with drifting carrier.
- Cylindrical Wave Emitter: Regularized cylindrical wave radiating from a moving source.
Modal Sources
- Chladni: Nodal-line plate patterns from rectangular modes.
- Laplace-Beltrami: Analytic eigenmodes on rectangles, cylinders, and flat tori.
- Wave Modes: Fixed-boundary standing modes of the wave equation.