Abstract
The complex-step approximation for the calculation of derivative information has two significant advantages: the formulation does not suffer from subtractive cancellation errors and it can provide exact derivatives without the need to search for an optimal step size. However, when used for the calculation of second derivatives that may be required for approximation and optimization methods, these advantages vanish. In this work, we develop a novel calculation method that can be used to obtain first (gradient) and second (Hessian) derivatives and that retains all the advantages of the complex-step method (accuracy and step-size independence). In order to accomplish this task, a new number system which we have named hyper-dual numbers and the corresponding arithmetic have been developed. The properties of this number system are derived and explored, and the formulation for derivative calculations is presented. Hyper-dual number arithmetic can be applied to arbitrarily complex software and allows the derivative calculations to be free from both truncation and subtractive cancellation errors. A numerical implementation on an unstructured, parallel, unsteady Reynolds-Averaged Navier Stokes (URANS) solver, Joe, is created using C++ operator overloading. Results are presented demonstrating the potential of this method in computations of relevance to the analysis and design of multi-disciplinary aerospace systems.
Paper version not known (Free)
Published Version
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have