English
Related papers

Related papers: AD in Fortran, Part 1: Design

200 papers

Scientists often infer abstract procedures from specific instances of problems and use the abstractions to generate new, related instances. For example, programs encoding the formal rules and properties of a system have been useful in…

Computation and Language · Computer Science 2025-07-22 Zaid Khan , Elias Stengel-Eskin , Archiki Prasad , Jaemin Cho , Mohit Bansal

In today's embedded applications a significant portion of energy is spent in the memory subsystem. Several approaches have been proposed to minimize this energy, including the use of scratch pad memories, with many based on static analysis…

Programming Languages · Computer Science 2011-11-09 Ilya Issenin , Nikil Dutt

We study the correctness of automatic differentiation (AD) in the context of a higher-order, Turing-complete language (PCF with real numbers), both in forward and reverse mode. Our main result is that, under mild hypotheses on the primitive…

Logic in Computer Science · Computer Science 2021-01-13 Damiano Mazza , Michele Pagani

In this work we present useful techniques and possible enhancements when applying an Algorithmic Differentiation (AD) tool to the linear algebra library Eigen using our in-house AD by overloading (AD-O) tool dco/c++ as a case study. After…

Mathematical Software · Computer Science 2020-06-23 Patrick Peltzer , Johannes Lotz , Uwe Naumann

Reverse-mode automatic differentiation (AD) suffers from the issue of having too much space overhead to trace back intermediate computational states for back-propagation. The traditional method to trace back states is called checkpointing…

Programming Languages · Computer Science 2021-02-02 Jin-Guo Liu , Taine Zhao

Automatic differentiation (AD) aims to compute derivatives of user-defined functions, but in Turing-complete languages, this simple specification does not fully capture AD's behavior: AD sometimes disagrees with the true derivative of a…

Programming Languages · Computer Science 2021-12-07 Alexander K. Lew , Mathieu Huot , Vikash K. Mansinghka

In this paper we demonstrate a new technique for deriving discrete adjoint and tangent linear models of finite element models. The technique is significantly more efficient and automatic than standard algorithmic differentiation techniques.…

Mathematical Software · Computer Science 2013-10-17 Patrick E. Farrell , David A. Ham , Simon F. Funke , Marie E. Rognes

Dual numbers are a well-established tool for computing derivatives and constitute the basis of forward-mode automatic differentiation. While the theoretical framework for computing derivatives of arbitrary order is well understood,…

Numerical Analysis · Mathematics 2026-02-06 F. Peñuñuri , K. B. Cantún-Avila , R. Peón-Escalante

We present the classical coordinate-free formalism for forward and backward mode ad in the real and complex setting. We show how to formally derive the forward and backward formulae for a number of matrix functions starting from basic…

Machine Learning · Computer Science 2022-07-14 Mario Lezcano-Casado

Automatic Differentiation (AD) allows to determine exactly the Taylor series of any function truncated at any order. Here we propose to use AD techniques for Monte Carlo data analysis. We discuss how to estimate errors of a general function…

High Energy Physics - Lattice · Physics 2019-02-07 Alberto Ramos

As we reach the limit of Moore's Law, researchers are exploring different paradigms to achieve unprecedented performance. Approximate Computing (AC), which relies on the ability of applications to tolerate some error in the results to…

Numerical Analysis · Mathematics 2023-04-14 Garima Singh , Baidyanath Kundu , Harshitha Menon , Alexander Penev , David J. Lange , Vassil Vassilev

Automatic differentiation (AD) has driven recent advances in machine learning, including deep neural networks and Hamiltonian Markov Chain Monte Carlo methods. Partially observed nonlinear stochastic dynamical systems have proved resistant…

Methodology · Statistics 2024-07-04 Kevin Tan , Giles Hooker , Edward L. Ionides

Differentiable programming is a fresh programming paradigm which composes parameterized algorithmic components and trains them using automatic differentiation (AD). The concept emerges from deep learning but is not only limited to training…

Strongly Correlated Electrons · Physics 2019-09-11 Hai-Jun Liao , Jin-Guo Liu , Lei Wang , Tao Xiang

No single Automatic Differentiation (AD) system is the optimal choice for all problems. This means informed selection of an AD system and combinations can be a problem-specific variable that can greatly impact performance. In the Julia…

Mathematical Software · Computer Science 2022-02-08 Frank Schäfer , Mohamed Tarek , Lyndon White , Chris Rackauckas

Although many active scientific codes use modern Fortran, most contemporary scientific software "libraries" are implemented in C and C++. Providing their numerical, algorithmic, or data management features to Fortran codes requires writing…

Software Engineering · Computer Science 2019-07-04 Seth R. Johnson , Andrey Prokopenko , Katherine J. Evans

We give a gentle introduction to using various software tools for automatic differentiation (AD). Ready-to-use examples are discussed, and links to further information are presented. Our target audience includes all those who are looking…

Mathematical Software · Computer Science 2007-05-23 Uwe Naumann , Andrea Walther

As computational challenges in optimization and statistical inference grow ever harder, algorithms that utilize derivatives are becoming increasingly more important. The implementation of the derivatives that make these algorithms so…

Mathematical Software · Computer Science 2015-09-25 Bob Carpenter , Matthew D. Hoffman , Marcus Brubaker , Daniel Lee , Peter Li , Michael Betancourt

We describe a methodology for designing efficient parallel and distributed scientific software. This methodology utilizes sequences of mechanizable algebra--based optimizing transformations. In this study, we apply our methodology to the…

Software Engineering · Computer Science 2008-11-18 Harry B. Hunt , Lenore R. Mullin , Daniel J. Rosenkrantz , James E. Raynolds

There is an ongoing effort to develop tools that apply distributed computational resources to tackle large problems or reduce the time to solve them. In this context, the Alternating Direction Method of Multipliers (ADMM) arises as a method…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-09 Ning Hao , AmirReza Oghbaee , Mohammad Rostami , Nate Derbinsky , José Bento

We demonstrate a practical differentiable programming approach for acoustic inverse problems through two applications: admittance estimation and shape optimization for resonance damping. First, we show that JAX-FEM's automatic…

Machine Learning · Computer Science 2025-11-17 Nikolas Borrel-Jensen , Josiah Bjorgaard