target functional-based adaptation > daniel vollmer > 21.06.2006 folie 1 target...
TRANSCRIPT
Folie 1Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Target Functional-based AdaptationDaniel Vollmer
TAU Grid Adaptation Workshop21 / 22 June 2006, DLR Göttingen
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 2
Outline
The Introduction – or what we are doing now…
Our Aim – or where we would rather be…
A Plan – or how we intend to get there…
Some Examples – or what has already been done…
The Future – or where do we go from here…
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 3
The IntroductionWhat we are doing now
The TAU Adaptation consists of two main parts:
Figuring out where to refine the mesh (using an indicator)
Constructing a new mesh where the regions selected by the indicator are better resolved
The current indicators select regions where the gradient of the flow variables (or values computed from them) is large, e.g.
shocks, discontinuities, …
total pressure loss
Does not necessarily converge to the correct (i.e. globally refined) solution, although it works fine in most non-contrived cases
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 4
Our AimWhere we would rather be
Adapt the mesh until it is “accurate enough”
What is “accurate enough”?
Users are often interested in the aerodynamic coefficients to estimate performance
These coefficients are functionals of the flow solution
They don’t care whether discontinuities are well-resolved, as long as drag / lift / … are accurate
For example, we would like to be able to specify
“adapt until the error in drag is smaller than 0.5 drag counts”
Not a solution for every problem (e.g. BVI), but appropriate for when functionals of the solution are of interest
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 5
A PlanHow we intend to get there
Use the adjoint solution to correlate the local truncation error (due to insufficient mesh resolution) with the error in the target functional
Also known as “Dual-Weighted Residual” approach in the Finite-Element (Rannacher) or Discontinuous-Galerkin (Hartmann, Houston) realm
Has been popularized in the Finite-Volume context by Venditti & Darmofal
Only changes the indicator, the TAU Adaptation constructs the refined meshes exactly as it did before
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 6
A PlanHow we intend to get there
Need two additional bits of information
Adjoint solution, computed based on the flow solution and the given target functional
Tells us where the flow solution influences the functional
An estimate of the mesh-induced error (residual)
Tells us where a finer mesh would improve the flow solution
Multiply the two together to get an idea where a finer mesh is needed to improve the accuracy of the target functional
The above is an “intuitive” explanation, but there is real maths behind it
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 7
A PlanHow we intend to get there
We can compute the adjoint solution with TAU’s adjoint module
But what about the mesh-induced error?
Difficult problem for Finite Volume methods
FE / DG can simply increase the order of approximation to compute a non-zero residual from a lower order solution
Finite Volume methods can increase the order, too – by halving the mesh spacing h
Globally refine the original mesh
Interpolate the original (converged) flow solution onto it
Evaluate the residual
Interpolate residuals back to the original mesh
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 8
A PlanHow we intend to get there
Initial Grid Flow Solution
Adaptation
Adapted Grid
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 9
A PlanHow we intend to get there
TAU Adjoint
Adjoint Solution
Globally Refined Grid
TAU Residual
Fine ResidualAdaptation
Residual
AdaptationInitial Grid Flow Solution
Adaptation
Adapted Grid
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 10
Some Examples What has already been done…
Tested a lot of the ideas in the structured FLOWer code
Is less complicated
Adjoint solver was working
Implemented the process in a TAU development version
Relies on available TAU functionality, such as
Continuous Adjoint Solver for Euler problems (M. Widhalm, N. Gauger)
Discrete Adjoint Solver for Navier-Stokes problems (R. Dwight)
(Modified) Adaptation Module for global (de-)refinement
Currently, the indicator is computed with an external Python script that processes TAU restart-files of the adjoint solution and the residual
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 11
X
Z
-0.4 -0.2 0 0.2 0.4
-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
X
Z
-0.4 -0.2 0 0.2 0.4
-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
Some Examples What has already been done…
Example: NACA0012, Euler, M=1.5, α=1.0°, target functional = pressure at tip
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 12
X
Z
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
NACA0012, M=1.5, =1.0°, Adjoint: Pressure at tip
Some Examples What has already been done…
X
Z
-0.4 -0.2 0 0.2 0.4
-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
NACA0012, M=1.5, =1.0°, Adjoint: Pressure at tip
Example: NACA0012, Euler, M=1.5, α=1.0°, target functional = pressure at tip
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 13
Some Examples What has already been done…
Example: NACA0012, Euler, M=0.85, α=2.0°, target functional = lift
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 14
Some Examples What has already been done…
Example: NACA0012, Euler, M=0.85, α=2.0°, target functional = lift
Adapted 4 times
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 15
Some Examples What has already been done…
Example: RAE2822, NS/SAE, M=0.73, α=2.76°, target functional = drag
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 16
Some Examples What has already been done…
Example: RAE2822, NS/SAE, M=0.73, α=2.76°, target functional = drag
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 17
Some Examples What has already been done…
Example: RAE2822, NS/SAE, M=0.73, α=2.76°, target functional = drag
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 18
The FutureWhere do we go from here…
Currently, a given percentage of elements is added
Want to refine all edges exceeding a certain threshold
Some code for this is already there
Determine a good threshold to use for the edges, so that the global error in the target functional is smaller than some prescribed maximum
More testing on selected test-cases
Convergence to the correct (globally refined) solution?
Comparison to normal adaptation
Accuracy in the target functional
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 19
The FutureWhere do we go from here…
Seek an alternative to the residual computation on the fine mesh
Global (de-)refinement is expensive, especially on large meshes
Makes the process complicated and cumbersome
Globally Refined Grid
TAU Residual
Fine ResidualAdaptation
Residual
AdaptationFlow Solution
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 20
The FutureWhere do we go from here…
Seek an alternative to the residual computation on the fine mesh
Global (de-)refinement is expensive, especially on large meshes
Makes the process complicated and cumbersome
Globally Refined Grid
TAU Residual
Fine ResidualAdaptation
Residual
AdaptationFlow Solution
???????
Residual
Flow Solution
Target Functional-based Adaptation > Daniel Vollmer > 21.06.2006
Folie 21
The FutureWhere do we go from here…
Try to streamline / simplify the process
Integrate the changes back into Mainline-TAU
...
Give it to users
Questions?