Bilimsel hesaplama algoritmalarının yazılım gerçekleme ve performans karşılaştırma odaklı tasarımları
Dosyalar
Tarih
Yazarlar
Dergi Başlığı
Dergi ISSN
Cilt Başlığı
Yayıncı
Erişim Hakkı
Özet
Tez kapsamında, simülasyon yazılımları alanında kullanılabilecek bir araç tasarlanmıştır. Bu konuda literatür araştırmaları, kod tasarımları ve kodlama işlemleri yapılmıştır. Çeşitli simülasyonlar içerisinde sisteme yükü fazla olan nümerik hesaplamaların düşük seviyeli diller arasında yer alan C++ içerisinde gerçekleşmesi ve simülasyon test sonuçlarının yüksek seviyeli bir dil olan Python dilinde görüntülenmesini konu alan proje içerisinde birçok yenilikçi yöntem kullanılmıştır. Tez kapsamında nümerik hesaplamalar ve simülasyon yazılımları için tasarlanmış olan IT++, Armadillo, Boost, ACML (AMD Core Math Library) ve OpenMP gibi kütüphaneler araştırılmıştır ve proje kapsamında kullanılmıştır. Yazılım dünyasında kendilerini kanıtlamış olan bu kütüphaneler, nümerik hesaplamalar yapılırken karşılaşılan birçok probleme cevap oluşturabilmiştir. Proje, temelinde aile dosya format yapısını kurulmuştur. Devamında tasarımı yapılan her bir test için özel dosyalar kullanmıştır. Linux işletim sisteminde tasarlanan projede açık kaynak kodlu kütüphaneler kullanılmıştır. İşletim sistemi içerisinde önemli araçlardan biri olan Makefile yapısı, projenin temelini oluşturmaktadır. Kullanılacak olan kütüphaneler, tasarlanan simülasyon test dosyaları ve son olarak oluşturulan obje dosyaları Makefile aracı sayesinde birbirine bağlanmaktadır. Tasarlanan araç iki ayrı test ile incelenmiştir. Bu testler; iki boyutlu, ZUSF (Zaman Uzayında Sonlu Farklar) yöntemi ile tasarlanmış; "Ayrıştırıcı ve Birleştirici Dalga Kılavuzu Testi" ve iki boyutlu, ZUSF yöntemi ile tasarlanmış "Fotonik Kristal Doksan Derece Eviren Dalga Kılavuzu Testidir".
Regarding the scope of the thesis, after the literature review and probe in the field of simulation software, code designs and coding processes, a tool that can be used in the simulation software has been designed for this study. Many innovative methods have been used in the project. The project deals with the realization of numerical calculations, which are overloaded on the system in various simulations, through using C ++, which is one of the low-level languages; and the display of simulation test results in Python that is a high-level language. In this thesis project, libraries designed for numerical calculations and simulation software such as IT ++, Armadillo, Boost, ACML (AMD Core Math Library) and OpenMP- have been examined. These libraries could respond to many problems faced while performing numerical calculations, so that they have displayed sound and successful outcomes. The basis of the project relies on the family file format structure and it used special files for each designed tests. Open source libraries have been used in the project whose operating system is Linux. Therefore, the problems to be encountered in using the vehicle designed within the scope of the project in other projects have been prevented. The "Makefile Structure" forms the basis of the project. Because, the libraries to be used, the designed simulation test files and the created object files are linked each other through the Makefile tool. This designed tool has been examined in two different tests. These tests: "2D FDTD (Finite Difference Time Domain) of Waveguide Splitter/Combiner" and "2D FDTD of Photonic Crystal 90 Degree Bent Waveguide".








