Download and run

Since all SageManifolds code is included in SageMath, it suffices to install SageMath 9.7 to benefit from the latest manifold functionalities:

  • Linux: most major Linux distributions have SageMath packages; however, it may be a version older than 9.7. To install SageMath 9.7 on Ubuntu 20.04 or 22.04 (and other Debian-based systems), simply follow these steps; for other distributions, see the installation guide.
  • macOS: visit this page
  • Windows: visit this page for SageMath 9.3 and this one for SageMath 9.7
Having installed SageMath, if you run
sage -n
a Jupyter page should open in your browser. Click on "New" and select "SageMath 9.7" to open a Jupyter notebook with a SageMath kernel. In the first cell, if you type
Manifold(2, 'M')
the output should be
2-dimensional differentiable manifold M

You are then ready to use SageManifolds tools and can jump to the tutorial, to the tutorial videos or to the 2-sphere example. See also the documentation section below.

Use a Docker image

If you are familiar with Docker, an alternative to a traditional install is to pull the SageMath Docker image.

Use without installation

Instead of installing SageMath on your computer, you can run it remotely via CoCalc:

  • in a Jupyter notebook: in the Kernel menu, choose Change kernel and select SageMath 9.7 (or higher)
  • in a SageMath worksheet: to have nice LaTeX-typeset outputs, type typeset_mode(True) in the first cell.

For short pieces of code, you may use SageMathCell. Here is some example.

Another option is to use Sage Debian Live, which is a USB key with SageMath preinstalled.


Reference manual

The on-line reference manual is here for the differential part and here for the pure algebraic part. It can also be accessed locally, under your SageMath root directory, in the file

while the reference manual of the pure algebraic part of SageManifolds is located in
Finally, SageMath's whole reference manual is located in

PDF manuals

The PDF reference manuals are generated by
    ./sage -docbuild reference/manifolds pdf
    ./sage -docbuild reference/tensor_free_modules pdf

The SageManifolds reference manual is then local/share/doc/sage/pdf/en/reference/manifolds/manifolds.pdf under your SageMath root directory, while the reference manual of the pure algebraic part of SageManifolds is local/share/doc/sage/pdf/en/reference/tensor_free_modules/tensor_free_modules.pdf

SageManifolds reference manual is also available on-line (html, pdf).

Tutorials and extra documentation

Tutorial and more documentation are available here.
See also the examples.

Python source files

The Python source files of the SageManifolds project are located in two subdirectories of your SageMath root directory:

  • src/sage/tensor/modules/ for the pure algebraic part (tensors on free modules)
  • src/sage/manifolds/ for the topological and differential parts

See the Contribute section if you would like to modify or add some code.

Downloading example notebooks and extra stuff

In a directory different from the root of your SageMath install, type

    git clone

and take a look at SageManifolds/

The example notebooks can also be downloaded directly from the examples page, by clicking on [ipynb] (Jupyter notebook format).