07.02.2013 Views

Optimization and Computational Fluid Dynamics - Department of ...

Optimization and Computational Fluid Dynamics - Department of ...

Optimization and Computational Fluid Dynamics - Department of ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

126 Nicolas R. Gauger<br />

Spalart-Allmaras-Edwards one-equation, <strong>and</strong> the Wilcox k–ω two-equation<br />

turbulence models.<br />

For both solvers, FLOWer as well as TAU, first activities are launched for<br />

the automated generation <strong>of</strong> discrete adjoint solvers by the use <strong>of</strong> AD tools.<br />

For the FLOWer code, the AD tool TAF [11] is used while ADOL-C [14] is<br />

used for the TAU code.<br />

5.6 Automatic Differentiation Applied to an Entire<br />

Design Chain<br />

For the optimizations presented in this section, we used the following tools<br />

covering the four steps <strong>of</strong> the design chain:<br />

For the surface deformation, the tool defgeo has been used. This tool has<br />

been implemented in order to compute deformations based on Hicks-Henne<br />

as well as cosine functions.<br />

The grid deformation within our optimization chain is done by a tool<br />

named meshdefo. This tool uses a public domain linear equations solver to<br />

compute the above mentioned coefficients <strong>of</strong> the interpolation.<br />

DLR flow solver TAUij is used to compute the flow around the deformed<br />

airfoil. TAUij is a quasi 2D version <strong>of</strong> TAUijk [17], which again is based on<br />

a cell centered developer version <strong>of</strong> the DLR TAU code [29]. TAUij solves<br />

the quasi 2D Euler equations. For the spatial discretization, the MAPS+<br />

[26] scheme is used. To achieve second order accuracy, gradients are used to<br />

reconstruct the values <strong>of</strong> variables at the cell faces. A slip wall <strong>and</strong> a far-field<br />

boundary condition are applied. For time integration, a Runge-Kutta scheme<br />

is used. To accelerate the convergence, local time stepping, explicit residual<br />

smoothing <strong>and</strong> a multigrid method are used. The code TAUij is written in<br />

C <strong>and</strong> comprises approximately 6,000 lines <strong>of</strong> code distributed over several<br />

files.<br />

To compute the difference vectors <strong>of</strong> the original to the transformed shape<br />

geometry, another program named difgeo had to be implemented.<br />

The chain to compute the cost function value is illustrated in Fig. 5.4.<br />

This entire optimization chain has been differentiated by the use <strong>of</strong> ADOL-<br />

C, which operates in reverse (adjoint) mode [10, 27]. This differentiated chain<br />

can be written as<br />

∂CD ∂CD ∂m ∂dx ∂x<br />

= · · ·<br />

∂X ∂m ∂dx ∂x ∂X .<br />

Note that the first term on the right side corresponds to the differentiation <strong>of</strong><br />

TAUij, the second term to the differentiation <strong>of</strong> meshdefo, thethirdtermto<br />

the differentiation <strong>of</strong> difgeo <strong>and</strong> the last term to the differentiation <strong>of</strong> defgeo.<br />

Since difgeo computes only the differences dx = x−xs <strong>and</strong> xs is a static initial<br />

surface, its corresponding factor becomes the unit matrix <strong>and</strong> therefore

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!