Skip to content
Oakfield Operator Calculus Function Reference Site

Stimulus Operators

All stimulus operators take a destination field and an options table; most support scale_by_dt (bool) to scale writes by the simulation timestep.

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.

ParameterTypeDefaultDescription
coord_modeenum "axis"Coordinate mode: axis, angle, radial, polar, azimuth, elliptic, separable, spiral
coord_axisenum "x"Axis for coord_mode = "axis"
coord_combineenum "multiply"Separable combine rule: multiply, add
coord_angledouble 0.0Angle for coord_mode = "angle" or ellipse orientation (radians)
origin_x, origin_ydouble 0.0Coordinate origin for 2D mappings
spacing_x, spacing_ydouble 1.0Coordinate spacing for 2D mappings
coord_center_x, coord_center_ydouble 0.0Center used by radial, polar, azimuth, elliptic, and spiral mappings
coord_velocity_x, coord_velocity_ydouble 0.0Center velocity for moving radial/polar/elliptic mappings
coord_ellipse_u, coord_ellipse_vdouble 1.0Elliptic semi-axes for coord_mode = "elliptic"

Spiral coordinate parameters (for operators with coord_mode = "spiral"):

ParameterTypeDefaultDescription
coord_spiral_armsdouble 1.0Spiral arm multiplier applied to theta
coord_spiral_pitchdouble 1.0Spiral radial pitch multiplier
coord_spiral_phasedouble 0.0Spiral phase offset (radians)
coord_spiral_angular_velocitydouble 0.0Spiral angular drift rate (rad/s)

Wavevector overrides (for stimulus_sine, stimulus_chirp, stimulus_spectral_lines, stimulus_gabor):

ParameterTypeDefaultDescription
kx, kydouble 0.0Wavevector components (rad/unit)
use_wavevectorboolean falseUse kx/ky instead of wavenumber + coordinate mapping
ParameterTypeDefaultDescription
amplitudedouble Peak output amplitude (before dt scaling)
wavenumberdouble Spatial wavenumber k (rad/unit)
omegadouble Angular frequency (rad/s)
phasedouble 0.0Phase offset (radians)
time_offsetdouble 0.0Shift time by constant before evaluation
nominal_dtdouble 0.0Fixed timestep for fixed_clock = true
fixed_clockboolean falseLock evolution to nominal_dt
scale_by_dtboolean trueMultiply write by dt
rotationdouble 0.0Complex phase rotation on output (radians)
  • 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, and warp_mode.
  • Lissajous: Gaussian ridge built around coupled oscillator traces.
  • 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.
  • 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.