Professional Documents
Culture Documents
13rd EuroAd Workshop - Jens-Dominik Mueller - Using AD To Derive Adjoints For Large Legacy CFD Codes
13rd EuroAd Workshop - Jens-Dominik Mueller - Using AD To Derive Adjoints For Large Legacy CFD Codes
J.-D. Müller
Queen Mary, University of London
collaborators:
D. Jones, F. Christakpoulos, S. Xu, QMUL
S. Bayyuk, ESI, Huntsville AL
c Jens-Dominik Müller, 2013
1 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
FlowHead: http://flowhead.sems.qmul.ac.uk
2 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Outline
Summary
4 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Outline
Summary
5 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
R(U (α), α) = 0
∂R ∂U ∂R
=− ,
∂U ∂α ∂α
Au = f.
ATv = g
T
∂L T ∂L T
∂R
= .
∂U ∂R ∂U
g Tu = (ATv)T u = v TAu = v Tf
Outline
Summary
10 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
y = Fk (Fk−1 (· · · F1 (x) · · · ))
ẏ = Ek (Ek−1 (· · · E1 (ẋ) · · · ))
ẏ = ∇F (x)ẋ = Aẋ.
11 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
y = Fk (Fk−1 (· · · F1 (x) · · · ))
x̄ = E1T (· · · Ek−1
T T
(EkT (ȳ)) · · · ) = AT ȳ T
12 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
13 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
16 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Cost
Primal (CFD) 1.0
Pseudo-ts. adjoint 2.6337738
‘Brute force’ adjoint 4.2138729
17 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
18 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Adjoint convergence
NACA 0012 aerofoil, M a = 0.43 and α = 2◦ , 4 lvl multi-grid
adjoint w.r.t angle of attack.
0
Single grid - Primal
Single grid - Adjoint
Multigrid - Primal
-2 Multigrid - Adjoint
-4
-6
logRMS
-8
-10
-12
-14
-16
0 2000 4000 6000 8000 10000 12000
Iterations on the finest grid
19 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
20 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Sensitivity Validation
Ahmed body
23 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Onera M6
Surface sensitivities
25 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Step 1
27 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Outline
Summary
28 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
30 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
31 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
32 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Convergence history
1
primal [LR]
adjoint [RL]
0.1
0.01
Max. residual 1-norm
0.001
0.0001
1e-05
1e-06
1e-07
0 50 100 150 200 250 300 350 400
Iteration
33 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
34 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Convergence history
1
primal [LR]
adjoint [RL]
0.1
0.01
Max. residual 1-norm
0.001
0.0001
1e-05
1e-06
1e-07
0 50 100 150 200 250 300 350 400
Iteration
35 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
36 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Outline
Summary
37 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
39 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
40 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
41 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Pre-processing steps
42 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Pre-processing
43 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
44 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
#i f n d e f STRIP AD
! ! passive
subroutine p r i n t m a t r i x ( mat )
...
end subroutine
#e n d i f
! ! a c t i v e non−d i f f e r e n t i a b l e
function c o o t o c s r ( i , j , ja , i a ) r e s u l t ( k i j )
#i f n d e f STRIP AD
...
#e l s e
k i j = 0 ! r e t a i n a t r i v i a l dependency
#e n d i f
end function
! ! active differentiable
subroutine m a t r i x s e t u p ( a i j , phi , ja , i a , r e s )
...
#i f n d e f STRIP
i f ( use advanced feature ) call adv feature ()
#e n d i f
end subroutine
end module
45 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Post-processing
46 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
47 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
48 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
ACE+ differentiation
49 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
50 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
51 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
52 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
53 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Outline
Summary
54 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Outline
Summary
56 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Summary
57 / 58
Adjoint Eq Compressible, easy Incompressibe, medium Legacy incompressible, hard Wishlist for AD tools Summary
Acknowledgements
58 / 58