NASA 랭글리 센터 PyTecplot 스크립팅 연구사례

프로그램Tecplot
종류CFD시뮬레이션자동화


NASA의 Langley 센터의 연구원인 Paul Ferlemann씨는 HAPB(Hypersonic Airbreathing Propulsion Branch)연구를 하고 있습니다. HAPB 연구는 항공우주선에 Hypersonic Airbreathing 추친 시스템에 접목될 첨단 기술을 개발하는 연구입니다. 연구의 주 목적은 광범위한 마하의 속도에 따른 고성능기체와 통합된 엔진 개발에 두고 있습니다.

도전

Paul은 112개의 별개의 영역으로 구성된 복잡한 형상으로 작업을 하고 있습니다. 또한 이 형상에서 노출된 가장자리만 Edge를 표시하고자 합니다. Tecplot 360을 통해서 Edge 스타일을 조정하여 각 영역에 가장자리를 표시하며 확인 할 수 있습니다. 그러나 문제는 112개의 존의 각 경계선을 제대로 그리는 것에서 발생합니다. 112개 구역의 스타일을 수동으로 조정하는 것은 귀찮은 작업이며 오류가 발생하기 쉽고 시간도 오래 걸리기 때문입니다.

그림 1: 모든 모서리가 표시됨(왼쪽). 노출된 모서리만 표시됨(오른쪽)

솔루션

Paul 은 Tecplot 360의 메크로 스크립트 언어를 이용하여 가장자리 감지 알고리즘을 이용하여 이 작업을 자동화 하였습니다. 그러나 이 방법은 서로 공유되어있는 Edge를 결정하는데 필요한 데이터를 가져오는 것에 최적화 되어 있지 않았으며 결과적으로 스크립트는 800줄이 넘었고 작성 및 디버그하기가 어려웠습니다. 무엇보다 작은 형상에서 작업을 실행하는 것도 18분이 시간이 걸리기도 하였습니다.

Tecplot 360의 메크로언어도 효율적이며 시간을 절약할 수 있지만 좀더 효과적으로 그리고 상호보완이 될 수 있는 스크립트 언어의 필요성을 많이 느꼈습니다.

The PyTecplot 솔루션

Tecplot은 Paul씨가 Tecplot 2017과 Python API을 결합한 PyTecplot을 사용하여 다시 가장자리 감지 알고리즘을 작성하도록 도와주었습니다. Python은 단순하며 표현하기 쉬운 언어로 800줄이 넘었던 코드가 200줄 미만으로 18분이 걸렸던 작업을 단 7.3초 만에 실행이 가능하도록 도와주었습니다.

“PyTecplot을 사용하여 Tecplot 엔지니어가 구현 한 알고리즘으로 시간 및 노력을 절약한 것은 매우 드라마틱 하였습니다. 앞으로 Tecplot 스크립팅 작업에 PyTecplot이 유용하게 사용될 것 같습니다.” 라고 Paul씨는 말했습니다.