Trilinos Area Leads

In the Trilinos project, Area Leads play a vital role in overseeing specific areas or components of the software framework. They are responsible for coordinating the needs and requirements of stakeholders, facilitating requests, and managing inter-package interactions. By actively engaging with the community, Area Leads gather valuable feedback to ensure that the packages effectively meet user needs.

Additionally, they are instrumental in creating and maintaining comprehensive documentation for their packages, as well as providing essential support to users. With significant expertise in their respective fields, Area Leads contribute to the strategic direction of the Trilinos project. Their efforts are crucial for the ongoing development, maintenance, and enhancement of Trilinos packages, ensuring that the software remains both relevant and of high quality.

The Trilinos packages are organized into four main areas: Core, Solvers, Discretization and Analysis, and DevSecOps.

Core Area

  • Description: This area includes packages that provide basic capabilities utilized by many applications and other packages.
  • Lead: Roger Pawlowski @rppawlo
Status* Package Description
Galeri A suite of utilities and classes to generate a variety of (distributed) linear systems.
Kokkos Performance portability library.
PAMGEN Creates hexahedral or quadrilateral (in 2D) finite element meshes of simple shapes (cubes and cylinders) in parallel.
PyTrilinos2 Replacement for PyTrilinos.
RTop Provides the basic mechanism for implementing vector operations in a flexible and efficient manner.
📸 SEACAS A suite of preprocessing, postprocessing, translation, and utility applications supporting finite element analysis software using the Exodus database file format.
Teuchos Provides a suite of common tools for Trilinos developers, including BLAS and LAPACK wrappers, smart pointers, parameter lists, and XML parsers.
🛠️ Tpetra Implements linear algebra objects, including sparse graphs, sparse matrices, and dense vectors, with facilities for parallel data redistribution.
Thyra Abstract linear solver package providing a foundation for writing linear and nonlinear abstract numerical algorithms.
Zoltan A toolkit of parallel services for dynamic, unstructured, and/or adaptive simulations, providing load balancing and related services.
Zoltan2 A package for load balancing and combinatorial scientific computing, viewed as a successor to Zoltan and Isorropia.

Solvers Area

  • Description: This area includes packages that provide preconditioners, linear/nonlinear solvers, and eigen solvers.
  • Lead: Jonathan Hu @jhux2
Status* Package Description
Adelus Performs LU factorization with partial pivoting and solves for a dense linear equation system on a distributed computing system using MPI.
Amesos2 Direct solver library interface in Trilinos, providing interfaces to third-party direct solvers for templated matrices and vectors.
Anasazi An extensible and interoperable framework for large-scale eigenvalue algorithms.
Belos Next-generation iterative solvers written using a traits interface, compatible with any linear algebra library implementing Thyra abstract interfaces.
Ifpack2 Provides incomplete factorizations, relaxations, and domain decomposition operators for linear algebra objects provided by the Tpetra package.
🛠️ Muelu Designed to solve large sparse linear systems of equations arising from PDE discretizations, providing multigrid solvers and preconditioners.
ShyLU Package for solving sparse linear systems using domain decomposition methods, focusing on distributed memory and node-level solvers.
Stratimikos Contains a unified set of Thyra-based wrappers to linear solver and preconditioner capabilities in Trilinos.
Teko Brings together multiple physics to form one preconditioner.
Xpetra A lightweight wrapper to both the Epetra and Tpetra linear algebra libraries, mirroring Tpetra's syntax.

Discretization and Analysis Area

  • Description: This area includes packages that provide modular, interoperable, and extensible tools, often built on packages from the Core and Solvers Areas. Provides modular, interoperable and extensible tools for the discretization of integral and differential equations, and includes tools for mesh-based discretizations such as finite element analysis as well as meshless discretization such as generalized moving least squares.
  • Lead: Mauro Perego @mperego
Status* Package Description
Compadre Toolkit for meshless discretizations enabling the solution of differential equations and data transfer.
🛠️ Intrepid2 Performance portable tools for the local assembly of high-order compatible finite element discretizations.
📸 Krino Tools for computing and reinitializing signed distance fields and creating unstructured STK meshes that conform to level set fields.
MiniTensor Tools for the manipulation and optimization of small vectors/tensors.
Panzer Package for performing finite element analysis.
📸 Percept A collection of tools for mesh adaptation and data transfer to enable solution verification.
Phalanx DAG-based local field evaluation kernel designed for general partial differential equation solvers.
Piro Provides driver classes for common uses of Trilinos nonlinear analysis tools.
🛠️ ROL Next-generation package for large-scale optimization, solving optimal design, control, and inverse problems.
Sacado Package for automatic differentiation of C++ programs, providing classes for forward, reverse, and Taylor polynomial mode.
Shards Topology data for mesh-based discretization of differential equations.
📸 STK Supports massively parallel multi-physics computations on dynamically changing unstructured meshes.
Stokhos Package for intrusive stochastic Galerkin uncertainty quantification methods.
Tempus Time-integration framework for advanced transient analysis, including various time integrators.
TrilinosCouplings A collection of interfaces between packages.

DevSecOps Team

  • Description: Provides streamlined processes and a set of tools for the development of Trilinos packages.
  • Lead: Sam Browne @sebrowne
  • Responsibilities:
    • Implements various development, testing, automation tools, and IT infrastructure.
    • Defines and sets development, test, release, update, and support processes.
    • Organizes and maintains the Trilinos release process.
  • Team Members:

Package Status*

  • 🛠️ Actively Developed
  • ✅ Supported Package
  • ⚠️ Planned Archival/Deprecation
  • 📸 Snap-shotted Package
  • ⛔ Archived/Deprecated Package