DifferentialGeometry (DG) is a Maple software package which symbolically performs fundamental operations of calculus on manifolds, differential geometry, tensor calculus, Lie algebras, Lie groups, transformation groups, jet spaces, and the variational calculus.
At present, the DG software contains approximately 300 commands, divided into 5 packages. The main DG package contains all the commands for what is often referred to as calculus on manifolds – basic operations with vector fields, differential forms and transformations. The Tensor package contains an extensive set of commands for general algebraic and differential tensor operations as well as commands for specialized computations in general relativity. The Lie algebra package provides commands for creating and manipulating Lie algebras, for calculating various sub-algebras and automorphism groups, and for checking properties of Lie algebras and sub-algebras. The GroupActions package provides functionalities for the symbolic analysis of Lie groups and group actions. The JetCalculus package provides the basis for studying differential equations and the calculus of variations. Finally, the Library package contains tables of Lie algebras, group actions, differential equations and solutions of the Einstein equations. The DG software also contains many utilities to support the creation of new specialized software applications.
The DG software is not black box software. Whenever appropriate, the documentation describes conventions and algorithms in full detail. Users may monitor critical intermediate computations. All internal code and package variables are accessible. All source code is viewable and users may edit the DG library file. The DG interface uses the notation and conventions of modern differential geometry so that researchers and students with modest symbolic computation backgrounds can begin to use the software very quickly.
The DG software makes full use of Maple’s superb capabilities for solving large over-determined PDE systems. Such systems feature in virtually every application of differential geometry. In particular, such systems must be solved when calculating symmetries of geometric objects, finding group invariant geometric objects and when computing a wide range of special tensors (for example Killing tensors). These capabilities genuinely set the DG software apart from other packages.
There are currently 275 pages of documentation, including an extensive set of Lessons and Tutorials which provides a systematic approach to learning how to use the various commands in a variety of applications. These Lessons and Tutorials have proven themselves to be very effective in training researchers and students to use the software.
Development and applications of DifferentialGeometry are supported in part by National Science Foundation grants OCI-1148331, DMS-071380, DMS-0410373.