A parallel unstructured finite volume method with an efficient edge based data structure for compressible flows
Verimli bir kenar tabanlı veri yapısı üzerine kurgulanmış yapısal olmayan sonlu hacimler yöntemiyle çalışan paralel bir sıkıştırılabilir akış çözücüsü
- Tez No: 518018
- Danışmanlar: PROF. DR. MEHMET ŞAHİN
- Tez Türü: Yüksek Lisans
- Konular: Uçak Mühendisliği, Aircraft Engineering
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2018
- Dil: İngilizce
- Üniversite: İstanbul Teknik Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Uçak ve Uzay Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Uçak ve Uzay Mühendisliği Bilim Dalı
- Sayfa Sayısı: 91
Özet
Günümüzde havacılık endüstrisinin geldiği noktada sürükleme ve taşıma kuvvetlerini doğru tahmin etmek çok elzem bir rol oynamaktadır. Daha iyi tasarımların yapılabilmesinin ön şartı simülasyonlar aracılığıyla sonuca en doğru şekilde ulaşabilmekle mümkün olmaktadır. Bu amaçla her yıl sürükleme ve taşıma tahmin etme çalıştayları düzenlenmekte, bu çalıştaylara dünyanın dört bir tarafından ekipler geliştirdikleri kodlarla katılmakta ve bilgi transferi yapmaktadır. Sıkıştırılabilir akış atmosferde ilerleyen her türlü aracın maruz kaldığı bir akış rejimidir. Helikopter gibi çok karmaşık durumlardan süpersonik uçaklara kadar büyük bir kapsamda akış alanında kaçınılamayacak şekilde sıkıştırılabilirlik etkileri gözlemlenebilir. Bu çalışma kapsamıda yapısal olmayan çözüm ağlarında calışan paralel bir sonlu hacimler sıkıştırılabilir akış çözücüsü geliştirilmiştir. Geliştirilen bu çözücü sayısal olarak nokta tabanlı olarak ayrıklaştırılmış ve tamamiyle verimli bir kenar tabanlı veri yapısı üzerine kurgulanarak kodlanmıştır. Bu verimli kenar tabanlı veri yapısı tasarlanırken sonlu hacimler yönteminin veri erişim ağı dikkate alınmış ve buna en uygun olacak şekilde tasarlanmıştır. Temel olarak noktalar ve kenarlar için birer veri yapısı oluşturulmuştur. Nokta için kullanılan veri yapısı o noktada tutulan tüm değişkenlerin bir arada tutulduğu bir kullanıcı tarafından tanımlanmış bir veri tipidir. Kenarlar için oluşturulan veri yapısı ise dinamik olarak çevre kenarlara ve noktalara erişimi kolay olarak sağlayacak işaretçilerle donatılmıştır. Bu sayede birbiri ardına kullanılan verilerin hafızada yakın olarak tutulması sağlanmış, bu durum modern CPU mimarisinin temel bir parçası olan önbelleğin oldukça verimli kullanılmasına olanak kılmıştır. Önbelleğin verimli olarak kullanılması algoritmanın verimli çalışmasını sağlayarak hesaplama verimini artırmış, bu sayede literatürdeki açık kaynaklı kodlara göre aynı adım sayısında aynı sonucu almasına rağmen CPU zamanı bakımından oldukça hızlanmasının yolu açılmıştır. Bu algoritmanın büyük problemlerde kullanılmasını mümkün kılmak için, geliştirilen kod MPI kullanılarak paralleleştirilmiştir. Çalışma kapsamında geliştirilen yazılım hem iki boyutlu hem de 3 boyutlu çözücüleri içermektedir. Her iki durumda da, kullanılan kenar tabanlı veri yapısı sayesinde karışık tipte elemanların bir geometri için oluşturulan çözüm ağında hep birlikte kullanılması mümkün kılınmıştır. Mevcut durumda kod iki boyut için üçgen ve dörtgenleri, üç boyut için ise dörtyüzlü, kare tabanlı piramit, üçgen prizma ve altıyüzlü elemanlarla çalışabilmektedir. Standart bir çözüm ağı üreten program bu elemanları desteklediğinden, nokta tabanlı bu çözücüye bu aşamada daha fazla eleman desteği verilme gereği duyulmamıştır. Kullanılan çözüm ağı veri yapısı sayesinde, ihtiyaç duyulduğunda çokyüzlü herhangi bir elemanı desteklemek için gerekli düzenleme kolayca yapılabilir. Paralel çalışma prensibi üretilen çözüm ağının her bir işlemci için alanlara parçalanması ve işlemcilerin yalnızca kendi alanındaki çözüm ağını ve iletişim paternini bilmesine dayanmaktadır. Çözücü paralel çalıştırılmadan önce, üretilen çözüm ağı çözücüyle birlikte sağlanan ve METIS paketini kullanan kod ile öncelikle ayrıklaştırılmalı, daha sonra ayrıklaştırılan sayı kadar işlemcide, MPI kütüphanesi kullanılarak çalıştırılmalıdır. Ayrıklaştırma için METIS kütüphanesinde bulunan çizge veri yapısı kullanılmıştır. Bu sayede yalnızca çözüm değişkenlerini tutan noktalar ayrıklaştırılmış, gerekli hayalet noktalar ve gerekli elemanlar her bir ayrıklaştırılmış alan için yeniden yaratılmıştır. Kullanılan sayısal yöntem ve çözülen denkleme bağlı olarak hayalet noktaların seviyesi bir, iki veya üç olarak belirlenebilir. Algoritma paralel çalışırken her bir adımdan önce hayalet noktaların gerekli iletişimini sağlamakta ve bu sayede her adımdan önce tüm bölgelerin hayalet noktalarının son değerlerini bilmesini sağlamaktadır. Algoritma özet olarak her adımda her bir nokta için o noktadaki durum değişkenlerinin türevini önceden hesaplanan katsayılar yardımıyla hesaplayarak yine aynı noktanın veri yapısı içerisinde saklar. Sonrasında ise algoritma temel olarak bütün akıları kenarlar üzerinden ilerleyerek hesaplamaktadır. Akı hesabı sürüklemesiz ve sürüklemeli olarak ikiye ayrılmıştır. Bu noktada ikinci dereceden uzaysal doğruluğa erişmek için sürüklemesiz akılarda Taylor serileri açılımı ve en küçük kareler yöntemiyle çözümü kullanılmış, sürüklemeli akı için ise Green-Gauss teorisinden faydalanılmıştır. Sürüklemesiz akı hesabı için sayısal yöntemi kararlı hale getiren Roe yöntemi ve AUSM$^+$-up yöntemi adında iki farklı yöntem kodlanmıştır. Bunun yanında sürüklemeli akı için gerekli türevler, akının hesaplanacağı kenar etrafında oluşturulan kontrol hacmi etrafında Green-Gauss yöntemiyle hesaplanmıştır. Bu aşamada süreci olabildiğince hızlandırabilmek adına, sonlu hacimler yönteminin doğası gereki her adımda ihtiyaç duyulan ve tekrar tekrar yapılan hesaplamalar incelenmiş, mümkün olan bazı parçaların önceden bir kez hesaplanılarak hafızada saklanması yöntemine başvurulmuştur. Bu sayede sonlu hacimler yönteminin kaçınılmazı olan tekrar tekrar alan hesaplamaları statik çözüm ağları için yalnız bir kez hesaplanan katsayılara dönüştürülmüştür. Bu bağlamda noktalar için hesaplanan türevler ve sürüklemeli akı için gerekli türevlerin hesaplanılması oldukça hızlandırılabilmiş ve hesaplama veriminde ciddi artış gözlemlenmiştir. Zaman integrasyonu için açık ve kapalı formülasyonların her ikisi de geri türevli Euler yöntemiyle ele alınmıştır. Açık formülasyonda elde edilen denklemler birbirinden bağımsız olarak değerlendirilip sonuca ulaşılırken, kapalı formülasyonda çözüm ancak tam bağdaşık sistemin çözümüyle elde edilebilmektedir. Tam bağdaşık hesaplamalar sonucu açığa çıkan büyük ölçekli cebirsel denklemler iteratif olarak çözülürken, PETSc kütüphanesinde bulunan kısıtlamalı eklemeli Schwarz önkoşullandırıcısı GMRES algoritmasıyla birlikte kullanılmıştır. Önkoşullandırıcı olarak ILU seçilmiş, seviyesi ise problemin boyutuna göre 3 boyutta 0/1/2, 2 boyutta ise 3/4/5/6 olarak belirlenmektedir. GMRES algoritmasının yeniden başlama ve işlemi bitirip çıkma değişkenleri ayarlanabilmektedir. Tam bağdaşık çözümün en büyük avantajı açık formülasyondaki stabilite şartı olan CFL sayısından teorik olarak kurtulmuş olmak olarak açıklanabilir. Tam bağdaşık bir sistemde bilgi bir sonraki adımda dahi tüm noktalara ulaşabilecek durumda olduğundan, bilginin gitme hızından daha hızlı ilerlemek gibi bir durum söz konusu olmamaktadır. Bu çerçeve klasik test problemlerinde denenmiştir. Bu problemler Euler çözücüsü için RAE2822 kanat profili, ileri bakan adım, küre, ve DLR-F6 geometrisi, Navier-Stokes için ise silindir ve küre olarak belirlenmiştir. Geliştirilen çözücü zaman ve doğruluk olarak SU2 çözücüsüyle kıyaslanmıştır. Bu kıyaslamalar sonucunda açık formülasyonda hem Euler hem de Navier-Stokes çözücülerinin SU2 çözücüsündeki muadillerine göre oldukça yüksek performansa eriştiği belirlenmiştir.
Özet (Çeviri)
An efficient edge based data structure has been proposed and implemented on a compressible Navier-Stokes solver based on a vertex based finite volume method. In the present approach, the data structure is tailored to meet the requirements of the algorithm by considering data access patterns and and cache efficiency. The required data are packed and allocated in a way that they are close to each other in the physical memory. The proposed data structure therefore increases cache efficiency and improves computational efficiency. As a result, the solver is speed up compared to other open-source solvers in terms of CPU time while giving the same results. In order to make it possible to use the solver in large scale computations, it is parallelized using MPI approach. Both 2D and 3D versions of the code are developed within the same software. The solver is capable of working with mixed elements; triangles and quadrilaterals for 2D and tetrahedra, hexahedra, wedge and pyramids for 3D cases. The proposed edge based data structure capable of storing arbitrary polygons and polyhedrons and therefore it is possible to extend the solver to make it possible to run on arbitrary polygons and polyhedrons just by defining the specific elements. The solver evaluates the inviscid and viscous fluxes edge by edge, after computing and storing the gradients of the state variables at vertexes node by node. The update stage after the flux evaluation is complete is again a loop over nodes. For the second order spatial accuracy, Taylor series expansion is used for the convective flux and Green-Gauss approach is used for the diffusive flux. There are two different flux schemes available for the inviscid term; Roe flux and AUSM+-up flux. And the viscous term is evaluated using the derivatives of the primitive variables that are computed constructing dual volumes and applying Green-Gauss approach around edges. The resulting large-scale algebraic equations from the fully implicit implementation are solved iteratively with the restricted additive Schwarz preconditioned GMRES algorithm provided within the PETSc package. The proposed framework has been applied to the classical benchmark problems in the literature including flow over cylinder, RAE2822 airfoil, sphere, and DLR-F6 geometry. The efficiency of the algorithm has been tested by comparing the CPU times for the Stanford SU2 code and significant increase in computational performance has been achieved. Furthermore, the algorithm indicates parallel scaling up to 1064 cores, which is the maximum user allowable resources for a single run at the National Center for High Performance Computing (UHeM) over %90 efficiency for moderately large meshes.
Benzer Tezler
- A parallel monolithic approach for the numerical simulation of fluid-structure interaction problems
Akışkan-yapı etkileşimi problemlerinin sayısal simülasyonu için paralel monolitik bir yöntem
ALİ EKEN
Doktora
İngilizce
2016
Havacılık Mühendisliğiİstanbul Teknik ÜniversitesiUçak ve Uzay Mühendisliği Ana Bilim Dalı
YRD. DOÇ. DR. HAYRİ ACAR
DOÇ. DR. MEHMET ŞAHİN
- Heat and mass transfer characteristic of a micro serpentine channel with a viscoelastic coolant
Viskoelastik akış soğutmalı mikro kıvrımlı kanallarda akış ve ısı transferi
OZAN ODUNCU
Yüksek Lisans
İngilizce
2015
Havacılık Mühendisliğiİstanbul Teknik ÜniversitesiUçak ve Uzay Mühendisliği Ana Bilim Dalı
DOÇ. DR. MEHMET ŞAHİN
- Hardware-accelerated direct visualization of unstructured volumetric meshes
Düzensiz hacimsel ağların donanımsal hızlandırıcı yöntemleri ile doğrudan görüntülenmesi
ALPER ŞAHISTAN
Yüksek Lisans
İngilizce
2022
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİhsan Doğramacı Bilkent ÜniversitesiBilgisayar Bilimleri ve Mühendisliği Ana Bilim Dalı
PROF. DR. UĞUR GÜDÜKBAY
- Genel korunum denklemini sonlu hacimler metodu ile modelleyen ve heterojen hesaplama teknolojisini destekleyen yazılımın geliştirilmesi
Development of a software modeling the general transport equation with finite volume method and supporting heterogeneous computing technology
BARIŞ CUMHUR
Yüksek Lisans
Türkçe
2020
Makine MühendisliğiKocaeli ÜniversitesiMakine Mühendisliği Ana Bilim Dalı
PROF. DR. HASAN KARABAY
- Kapalı hacimlerde ışınımla ısı geçişi ile enerji etkinliğinin artırılması
Utilization of radiation heat transfer for improving the energy efficiency in enclosures
ÖZGÜR IŞIK
Yüksek Lisans
Türkçe
2013
Makine Mühendisliğiİstanbul Teknik ÜniversitesiMakine Mühendisliği Ana Bilim Dalı
PROF. DR. SEYHAN UYGUR ONBAŞIOĞLU