A thing of beauty is a joy forever;

Its loveliness increases; it will never

pass into nothingness;

John Keats

Such is the geometrical algebra designed by Hermann Grassmann in the middle of the 19th century.

GrassmannCalculus is an add-on application for *Mathematica *that brings Grassmann’s work into a modern mathematical setting, useful for physics, engineering and mathematical education. It is not a separate box to work in but a smooth extension of *Mathematica*. Its central core is based on the work of Hermann Grassmann as developed and extended by John Browne. It comes with two other applications that are used in example notebooks: *Presentations* is an add-on that aids in the writing of literate notebooks and the design of custom graphics and dynamic displays. UnitsHelper is an add-on that aids in the use of units. Among other features it allows the installation of reduced unit systems such as geometric units and a general use of decibel units.

The application is extensively documented with standard Mathematica paclet documentation. There is also a collection of example notebooks for various applications. The application is about 170 MB with over 800 files. It comes with palettes and style sheets, including palettes for the *Mathematica* Tensor and Geometry routines.

John Browne has extended Grassmann’s work in several significant ways while building structures strictly axiomatically. Grassmann’s exterior product has been disentangled into a new exterior product and a dual regressive product. Spaces can be defined that specifically include an Origin as another basis element in a vector space. He has defined a generalized Grassmann product, which is the pathway to Clifford algebra and other hypercomplex algebras such as quaternions, octonions and sedenions. John’s work is published in Grassmann Algebra Volume 1: Foundations. This includes the exterior product, regressive product, the Grassmann complement (equivalent to the Hodge star operator) and the Interior product. Volume 2 will include the generalized product and its applications as well as other material. The application comes with a notebook version of Volume 1 and some of the draft chapters for Volume 2. The Grassmann generalized product, Clifford product and facilities for defining hypercomplex algebras are included in the present application.

A clear overview of the basic Grassmann algebra is given in Chapter 1 Introduction of Volume 1, available as a PDF file at John’s Grassmann Algebra web site.

Basic Grassmann algebra is powerful in its own right. You can do geometry, define points and lines, find intersections, parameterize many geometric objects, generate equations, do affine, projective and metric geometry. You can do homological algebra and apply it to analysis of chemical reaction systems or dimensional analysis. There are many applications.

Grassmann calculus contains natural extensions and supplements to Grassmann algebra. Wherever we have a finite vector space we have a Grassmann algebra. Grassmann calculus adds the dual vector space generally known as exterior algebra or differential forms and Contractors that contract forms on (regular) vectors. If we add coordinates and the associated basis vectors, then we can turn the basis vectors into directional derivatives on scalar functions and we have calculus. All of this is in the Grassmann Calculus application.

The derivative operators available in Grassmann calculus are VectorOperator, which turns coordinate basis vectors into differential operators, and a DirectionalDerivative version, Jacobians of mappings, an ExteriorDerivative on forms, and a Lie Derivative. There are also the general vector derivatives: GrassmannGrad, GrassmannCurl, GrassmannDiv, GrassmannLaplacian and GrassmannVectorLaplacian, All of these work in any reasonable finite dimensional space. And, of course, it is always possible to use the regular *Mathematica* derivative operators.

For integration Grassmann calculus has a FormIntegral that is consonate with the standard mathematics used in integrating forms and keeps track of orientation. It is translated to regular *Mathematica* integrals for evaluation.

It’s possible to have a number of different spaces defined at one time. Only one can be active at a given instant but they can be switched quickly, even within a *Mathematica* expression. A space with all its preferences is defined with a *Mathematica* Association and all the data is easily accessed. For particular applications a user can even add additional useful preference items to particular preference Associations.

Grassmann calculus is designed to be useful in such fields as multivariable calculus, differential geometry, smooth manifold theory, general relativity and much of modern physics.

Grassmann algebra/calculus will be useful to a high school student trying to prove and understand Euclidean theorems as well as to a theoretical physicist working at the frontier of mathematical physics. Grassmann calculus can often be used with a light touch in many applications. It is only necessary to master the depths of Grassmann algebra and all its variations if you are interested in the foundations of the algebra. Just having coordinates and basis vectors as explicit items is useful because they can be used as handles for transformation rules with context.

With its integration into *Mathematica*, bottoms-up design and hierarchical depth, ability to call on and mix all types of vector products, ability to handle many multi-dimensional spaces and ability to tailor or augment for special project needs, Grassmann Calculus may be the perfect platform for your work.

If you wish to try out a free copy of Grassmann Calculus for evaluation and personal use please write to one of us at the email addresses in the sidebar, identifying yourself and telling us a little about your interest in Grassmann calculus. We will send you a link to the download site.

The following are PDF documents that illustrate Mathematica Help pages for Grassmann Calculus commands or notebooks illustrating various calculations.

Grassmann Algebra Book from John Browne’s web site: Chapter 1 Introduction

Main Mathematica Guide Page: GrassmannCalculusGuide

Screenshot of Grassmann Calculus notebook and palettes. Right click to open full size in a new window:

There are over 500 individual Help pages for the routines. These are some of the key ones:

ExteriorProduct RegressiveProduct GrassmannComplement InteriorProduct Contractor VectorOperator ExteriorDerivative FormIntegral EvaluateFormIntegrals