# operator functions (clifford.operator)¶

This module exists to enable functional programming via functools.reduce(). It can be thought of as equivalent to the builtin operator module, but for the operators from geometric algebra.

>>> import functools
>>> import clifford.operator
>>> from clifford.g3 import *
>>> Ms = [e1, e1 + e2, e2 + e3]  # list of multivectors
>>> assert functools.reduce(clifford.operator.op, Ms) == Ms[0] ^ Ms[1] ^ Ms[2]

clifford.operator.gp(M, N)[source]

Geometric product function $$MN$$, equivalent to M * N.

M and N must be from the same layout

clifford.operator.op(M, N)[source]

Outer product function $$M \wedge N$$, equivalent to M ^ N.

M and N must be from the same layout

clifford.operator.ip(M, N)[source]

Hestenes inner product function $$M \bullet N$$, equivalent to M | N.

M and N must be from the same layout

Changed in version 1.3.0: These functions used to be in clifford, but have been moved to this submodule.