1 / 8

Automatic Differentiation at Rolls-Royce

The HYDRA CFD Solver. Background:First version developed by Giles and co-workers at OUCL with funding and technical assistance from RRDeveloped from outset to be a suite of non-linear, linear and adjoint CFD solversLinearised unsteady and adjoint versions were hand codedSince 2000, has been deve

barr
Download Presentation

Automatic Differentiation at Rolls-Royce

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Automatic Differentiation at Rolls-Royce Leigh Lapworth, Rolls-Royce PLC, Derby.

    2. The HYDRA CFD Solver Background: First version developed by Giles and co-workers at OUCL with funding and technical assistance from RR Developed from outset to be a suite of non-linear, linear and adjoint CFD solvers Linearised unsteady and adjoint versions were hand coded Since 2000, has been developed collaboratively by RR and a number of university collaborators including OUCL. Central code in Rolls-Royce corporate CFD strategy Current Status HYDRA used on a wide range of gas turbine projects in both the aerospace and non-aerospace sectors. HYDRA is the basis of a large number of industry-university collaborations involving RR. The HYDRA collaborative network is one of the code’s major strengths and the network is continuing to grow.

    3. HYDRA Framework

    4. The Role of Automatic Differentiation Code maintenance: Features are added to the non-linear code more rapidly than the linear and adjoint versions. Inconsistencies between versions affect stability and accuracy of the linear and adjoint sensitivities. Expertise needed to maintain hand-coded versions. Automatic Differentiation Allows consistent non-linear, linear and adjoint versions of the code to be maintained with minimal effort. More quality assured because scope for hand-coding bugs in linear and adjoint versions is removed. Less validation of new versions needed. Generation of linear and adjoint code becomes a transient operation controlled by the Makefile: Only the non-linear code and executables need to be retained, Less reliance on specialist hand-coding expertise.

    5. The Influence of Coding Inconsistencies

    6. Makefile Implementation AD (Tapenade) automatically run by Makefile when linear or adjoint object file needed to build an executable. Intermediate (AD generated) files are transient Sample Makefile*:

    7. Rolls-Royce Experience with AD Acknowledgement RR experience has been gathered through research programmes with Oxford (Giles et al.), Cambridge (Radford) and Cranfield (Forth) RR perspective: Reference hand-coded versions essential to demonstrations: Provided validation and performance database, Provided infrastructure so that AD can be applied at a subroutine level. Application of AD via Makefile essential to deployment RR doesn’t want to maintain an expertise in AD, just as it doesn’t have experts in compiler technology. Outlook AD is essential to maintaining a large industrial code, HYDRA. RR will use Tapenade for AD. RR will continue to look to collaborators for recommendations.

    8. Adjoint Design - Bypass OGV design

    9. Summary Automatic Differentiation Crucial to long term maintenance of HYDRA, AD treated as just ‘another compiler’ Adjoint CFD Design: Several application areas where #design variables are much greater than #objectives and constraints. Sensitivity analysis Often need to ask how close is a design to a stability boundary (e.g. stall); or, how sensitive is it to small changes (e.g. robust design). Error analysis Either to drive solution adaptation or provide confidence levels in solutions.

More Related