- The Finite Element Method
- Declarative Programming
- About the code and the documentation
- Handles and Memory Management
- Parallel computation

- Mesh Sources and Transformations are used to create, import, or transform discrete geometry
- Cell Filters are used to define subregions (e.g., node sets, side sets)
- Symbolic Expressions are used to define equations and boundary conditions
- Discrete Spaces and Functions are used to represent finite-element spaces and fields

- Specification of Weak Forms of Equations
- Specification of Boundary Conditions
- Setup and use of Linear Problems
- Setup and use of Nonlinear Problems

Some example simulators developed in Sundance can be found here