Skip to content
Permalink
main
Switch branches/tags
Go to file
 
 
Cannot retrieve contributors at this time

Goma

A Full-Newton Finite Element Program for Free and Moving Boundary Problems with Coupled Fluid/Solid Momentum, Energy, Mass, and Chemical Species Transport

For more information see the Goma website

Documentation

Most of the documentation can be found at https://www.gomafem.com/documentation.html

License

See LICENSE file. Some cmake modules under cmake/ were modified from the Eigen library and are noted at the top of the cmake file.

Major Changes

See CHANGES.md

Build Instructions

See BUILD.md

Spack package

The Spack package manager https://spack.io can be used to install Goma and all of Goma's third party libraries

Currently available on the develop branch of spack.

Example for a bash-like shell:

git clone https://github.com/spack/spack.git
. spack/share/spack/setup-env.sh
spack install goma

For more information on build options see:

spack info goma

For more information on using spack see the spack documentation.

Third party libraries

  • Metis 5.1.0 (Optional)
  • SEACAS 2022-01-27 (Required: Exodus and Aprepro)
  • BLAS/LAPACK (Configured through Trilinos)
  • Trilinos matrix solvers 13.0.1 and up (Required: AztecOO, Amesos, Epetra, TPL LAPACK; Optional: Stratimikos [with Teko, Ifpack, Belos, Tpetra])
  • PETSc matrix solvers (KSP, PC)
  • MUMPS 5.4.0 (through Trilinos or PETSc only)
  • Superlu_dist 7.2.0 (through Trilinos or PETSc only, Trilinos requires parmetis build)
  • UMFPACK, SuiteSparse 5.10.1 (Optional)
  • ARPACK/arpack-ng 3.8.0 (Optional)
  • sparse 1.4b (Optional)
  • Catch2 (Optional testing)

Run the tutorial

To get started with Goma, use the following: