DOI QR코드

DOI QR Code

Study on the Applications of Automatic Differentiation in Engineering Computation

자동 미분의 공학 계산 적용 연구

  • 이재훈 (한국과학기술원 항공우주공학과 대학원) ;
  • 임동균 (한국과학기술원 항공우주공학과 대학원) ;
  • 권장혁 (한국과학기술원 항공우주공학과)
  • Published : 2008.07.04

Abstract

Automatic Differentiation(AD) is a tool for generating sensitivities, such as gradient or Jacobian, automatically. AD tools provide mathematically exact sensitivities for the given source code. In this paper applications of automatic differentiation are studied. Derivative codes are generated with AD tools for structural analysis code and flow analysis code. How to apply AD tools is explained and the accuracy of sensitivities is compared with the finite difference. Sensitivities of generated derivative code accord well with finite difference, but the calculation time of derivative code increases. It was found that the calculation time can be decreased by additional modification of derivative code.

자동 미분은 기울기나 Jacobian과 같은 민감도를 자동으로 생성해주는 도구이다. 자동 미분은 수학적으로 정확한 민감도를 계산해준다. 본 논문에서는 자동 미분의 공학 계산에 대한 적용에 대해 살펴보았다. 자동 미분을 이용해 구조 해석 코드와 유동장 해석 코드의 미분 코드를 생성하였다. 본 논문은 자동 미분의 적용에 대해 기술하였으며 자동 미분의 정확성 검증을 위해 유한 차분과 비교하였다. 미분 코드의 결과는 유한 차분과 잘 일치하였으나 계산 시간이 증가하였다. 생성된 미분 코드의 추가적인 수정을 통해 계산의 단축이 가능함을 확인하였다.

Keywords

References

  1. A. Verma, "An Introduction to Automatic Differentiation", Current Science, Vol. 78, No. 7, 2000, p. 804-807
  2. P. A. NEWMAN, G. J.-W. HOU, H. E. JONES, A. C. TAYLOR, III and V. M. KORIVI, "Observations on Computational Methodologies for Use in Large-scale, Gradient-based, Multidisciplinary Design", AIAA-92-4753
  3. A. Carle, M. Fagan and L. L. Green, "Preliminary Results from the Application of Automatic Adjoint Code Generation to CFL3D", Proceedings of 7th AIAA/NASA/ISSMO Symposium on Multidisciplinary Analysis and Optimization, AIAA-98-4807
  4. R. E. Wengert, "A Simple Automatic Derivative Evaluation Program", Communications of the ACM, Vol. 7, 1964, p. 463-464 https://doi.org/10.1145/355586.364791
  5. B. Speelpenning, "Compiling Fast Partial Derivatives of Functions Given by Algorithms", PhD thesis, Department of Computer Science, University of Illinois at Urbana-Champaign, 1980
  6. L. L. Green, P. A. Newman and K. J. Haigler, "Sensitivity Derivatives for Advanced CFD Algorithm and Viscous Modeling Parameters via Automatic Differentiation", Jouranl of Computational Physics, Vol. 125, 1996, p. 313-324 https://doi.org/10.1006/jcph.1996.0096
  7. C. Bishof, G. Corliss, L. Green, A. Griewank, K. Haigler and P. Newman, "Automatic Differentiation of Advanced CFD codes for Multidisciplinary Design", Journal of Computing Systems in Engineering, Vol 3, 1992, p. 625-638 https://doi.org/10.1016/0956-0521(92)90014-A
  8. J. R. R. A. Martins, I. M. Kroo and J. J. Alonso, "An Automated Method for Sensitivity Analysis using Complex Variables", AIAA-2000-0689
  9. C. W. Straka, "ADF95: Tool for Automatic Differentiation of a FORTRAN Code Designed for Large Numbers of Independent Variables", Computer Physics Communications, Vol. 168, 2005, p. 123-139 https://doi.org/10.1016/j.cpc.2005.01.011
  10. C. Bischof, A. Carle, P. Khademi and A. Mauer, "ADIFOR 2.0: Automatic Differentiation of Fortran 77 Programs", IEEE Computational Science and Engineering Vol. 3, 1996, p. 18-32
  11. C. Bishof et al., ADIFOR 2.0 User's Guide, Technical Report CRPC-95516-S, Rice University, 1998
  12. A. Carle and M. Fagan, "ADIFOR 3.0 Overview", Technical Report CAAM-TR-00-02, Rice University, 2000
  13. A. Griewank, D. Juedes, H. Mitev, J. Utke, O. Vogel and A. Walther, "ADOL-C: A Package for the Automatic Differentiation of Algorithms Written in C/C++", ACM TOMS, Vol. 22, 1996, p. 131-167 https://doi.org/10.1145/229473.229474
  14. T. C. Coleman and A. Verma, "ADMT-1: Automatic Differentiation and MATLAB Interface Toolbox", ACM Transactions on Mathematical Software, Vol. 26, 2000, p. 150-175 https://doi.org/10.1145/347837.347879
  15. R. Giering and T. Kaminski, "Recipes for Adjoint Code Construction", ACM Transactions on Mathematical Software, Vol. 24, 1998, p. 437-474 https://doi.org/10.1145/293686.293695
  16. L. Hascoet and V. Pascual "Tapenade 2.1 User's Guide", Technical report 300, INRIA, 2004
  17. O. C. Zienkiewicz and R. L. Taylor, "The Finite Element Method", McGraw Hill, 1989
  18. R. H. McNeal, R. L. Harder, "A Proposed Standard Set of Problems to Test Finite Element Accuracy", Finite Elements Analysis and Design, Vol. 1, 1985, p. 3-20 https://doi.org/10.1016/0168-874X(85)90003-4
  19. 이재훈, 김수환, 안중기, 권장혁, "자동미분의 공력 최적 설계 적용", 한국전산유체공학회, 춘계학술대회 논문집, 2004
  20. 박수형, 성춘호, 권장혁, "Upwind TVD 기법을 이용한 효율적인 다중격자 DADI기법", 항공우주학회, 추계학술대회 논문집, 1998, p. 71-74
  21. H. Bucker et al., "Delayed Propagation of Derivatives in a Two-dimensional Aircraft Design Optimization Problem", Proceedings of High Performance Computing Systems and Applications, 2003
  22. 임동균, 김균석, 권장혁, "2차원 Euler/N-S 방정식에 대한 민감도 해석 기법의 성능 비교 연구", 한국군사과학기술학회, 종합학술대회 논문집, 2007
  23. S. H. Park and J. H. Kwon, "Implementation of $k-{\omega}$ Turbulence Models in an Implicit Multigrid Method", AIAA Joumal, Vol. 42, No. 7, 2004, p. 1348-1357 https://doi.org/10.2514/1.2461
  24. C.-h. Sung and J. H. Kwon, "Efficient Aerodynamic Design Method Using a Tightly Coupled Algorithm", AIAA Journal, Vol. 40, No. 9, 2002, p. 1839-1845 https://doi.org/10.2514/2.1861
  25. S. Kim, J. J. Alonso and A. Jameson, "Multi-Element High-Lift Configuration Design Optimization Using Viscous Continuous Adjoint Method", Journal of Aircraft, Vol. 41, No. 5, 2004, p. 1082-1097 https://doi.org/10.2514/1.17
  26. C. S. Kim, C. Kim and O. H. Rho, "Sensitivity Analysis for the Navier-Stokes Equations with Two-equation Turbulence Models", AIAA Journal, Vol, 39, No. 5, 2001, p. 838-845 https://doi.org/10.2514/2.1387