clifford.Cl(p: int = 0, q: int = 0, r: int = 0, sig=None, names=None, firstIdx=1, mvClass=<class 'clifford._multivector.MultiVector'>)Tuple[clifford._layout.Layout, Dict[str, clifford._multivector.MultiVector]][source]

Returns a Layout and basis blade MultiVectors for the geometric algebra \(Cl_{p,q,r}\).

The notation \(Cl_{p,q,r}\) means that the algebra is \(p+q+r\)-dimensional, with the first \(p\) vectors with positive signature, the next \(q\) vectors negative, and the final \(r\) vectors with null signature.

  • p (int) – number of positive-signature basis vectors

  • q (int) – number of negative-signature basis vectors

  • r (int) – number of zero-signature basis vectors

  • sig – See the docs for clifford.Layout. If sig is passed, then p, q, and r are ignored.

  • names – See the docs for clifford.Layout.

  • firstIdx – See the docs for clifford.Layout.


  • layout (Layout) – The resulting layout

  • blades (Dict[str, MultiVector]) – The blades of the returned layout, equivalent to layout.blades.