Skip to Main Content
 

Global Search Box

 
 
 
 

Files

ETD Abstract Container

Abstract Header

Python API to post-process CFD data

Chhabra, Harpreet Singh

Abstract Details

2023, MS, University of Cincinnati, Engineering and Applied Science: Aerospace Engineering.
A growing interest in finding new ways to solve Computational Fluid Dynamics (CFD) problems has motivated researchers to employ a data science approach for numerical analysis. To optimize time and memory-related issues with data science, one of the approaches can be the use of machine learning (ML) algorithms. As Python is a go through language for ML developments, there arises a need for data visualization. The in-line data visualization capability within the same environment can simplify envisioning the data before and after modeling. To accelerate and simplify this data processing, the Gas Turbine Simulation Laboratory (GTSL) at the University of Cincinnati (UC) initiated this project to support data interactions and manipulation needs within the Python environment. A variety of algorithms for reading, writing, converting file formats, data extraction, splitting blocks, in-line visualization, and computing variables from CFD data were rewritten to be more efficient. The object-oriented nature of the code reduces the complexity of the Advanced Programming Interface (API) and eases the addition of classes and modules without compromising the performance. One of the other advantages of using Python is that many of the modules are compatible with most operating systems used, making the API easily portable and user-friendly. Another way to optimize time and memory is by parallel computing. Utilizing the Curriculum Practical Training (CPT) with an internship at Altair Engineering Inc., the power of the Message Passing Interface (MPI) was explored. One of the strategies used by the Altair Flux solver to divide the global domain for parallel solving was Domain Decomposition (DDM). DDM splits the domain into homogeneous regions based on their physics, and Flux assigns each of these regions to a processor for parallel solving. However, the performance of parallel computing is limited by the slowest processor, and the regions formed will not necessarily be of comparable sizes. Therefore, a grid partitioner was needed to partition these regions and obtain good load balancing. Extending the idea of parallel solving into the current work, a test case was run with the objective of computing variables of an unsteady case using multiprocessing. In other words, using a number of cores to handle a set of time steps rather than serially processing each time step data. The results obtained are discussed in the following chapters. The work done in this project serves as a proof of concept for complete post-processing of CFD data in Python.
Paul Orkwis, Ph.D. (Committee Chair)
Daniel Cuppoletti, Ph.D. (Committee Member)
Shaaban Abdallah, Ph.D. (Committee Member)
81 p.

Recommended Citations

Citations

  • Chhabra, H. S. (2023). Python API to post-process CFD data [Master's thesis, University of Cincinnati]. OhioLINK Electronic Theses and Dissertations Center. http://rave.ohiolink.edu/etdc/view?acc_num=ucin17049807738413

    APA Style (7th edition)

  • Chhabra, Harpreet Singh. Python API to post-process CFD data. 2023. University of Cincinnati, Master's thesis. OhioLINK Electronic Theses and Dissertations Center, http://rave.ohiolink.edu/etdc/view?acc_num=ucin17049807738413.

    MLA Style (8th edition)

  • Chhabra, Harpreet Singh. "Python API to post-process CFD data." Master's thesis, University of Cincinnati, 2023. http://rave.ohiolink.edu/etdc/view?acc_num=ucin17049807738413

    Chicago Manual of Style (17th edition)