# Making waves with Macaulay 2¶

This page contains the code described in Section 6 of the paper:
Marc Härkönen, Jonas Hirsch, Bernd Sturmfels: Making waves

The file makingWaves.m2 implements the function wavePairs in Macaulay2, which computes the wave pair variety of a system of linear PDE with constant coefficients.

The $$\ell \times k$$ matrix $$A(\partial)$$ with entries in $$\mathbb{C}[\partial_1,\dotsc,\partial_n]$$ represents the PDE $$A \bullet \phi = 0$$, whose solutions are $$k$$-tuples of distributions $$\phi \in \mathcal{D}'(\mathbb{R}^n, \mathbb{C}^k)$$. For $$r = 0,\dotsc,n-1$$, the wave pair variety $$\mathcal{P}_A^r \subseteq \operatorname{Gr}(n-r, n) \times \mathbb{P}^{k-1}$$ consists of pairs $$(\pi, z)$$ such that $$A(y)z = 0$$ for all $$y \in \pi$$.

If $$(\pi, z) \in \mathcal{P}_A^r$$ such that $$\dim_\mathbb{R} (\pi \cap \mathbb{R}^n) = \dim_\mathbb{C} \pi$$, then there is a real $$n-r \times n$$ matrix $$L$$ whose rows span $$\pi$$, and the wave

$\phi(x) := \delta(Lx) \cdot z$

is a solution to the PDE represented by $$A(\partial)$$ for any distribution $$\delta \colon \mathbb{R}^{n-r} \to \mathbb{C}^k$$.

Project page created: 25/11/2021

Project contributors: Marc Härkönen, Jonas Hirsch, Bernd Sturmfels

Software used: Macaulay2 (v1.18)

System setup used: Dell XPS 13 7390 2-in-1 with Arch Linux (kernel 5.14.13), Processor 3,9 GHz Intel i7-1065G7, Memory 16 GB 4267 MHz LPDDR4, Graphics Intel Iris Plus Graphics G7.

Corresponding author of this page: Marc Härkönen, harkonen@gatech.edu