- Home
- Generative Design Software
- ARL Topologies
ARL Topologies
Adelphi, Maryland, United States
What it is
ARL Topologies is a free, open-source topology optimization program intended for research and general use. Its design separates the representation, optimizer, and objective function. It supports 2D and 3D element-based density discretization with SIMP interpolation, as well as nodal-based density discretization using Heaviside projection and filtering. Inputs can include ASCII ExodusII or GMSH meshes, or rectangular pixel and voxel regions. Implemented optimizers include optimality criterion, method of moving asymptotes, BFGS through NLopt, and a genetic algorithm. The included objective function performs static structural finite element analysis. Density-based results can be post-processed to STL, with VTK, GMSH, and Matlab among its output formats. The objective function is loaded from a shared library, allowing extension to different problems. The command-line program uses an XML input file, with an optional -mpi argument when MPI is enabled and useful. Building requires a C++11-compatible compiler and libraries including CGAL, Boost, GMP, MPFR, PugiXML, NLopt, and Eigen for the finite element solver. It is self-hosted, and the repository license describes CC0 1.0 Universal terms with a stated patent-license modification.
For and against
For
- Supports both 2D and 3D density representations.
- Includes several optimization methods.
- Accepts mesh, pixel, and voxel inputs.
- Outputs include STL, VTK, GMSH, and Matlab.
Against
- Requires building from source with C++11 and listed libraries.
- Runs from the command line using an XML input file.
- Default build uses MPI unless its setting is removed.
The verdict
ARL Topologies offers multiple representations and optimizers for structural finite element analysis, with an extension path through shared-library objective functions. Users need to build it themselves and install the listed dependencies.
Who it suits
ARL Topologies may suit researchers and other users working on structural topology optimization who can build and run self-hosted command-line software. Its extensible objective-function design may also suit users adapting it to other problems.
Plans and prices
CC0-licensed software
Compile from source · C++11 compiler and listed libraries required
Read 4 Oct 2026 · github.com
On the record
- Build requirements
- Building requires a C++11-compatible compiler and libraries including CGAL, Boost, GMP, MPFR, PugiXML, NLopt, and Eigen for the finite element solver.github.com · read 4 Oct 2026
- Contributions
- The project says outside contributions must include a Contributor License Agreement.github.com · read 4 Oct 2026
- Design
- The program separates topology optimization into representation, optimizer, and objective function components.github.com · read 4 Oct 2026
- Extensibility
- The objective function is loaded from a shared library, allowing the program to be extended to different problems.github.com · read 4 Oct 2026
- License
- The repository license describes CC0 1.0 Universal terms, with a stated patent-license modification for contributions.github.com · read 4 Oct 2026
- Maker
- The repository is published by USArmyResearchLab and describes the project as a work of the United States government.github.com · read 4 Oct 2026
- Mesh inputs
- It accepts ASCII ExodusII or GMSH meshes, as well as pixel or voxel rectangular regions.github.com · read 4 Oct 2026
- MPI
- The default build configuration uses MPI, which can be removed by deleting -DUSE_MPI; the included FEM library does not use MPI.github.com · read 4 Oct 2026
- Objective function
- The implemented objective function is static structural finite element analysis.github.com · read 4 Oct 2026
- Optimizers
- Implemented optimizers include optimality criterion, method of moving asymptotes and BFGS via NLopt, and a genetic algorithm.github.com · read 4 Oct 2026
- Outputs
- Density-based representations can be post-processed to STL, and output formats include VTK, GMSH, and Matlab.github.com · read 4 Oct 2026
- Purpose
- ARL_Topologies is an extensible topology optimization program intended as both a research platform and a general-use tool.github.com · read 4 Oct 2026
- Representations
- It supports 2D and 3D element-based density discretization with SIMP interpolation and nodal-based density discretization using Heaviside projection and filtering.github.com · read 4 Oct 2026
- Usage
- The program runs from the command line with an XML input file, with an optional -mpi argument when MPI is enabled and useful.github.com · read 4 Oct 2026