Detail práce
Ultrasound Simulation in Python
k-Wave je MATLAB nástroj pro simulaci šíření zvukových vln. Cílem této práce je reimplementovat část nástroje k-Wave v jazyce Python se zaměřením na výpočetní výkon. Druhým cílem je formulace sady doporučení pro transformaci zdrojových kóduz jazyka MATLAB do jazyka Python, které by mohly přispět při dalším vývoji. Tato práce nejprve shrnuje klíčové funkce nástroje k-Wave, zkoumá technologie pro vysoce výkonné výpočty dostupné v jazyce Python a zdůrazňuje nejzásadnější aspekty transformace zdrojových kódů z jazyka MATLABdo jazyka Python. Druhá část práce se zabývá architekturou, testováním a měřením výkonu výsledné Python implementace. Výsledkem této práce je implementace trojrozměrné simulace šíření zvuku, která je kompatibilní s k-Wave. Nová implementace vylepšuje strukturu původního nástroje a poskytuje výkon srovnatelný s původním nástrojem, v určitých případech výkon původního balíku převyšuje.
k-Wave, simulace, optimalizace, OOP, NumPy, Python, MATLAB
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.
- Jak komplikované by bylo stávající implementaci rozšířit o podporu simulace v 1D a 2D ?
- Dokázal by jste určit, co bylo hlavním důvodem zrychlení Vaší implementace oproti původní implementaci v jazyce Matlab?
Bartík Vladimír, Ing., Ph.D. (UIFS FIT VUT), člen
Češka Milan, doc. RNDr., Ph.D. (UITS FIT VUT), člen
Jaroš Jiří, doc. Ing., Ph.D. (UPSY FIT VUT), člen
Orság Filip, Ing., Ph.D. (UITS FIT VUT), člen
@bachelorsthesis{FITBT24884, author = "David \v{C}ern\'{y}", type = "Bakal\'{a}\v{r}sk\'{a} pr\'{a}ce", title = "Ultrasound Simulation in Python", school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}", year = 2022, location = "Brno, CZ", language = "english", url = "https://www.fit.vut.cz/study/thesis/24884/" }