Adjoint Debugging

Overview

This manual covers techniques for verifying adjoint computations in AADC using finite difference (FD) bump-and-revalue methods. The AADC kernel allows introducing shifts in intermediate variable values to compute FD sensitivities for comparison with analytical adjoints.

Key Features:

  • FD verification: Compare analytical adjoints against finite difference approximations
  • Variable bumping: Introduce shifts in intermediate variables via AADCDebugFwdBumpVar()
  • Targeted instrumentation: Enable debugging for specific code sections
  • Debugger integration: Stop at specific variable creation for stack trace analysis

Typical Workflow:

  1. Enable instrumentation for target section
  2. Run adjoint computation
  3. Verify with finite difference
  4. Identify discrepancies
  5. Debug specific variables with debugger integration

This is a preview of the Adjoint Debugging documentation.

The full documentation includes API reference, step-by-step examples, and troubleshooting tips.

Contact us to request a demo version and get access to the complete documentation.