Skip to content
SHD Sim
Menu

Adjoint sensitivity

Adjoint sensitivity in OpenFOAM: how every surface point affects the objective

Compute how an objective — drag, pressure loss, uniformity — would change if any point on the surface moved, from one extra solve rather than one run per variable.

What it is

The adjoint solves a second problem whose answer is the sensitivity of the objective to every design variable at once. Its cost barely depends on how many variables there are, which is the entire point: a shape has hundreds, and a finite-difference sweep would need a run for each one.

What the application sets up

  • A differentiable objective, chosen before the run rather than after
  • The primal flow solution the adjoint is taken about
  • Adjoint boundary conditions matching that primal case
  • Surface sensitivity written as a field on the geometry
  • A viewer that shows sensitivity on the surface, since that is the deliverable

Typical uses

  • Duct and manifold shapes for minimum pressure loss
  • Drag reduction under packaging constraints
  • Flow uniformity into a downstream component
  • Deciding which surfaces are worth changing at all

Industries

Sectors where this analysis is routinely asked for.

  • Automotive & motorsport
  • Turbomachinery
  • HVAC & ducting
  • Aerospace

What comes out

  • Surface sensitivity maps
  • Objective gradients per design variable
  • Where effort pays, ranked
  • Direction for the next design step

OpenFOAM solvers

  • adjointOptimisationFoam

Selected and configured for you from the analysis type. You can still see every dictionary the application writes.

In every tier

This analysis type is in the free build. The free tier limits mesh size to 250,000 cells and solving to one core — not which physics you may use.


On accuracy, plainly.

Every analysis type is exercised end to end on every pass — its case is generated, meshed and run — which establishes that the setup is right, not that the answer matches your geometry. No CFD result is evidence until it is checked against something you trust: a measurement, a hand calculation, or a mesh-refinement study the application will run for you. Treat these results with the judgement you would apply to any CFD you set up yourself.