В данной работе даётся краткий обзор основных теоретических сведений из геометрической алгебры и модулей для языка Python, в частности модуля clifford. В ходе изложения теоретического материала большое внимание было уделено математическому аппарату геометрической алгебры. Были изучены классические методы поворотов на плоскости и в пространстве: комплексные числа, матрицы и кватернионы. Геометрическая алгебра основывается на понятии мультивектора и геометрического произведения. С помощью мультивектора специального вида описываются вращения в пространствах любой размерности единообразным способом. Математический аппарат геометрической алгебры сравнительно прост для освоения и поэтому обрёл большую популярность в различных прикладных областях. Одной из таких областей является компьютерная графика. Дело в том, что с помощью мультивектора специального вида становится возможным единообразно описать вращения и отражения в пространствах любой размерности. Потенциально этот способ описания вращений может вытеснить способ, основанный на кватернионах и бикватернионах, так как алгоритмически не сложнее, но допускает намного более ясную геометрическую интерпретацию. В работе дан обзор ряда библиотек языка программирования Python: библиотеки, реализующие алгебраические операции, кватернионы, библиотеки для визуализации и библиотеки для геометрической алгебры. Также приводится ряд примеров использования мультивекторов для описания вращений и отражений и их реализация с помощью модуля Clifford языка Python. Были написаны программы, реализующие повороты на плоскости различными способами, также они были визуализированы в 2D и в 3D.
This paper provides a brief overview of the basic theoretical information from geometric algebra and modules for Python, in particular the clifford module. During the presentation of the theoretical material, much attention was paid to the mathematical apparatus of geometric algebra. Classical methods of rotations on the plane and in space were studied: complex numbers, matrices and quaternions. Geometric algebra is based on the concept of a multivector and a geometric product. With the help of a special kind of multivector, rotations in spaces of any dimension are described in a uniform way. The mathematical apparatus of geometric algebra is relatively simple to master and therefore has gained great popularity in various applied fields. One of these areas is computer graphics. The fact is that with the help of a special kind of multivector, it becomes possible to uniformly describe rotations and reflections in spaces of any dimension. Potentially, this method of describing rotations can displace the method based on quaternions and biquaternions, since it is algorithmically not more complicated, but allows for a much clearer geometric interpretation. The paper provides an overview of a number of Python programming language libraries: libraries implementing algebraic operations, quaternions, libraries for visualization and libraries for geometric algebra. There are also a number of examples of using multivectors to describe rotations and reflections and their implementation using the Python Clifford module. Programs were written that implement rotations on the plane in various ways, they were also visualized in 2D and in 3D.