Skip to content

Delay operators¤

phydrax.operators.delay_operator(u: DomainFunction, /, tau: DomainFunction | ArrayLike, *, time_var: str = 't', clip_time_min: float | None = None) -> DomainFunction ¤

Delay operator along a labeled time coordinate.

Defines a new function \(v\) by shifting the time-like coordinate:

\[ v(t) = (\mathcal{D}_\tau u)(t) = u(t-\tau), \]

where \(\tau\) can be a constant or a DomainFunction (allowing spatially varying delays).

Arguments:

  • u: Input function \(u\).
  • tau: Delay \(\tau\) (constant or DomainFunction).
  • time_var: Label of the time coordinate (default "t").
  • clip_time_min: Optional lower bound for the delayed time; if set, uses t_delayed = max(t - tau, clip_time_min) to avoid evaluating before a minimum time (e.g. before the interval start).