diff --git a/sumpy/expansion/__init__.py b/sumpy/expansion/__init__.py
index 871c5b81bd4058c9d76dedf7bf81a3d2f883e626..a0abecfb3cf07ae029c99901fe84f81c719893bd 100644
--- a/sumpy/expansion/__init__.py
+++ b/sumpy/expansion/__init__.py
@@ -506,7 +506,24 @@ class LinearPDEBasedExpansionTermsWrangler(ExpansionTermsWrangler):
 
 
 class PDE(object):
+    r"""
+    Represents a system of PDEs of dimension `dim`. It is represented by a
+    list of dictionaries with each dictionary representing a single PDE.
+    Each dictionary maps a :class:`CoeffIdentifier` object to a value,
+
+        .. math::
+
+            \sum_{(mi, ident), c \text{pde\_dict}}
+            \frac{\partial^{\sum(mi)}}{\partial u^mi} c = 0,
+
+        where :math:`u` is the solution vector of the PDE.
+    """
     def __init__(self, dim, eqs):
+        """
+        :arg dim: dimension of the PDE
+        :arg eqs: list of dictionaries mapping a :class:`CoeffIdentifier` to a
+                  value.
+        """
         self.dim = dim
         self.eqs = eqs