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 three main areas: Core, Solvers, and Discretization and Analysis.
This page groups Trilinos packages according to the capability areas listed on the Trilinos Capabilities page, and identifies the responsibility of the corresponding Area Lead.
Additionally, the DevSecOps team handles the Continuous Integration and Continuous Deployment (CI/CD) processes for Trilinos.
Core Area
- Capabilities: Performance Portability; Partitioning and Load Balancing; Interfaces and Adapters; and Utilities
- Description: This area includes capabilities that provide basic functionalities utilized by many applications and other packages.
- Lead: Roger Pawlowski @rppawlo
| Capability Area | Package | Description | Link(s) |
|---|---|---|---|
| Performance Portability | Kokkos | Performance portability library.* | Doxygen Primary Repo Documentation |
| Kokkos Kernels | Mathematical kernels for node-local computations.* | Primary Repo Documentation | |
| Tpetra | Distributed-memory linear algebra objects and parallel data redistribution. | Doxygen | |
| Partitioning and Load Balancing | Zoltan | Toolkit of parallel services including load balancing. | Documentation |
| Zoltan2 | Load balancing and combinatorial scientific computing. | Doxygen | |
| Interfaces and Adapters | Stratimikos | Unified Thyra-based wrappers to linear solver and preconditioner capabilities. | Doxygen |
| PyTrilinos2 | Python interfaces to several Trilinos packages. | N/A | |
| Thyra | Abstract numerical algorithm interfaces and foundations for solvers. | Doxygen | |
| RTOp | Reduction/transformation operators for vector operations. | Doxygen | |
| Piro | Driver classes for common uses of Trilinos nonlinear analysis tools. | Doxygen | |
| Utilities | Teuchos | Common tools: smart pointers, parameter lists, XML, BLAS/LAPACK wrappers, etc. | Doxygen |
| Galeri | Utilities to generate a variety of (distributed) linear systems. | Doxygen | |
| MiniTensor | Tools for the manipulation and optimization of small vectors/tensors. | N/A |
Solvers Area
- Capabilities: Linear Solvers; and Preconditioners
- Description: This area includes packages that provide preconditioners, linear/nonlinear solvers, and eigen solvers.
- Lead: Jonathan Hu @jhux2
| Capability Area | Package | Description | Link(s) |
|---|---|---|---|
| Linear Solvers | Belos | Iterative linear solvers framework. | Doxygen |
| Amesos2 | Direct solver library interface to third-party solvers. | Doxygen | |
| ShyLU | Sparse direct solvers and domain decomposition methods (includes FROSch). | Doxygen | |
| Adelus | Dense LU factorization and solve on distributed systems (MPI). | Doxygen | |
| Anasazi | Framework for large-scale eigenvalue algorithms. | Doxygen | |
| Preconditioners | Ifpack2 | Incomplete factorizations, relaxations, and domain decomposition for Tpetra objects. | Doxygen |
| MueLu | Multigrid solvers and preconditioners for PDE-based sparse systems. | Doxygen | |
| Teko | Physics-based block preconditioners for multiphysics systems. | Doxygen |
Discretization and Analysis Area
- Capabilities: Discretization Tools; Nonlinear, Transient, and Optimization Solvers; Automatic Differentiation; Uncertainty Quantification; and Mesh and Geometry Tools
- Description: This area features packages that offer modular, interoperable, and extensible tools, often build upon the capabilities provided by the Core and Solvers areas. These tools support the discretization of integral and differential equations, including both mesh-based approaches (e.g., finite element analysis), and meshless methods (e.g., generalized moving least squares).
- Lead: Mauro Perego @mperego
| Capability Area | Package | Description | Link(s) |
|---|---|---|---|
| Discretization Tools | Intrepid2 | Performance portable tools for local assembly of high-order finite element discretizations. | Doxygen |
| Panzer | Finite element assembly for multiphysics systems. | Doxygen | |
| Phalanx | DAG-based local field evaluation and dependency management. | Doxygen | |
| Compadre | Toolkit for meshless discretizations and data transfer.* | Primary Repo Doxygen | |
| Nonlinear, Transient, and Optimization Solvers | NOX | Nonlinear solvers (Newton-based methods, globalization, JFNK, etc.). | Doxygen |
| LOCA | Continuation and stability analysis (subpackage of NOX). | Doxygen | |
| Tempus | Time-integration framework for transient analysis. | Doxygen | |
| ROL | Rapid Optimization Library for large-scale optimization.* | Primary Repo Doxygen | |
| Automatic Differentiation | Sacado | Automatic differentiation tools (forward, reverse, Taylor polynomial modes). | Doxygen |
| Uncertainty Quantification | Stokhos | Intrusive stochastic Galerkin uncertainty quantification methods. | Doxygen |
| Mesh and Geometry Tools | PAMGEN | Creates hexahedral or quadrilateral finite element meshes of simple shapes in parallel. | Report |
| SEACAS | Pre/post-processing tools supporting Exodus database file format.* | Primary Repo Documentation | |
| STK | Massively parallel multiphysics on dynamically changing unstructured meshes.* | Manual | |
| Percept | Tools for mesh adaptation and data transfer to enable solution verification.* | Primary Repo | |
| Shards | Topology data for mesh-based discretization of differential equations. | Doxygen | |
| Krino | Signed distance fields and STK meshes conforming to level set fields.* | N/A |
* Snapshotted package: this code is maintained in its upstream repository and periodically merged (snapshotted) into Trilinos.
