Fork me on GitHub

Macaulay2

Macaulay2 is a software system devoted to supporting research in algebraic geometry and commutative algebra.

Macaulay2 includes core algorithms for computing Gröbner bases and graded or multi-graded free resolutions of modules over quotient rings of graded or multi-graded polynomial rings with a monomial ordering. The core algorithms are accessible through a versatile high level interpreted user language with a powerful debugger supporting the creation of new classes of mathematical objects and the installation of methods for computing specifically with them.

Macaulay2 can compute Betti numbers, Ext, cohomology of coherent sheaves on projective varieties, primary decomposition of ideals, integral closure of rings, and more.

Interactive Usage

After connecting to iceberg (see Establishing a SSH connection), start an interactive session with the qsh or qrsh command. To make Macaulay2 available in this session, run one of the following command:

module load apps/gcc/5.3/macaulay2/1.9.2
module load apps/gcc/5.3/macaulay2/1.10
module load apps/gcc/5.3/macaulay2/1.12.0.1

You should then be able to start an interactive Macaulay2 session using

M2

Testing

Macaulay2 can perform an extensive series of self-tests at compile-time (by running make check). These tests were performed and passed when building Macaulay2 on Iceberg.

Installation notes and modulefile

Version 1.12.0.1

  • Built using install.sh
  • Made available to users via this modulefile located on the system at /usr/local/modulefiles/apps/gcc/5.3/macaulay2/1.12.0.1
  • The install script and module file enable several other module files to provide:
    • GCC’s compiler and Fortran library (compilers/gcc/5.3)
    • the Boost C++ libraries (libs/gcc/5.2/boost/1.59)
    • LAPACK linear algebra routines (libs/gcc/lapack/3.3.0)
    • LZMA (xz) (de)compression (apps/gcc/4.4.7/xzutils/5.2.4)

Version 1.9.2

  • Built using install.sh
  • Built using a specific git commit (aedebfc1e6326416cb01598e09e8b4dbdc76c178) rather than the tagged 1.9.2 release as Macaulay2’s self-tests failed for the latter. There are few differences between this commit and the tagged 1.9.2 release.
  • Made available to users via this modulefile located on the system at /usr/local/modulefiles/apps/gcc/5.3/macaulay2/1.9.2
  • The install script and module file enable several other module files to provide:
    • OpenMPI (mpi/intel/openmpi/1.10.0)
    • GCC’s compiler and Fortran library (compilers/gcc/5.3)
    • the Boost C++ libraries (libs/gcc/5.2/boost/1.59)
    • LAPACK linear algebra routines (libs/gcc/lapack/3.3.0)
    • LZMA (xz) (de)compression (apps/gcc/4.4.7/xzutils/5.2.2)