Grassmann Calculus is a Mathematica application based on the work of Hermann Grassmann as developed and extended by John Browne. This is described in John’s book: Grassmann Algebra Volume 1: Foundations. John has written the code for the Grassmann algebra core. I have been working on creating a user interface based on good principals of application design, and in adding coordinates and calculus to the algebra.
Grassmann Calculus is still in development and might be considered to be in beta testing. Nevertheless it is quite substantial and useful. It is fairly complete in providing routines for the exterior and regressive products, the Grassmann complement (which introduces a metric and is similar to the Hodge star operation) and the interior product. The application comes with built-in book chapter notebooks and draft chapters for the coming second volume. The draft chapters and code are substantially complete for a generalized Grassmann product, which in turn leads to hypercomplex products including the Clifford product. It’s also possible to implement symbolic quaternions, octonions and sedenions. There are right and left contractors of vectors on forms and also a generalized cross product for convenience.
The calculus portion allows the user to implement any number of coordinate systems. There is a menu of standard coordinate systems, a set of generic coordinate systems for any dimension that can be further customized, and routines for defining custom coordinate systems from scratch. Only one coordinate system can be active at a given moment but it is easy to switch between them, even in the middle of a Mathematica expression or routine.
The coordinate systems are encapsulated in Mathematica Associations, which were implemented in Mathematica Version 10. This allows users to append their own information in a coordinate system, or to extract information from any coordinate system, even if it isn’t active. Or a user could create their own Associations that might, for example, handle transitions between coordinate systems. One can store definitions, routines or even palettes in an Association and then install them all by simply taking the Values of the Association.
The calculus routines include a VectorOperator that turns basis vectors into partial derivative operators, a directional derivative, an exterior derivative and a Lie derivative. There is also a routine that calculates a JacobianOfMapping. It also includes all the Vector Analysis type derivative operators and form volume integrals.
The application is extensively documented with standard Mathematica paclet documentation – but we are still working on filling in gaps at the margins. There is also a small collection of notebooks for various applications. The application is about 170 MB with over 800 files. It comes with palettes and style sheets.
Quite frankly we are looking for people in mathematics, physics or engineering who would be interesting in trying out the application, giving feedback and maybe even providing some further example notebooks.
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. 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: 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: