FREEDOM251

Freedom251 › Generative Design Software

ARL Topologies

Free plan Self-hosted

Visit ARL Topologies Alternatives Pricing

ARL Topologies's own site

What ARL Topologies is

ARL Topologies is a free, self-hosted topology optimization program intended for research and general use. It separates design representation, optimization method, and objective function, with support for 2D and 3D element-based density discretization using SIMP interpolation, and nodal-based density discretization using Heaviside projection and filtering. Inputs can be ASCII ExodusII or GMSH meshes, or rectangular pixel and voxel regions. Available methods include optimality criterion, method of moving asymptotes, BFGS via NLopt, and a genetic algorithm. Its implemented objective function performs static structural finite element analysis. Density-based results can be post-processed to STL, and output formats include VTK, GMSH, and Matlab. The objective function is loaded from a shared library to enable extension to different problems. It runs from the command line using an XML input file, with an optional -mpi argument when MPI is enabled and useful. Building requires a C++11-compatible compiler and listed libraries including CGAL, Boost, GMP, MPFR, PugiXML, NLopt, and Eigen for the finite element solver.

Who it suits

ARL Topologies suits researchers and other users working on topology optimization for structural finite element analysis. It may fit developers who can build C++ software and manage its listed library requirements.

What it does well

  • Supports 2D and 3D density discretization
  • Accepts mesh, pixel, and voxel inputs
  • Includes four implemented optimization approaches
  • Outputs include STL, VTK, GMSH, and Matlab
  • Objective functions can be extended through shared libraries

What to know first

  • Requires a C++11-compatible compiler and listed libraries
  • Runs from the command line using an XML input file
  • The implemented objective function is static structural finite element analysis

Limits

The free plan requires compiling from source with a C++11-compatible compiler and listed libraries, including Eigen for the finite element solver. The default build uses MPI, though it can be removed by deleting -DUSE_MPI.

Plans

PlanBilled and limitsPrice
CC0-licensed softwareCompile from source · C++11 compiler and listed libraries requiredFree

As github.com lists them, read 4 Oct 2026. The maker's own page has the final word.

Getting started

  1. Open the USArmyResearchLab repository.
  2. Compile the program using a C++11-compatible compiler and the required libraries.
  3. Prepare an XML input file with a supported mesh or rectangular pixel or voxel region.
  4. Run the program from the command line.
  5. Use the optional -mpi argument when MPI is enabled and useful.

Verdict

ARL Topologies offers multiple representations and optimization methods for structural analysis, with an extension route through shared libraries. Its build dependencies and command-line workflow are important considerations before adoption.

Questions

Is ARL Topologies free?

Yes. It is listed as free, and the repository license describes CC0 1.0 Universal terms with a stated patent-license modification for contributions.

What does ARL Topologies do?

It is an extensible topology optimization program intended for research and general use. Its implemented objective function performs static structural finite element analysis.

Which input formats does it accept?

It accepts ASCII ExodusII or GMSH meshes, as well as rectangular pixel or voxel regions.

Which optimization methods are implemented?

The program includes optimality criterion, method of moving asymptotes, BFGS through NLopt, and a genetic algorithm.

What outputs can it produce?

Output formats include VTK, GMSH, and Matlab. Density-based representations can also be post-processed to STL.

What is required to build it?

Building requires a C++11-compatible compiler and libraries including CGAL, Boost, GMP, MPFR, PugiXML, and NLopt. Eigen is required for the finite element solver.

Facts from ARL Topologies's own pages

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, 4 Oct 2026
Contributions
The project says outside contributions must include a Contributor License Agreement. · github.com, 4 Oct 2026
Design
The program separates topology optimization into representation, optimizer, and objective function components. · github.com, 4 Oct 2026
Extensibility
The objective function is loaded from a shared library, allowing the program to be extended to different problems. · github.com, 4 Oct 2026
Headquarters
Adelphi, Maryland, United States · github.com, 28 Sept 2026
License
The repository license describes CC0 1.0 Universal terms, with a stated patent-license modification for contributions. · github.com, 4 Oct 2026
Maker
The repository is published by USArmyResearchLab and describes the project as a work of the United States government. · github.com, 4 Oct 2026
Mesh inputs
It accepts ASCII ExodusII or GMSH meshes, as well as pixel or voxel rectangular regions. · github.com, 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, 4 Oct 2026
Objective function
The implemented objective function is static structural finite element analysis. · github.com, 4 Oct 2026
Optimizers
Implemented optimizers include optimality criterion, method of moving asymptotes and BFGS via NLopt, and a genetic algorithm. · github.com, 4 Oct 2026
Outputs
Density-based representations can be post-processed to STL, and output formats include VTK, GMSH, and Matlab. · github.com, 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, 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, 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, 4 Oct 2026

Where ARL Topologies stands on Freedom251

Look at these too