Differentiable Fortran with LFortran and Enzyme

Researchers are using LFortran and Enzyme to enable automatic differentiation in legacy Fortran, C, and C++ simulation code. This allows high-performance physics engines to be integrated into modern machine learning frameworks like JAX and PyTorch.
Why it matters
This technology bridges the gap between decades of validated scientific simulation code and modern AI pipelines, enabling more efficient research in fields like climate and aerospace.
What if you could backpropagate through existing Fortran, C, or C++ simulation code, embed it into JAX and torch, and use it as a high-performance differentiable physics engine? Turns out, you can — if you’re brave enough…
The article is a technical explainer focused on software engineering methodology.
Get smarter about the news
Sign up free for a feed built around what you actually care about, Dive Deeper research on any story, and the full text of every article.
Create free accountAlready have an account? Sign in