Wstępem do samouczka jest stworzenie specyficznego dla pacjenta modelu naczyniowego. W tej demonstracji narzędzia Materialise Mimics, 3D Systems Geomagic Design X i Altair HyperMesh zostały wykorzystane do wygenerowania czworościennej siatki objętościowej na podstawie danych MRA.
1. Wygeneruj osie statku dla modelu
2. Konfiguracja danych w oprogramowaniu do wizualizacji
3. Odwzorowanie danych 4D Flow MRI za pomocą wolumetrycznej siatki siatkowej i usunięcie szumu
4. Określ warunki brzegowe przepływu wlotowego i wylotowego
5. Konfiguracja symulacji CFD
Źródło: Joseph C. Muskat, Vitaliy L. Rayz i Craig J. Goergen, Weldon School of Biomedical Engineering, Purdue University, West Lafayette, Indiana
Cele…
Wstępem do samouczka jest stworzenie specyficznego dla pacjenta modelu naczyniowego. W tej demonstracji narzędzia Materialise Mimics, 3D Systems Geomagic Design X i Altair HyperMesh zostały wykorzystane do wygenerowania czworościennej siatki objętościowej na podstawie danych MRA.
1. Wygeneruj osie statku dla modelu
2. Konfiguracja danych w oprogramowaniu do wizualizacji
3. Odwzorowanie danych 4D Flow MRI za pomocą wolumetrycznej siatki siatkowej i usunięcie szumu
4. Określ warunki brzegowe przepływu wlotowego i wylotowego
5. Konfiguracja symulacji CFD
Zaloguj się lub , aby uzyskać dostęp do pełnej treści. Dowiedz się więcej o dostępie Twojej instytucji do treści JoVE tutaj
Symulacje obliczeniowej dynamiki płynów są wykorzystywane do analizy przepływu krwi w układzie naczyniowym pacjenta w celu kierowania diagnostyką i leczeniem. Obliczeniowa dynamika płynów (CFD) wykorzystuje metody analizy numerycznej do modelowania przepływu płynów i symulowania realistycznych warunków dla wielu różnych scenariuszy przepływu, takich jak przepływ płynu wokół szybkiego samolotu, przez złożone sieci rurociągów i w naszym układzie sercowo-naczyniowym.
W zastosowaniach medycznych stosuje się różne techniki obrazowania w celu uzyskania geometrii naczyń krwionośnych. Następnie wykonywane są symulacje CFD, które służą do przewidywania postępu choroby i modelowania scenariuszy leczenia dysfunkcji naczyń krwionośnych, w tym choroby niedokrwiennej serca, malformacji tętniczo-żylnych i tętniaków.
Ten film zilustruje zasady CFD, pokaże, w jaki sposób geometrie naczyń krwionośnych są wykorzystywane do modelowania hemodynamiki w wysokiej rozdzielczości oraz omówi niektóre zastosowania CFD.
Po pierwsze, poznajmy dynamikę układu sercowo-naczyniowego i zasady CFD.
Hemodynamika układu krążenia opisuje dynamikę przepływu krwi w sercu, w tym przez lewą i prawą komorę oraz przedsionki, a także przepływ krwi w naczyniach od serca do reszty ciała. Złożone sieci naczyniowe można uwidocznić za pomocą angiografii rezonansu magnetycznego i velocymetrii lub fluoroskopii rentgenowskiej. Metody te wyznaczają geometrię naczyń krwionośnych pacjenta i definiują warunki brzegowe przepływu.
Po uzyskaniu tego dane dotyczące prędkości krwi są dzielone na woksele, które są jednostkami informacji graficznej definiującymi przestrzeń 3D, a przesunięcie fazowe jest uzyskiwane dla każdego woksela. Zależą one od stosunku żyromagnetycznego, głównego pola magnetycznego, zastosowanego pola gradientu i położenia spinu. To z kolei zależy od początkowego położenia spinu, prędkości wirowania i przyspieszenia wirowania. Tau jest czasem, który definiuje czwarty wymiar.
Parametry te są definiowane przez rezonans magnetyczny i wprowadzane do symulacji CFD. Prędkość przepływu 3D jest określana przez numeryczne rozwiązywanie równań Naviera-Stokesa lub NS. Równania NS są równaniami rządzącymi ruchem płynów rozwiązywanymi w celu określenia rozkładów prędkości i ciśnienia. Uwzględniają one gęstość, prędkość, ciśnienie i lepkość dynamiczną przepływu.
Zobaczymy teraz, w jaki sposób te zasady dynamiki płynów są stosowane do rzeczywistych geometrii naczyń krwionośnych w celu uzyskania symulacji CFD o wysokiej rozdzielczości.
Przed rozpoczęciem należy utworzyć model naczyniowy specyficzny dla pacjenta na podstawie danych MRA. Można to zrobić za pomocą oprogramowania open source do segmentacji obrazu.
Na potrzeby tej demonstracji wygenerowano czworościenną siatkę objętościową. Teraz otwórz graficzny interfejs użytkownika Pythona programu uruchamiającego vmtk. W PypePad wprowadź wymaganą nazwę pliku. To polecenie gołych kości pobierze wejściowy plik STL z pulpitu. Wybierz pozycję Uruchom, Uruchom wszystko, aby załadować dane do programu. Otworzy się nowe okno, w którym wyświetlane są instrukcje i renderowanie modelu wejściowego.
Obróć model i umieść kursor na każdym miejscu wlotu. Naciśnij spację, aby umieścić ziarno na jednym wlocie. Powtórz to dla wszystkich wlotów. Następnie naciśnij Q, aby kontynuować. Teraz powtórz to samo rozmieszczenie nasion dla wszystkich gniazd. Naciśnij ponownie Q i pozwól programowi działać. Plik linii środkowej zostanie wygenerowany i zapisany na pulpicie.
Jesteśmy teraz gotowi do użycia narzędzia do wizualizacji ParaView o otwartym kodzie źródłowym do oddzielenia wokseli zawierających dane o przepływie od nieruchomej tkanki. Zlokalizuj następujące pliki: siatkę woluminów specyficzną dla pacjenta, pliki Centerline i pliki EnSight.case i kliknij przycisk OK, aby załadować dane do interfejsu. Przejdź do tabeli Właściwości i wybierz pozycję Zastosuj, aby załadować i przeczytać wszystkie informacje. Następnie podświetl siatkę wolumetryczną w przeglądarce rurociągu.
W tabeli Właściwości zmień wartość krycia na wartość z zakresu od 0,2 do 0,5. Linie środkowe i renderowanie geometryczne powinny być teraz widoczne. Następnie przejdź do górnego menu i wybierz Filtry, Alfabetycznie, Ponowne próbkowanie z zestawem danych i ustaw źródło jako siatkę woluminu, a dane wejściowe jako plik EnSight.case. Kliknij przycisk OK, aby kontynuować, a następnie zastosuj filtr w tabeli Właściwości. Następnie wyróżnij nową opcję Ponowne próbkowanie z zestawem danych i zmniejsz krycie.
W górnym menu zmień linie środkowe z Powierzchnia na Punkty. Aby określić warunki brzegowe, przejdź do prawej strony interfejsu i wybierz narzędzie Podziel widok w poziomie. Wybierz opcję Widok arkusza kalkulacyjnego. Z listy rozwijanej Pokazywanie wybierz plik Linia środkowa i przełączaj się między plikami, wybierając różne punkty, aby zidentyfikować lokalizację w każdym wlocie i wylocie. Teraz użyj widoku arkusza kalkulacyjnego, aby obliczyć wektor normalny między dwoma punktami.
Po znalezieniu wektora aktywuj ResampleWithDataset i wybierz Filtry, Alfabetycznie, Wycinek. Upewnij się, że pojawi się filtr Slice, a następnie przejdź do tabeli Properties (Właściwości) i ustaw początek płaszczyzny jako ten sam punkt X, Y, Z dla jednego z dwóch punktów używanych do obliczania wektora normalnego. Użyj tego, aby wypełnić normalne wartości, a następnie wybierz pozycję Zastosuj. Aktywuj nowo utworzony filtr Slice i wybierz Filtry, Alfabetycznie, Przepływ powierzchniowy. Kliknij przycisk Zastosuj, a następnie aktywuj nowy element Przepływ powierzchniowy, a następnie Filtry, Alfabetycznie, Grupuj kroki czasowe, Zastosuj.
W widoku arkusza kalkulacyjnego otwórz dane GroupTimeSteps i użyj opcji Eksportuj arkusz kalkulacyjny lub kopiuj i wklej, aby wyeksportować te dane do programu Microsoft Excel. W ParaView określ Kroki Czasowe i Rozmiar Kroku Czasowego, przechodząc cyklicznie przez Czas. W symulacji chcemy, aby cykl serca rozpoczynał się o godzinie równej zero. Dlatego wygeneruj odpowiednią skalę czasową. Następnie aktywuj filtr Slice i wybierz Filtry, Alfabetycznie, Zintegruj zmienne.
W oknie podręcznym zmień Atrybut, aby wyświetlić dane komórki. W ten sposób uzyskano pole przekroju poprzecznego warstwy wlotowej. Aby dane dotyczące przepływu były zgodne z ANSYS Fluent, należy określić skalę czasu za pomocą jednostek sekundy i prędkość wlotową za pomocą jednostek metrów na sekundę.
Pierwszy wiersz musi zawierać nazwę danych, liczbę kolumn, liczbę wierszy i wyzwalacz binarny w celu zapewnienia powtarzalności. Następny wiersz zawiera nazwy każdej z kolumn danych. Prędkości przepływu, a nie natężenia, są ustawiane pod nagłówkiem odpowiedniej kolumny. Aby płynnie symulować wiele cykli pracy serca, początkowe i końcowe wartości prędkości powinny być równoważne.
Wybierz Plik, Odczyt, Wielkość liter i otwórz plik cas siatki woluminów, który był używany wcześniej. Zaznacz pole wyboru Wyświetl siatkę po odczytaniu, aby wyświetlić siatkę po zaimportowaniu. Wybierz opcję Skaluj i zastosuj niezbędną konwersję jednostek, aby zapewnić prawidłowy rozmiar fizyczny modelu. Wybierz opcję Utwórz/Edytuj materiały i wprowadź właściwości materiału dla krwi.
Teraz wybierz okno poleceń konsoli i wprowadź plik/. Użyj read-transient-table, aby zaimportować przebiegi przepływu przejściowego znajdujące się w tej samej lokalizacji, co plik cas siatki woluminów. Użyj przebiegów uzyskanych z pomiarów MRI przepływu 4D, aby ustawić warunki brzegowe wlotu. Następnie użyj ważonego stosunku wlotu do wylotu, aby ustawić warunki brzegowe wylotu.
Ustaw schematy numeryczne używane do sprzężenia ciśnienia i prędkości i dyskretyzacji równań Naviera-Stokesa. Następnie w obszarze Inicjalizacja rozwiązania ustaw wszystkie wartości początkowe na zero. W obszarze Działania obliczeniowe wyznacz folder rozwiązania do zapisywania wyników i określ częstotliwość za pomocą opcji Autozapis, za każdym razem. W obszarze Uruchom obliczenia skonfiguruj rozmiar kroku czasowego na podstawie danych warunków brzegowych programu Excel. Często lepiej jest wybrać mniejszy krok czasowy i zezwolić Fluent na interpolację. Powtarzaj przez co najmniej trzy cykle pracy serca.
Na koniec ustaw maksymalne iteracje w zakresie od 300 do 500. Oprogramowanie automatycznie zatrzyma iteracje w każdym kroku czasowym, gdy wystąpi zbieżność. Po pełnym skonfigurowaniu symulacji wróć do pozycji Inicjalizacja, Zainicjuj. Wróć do opcji Uruchom obliczenia i wybierz opcję Oblicz, aby uruchomić solver. Dane rozwiązania można teraz wizualizować w oprogramowaniu ANSYS CFD-Post lub ParaView.
Przeanalizujemy teraz kilka reprezentatywnych danych. Oto przykład tętniaka mózgu. Na podstawie danych MRI przepływu 4D wykryto złożone wzorce przepływu recyrkulacyjnego w okolicy tętniaka. Rozdzielczość jest jednak ograniczona w obszarach zastoju przepływu obserwowanych w górnej i dolnej części zmiany. Po przeprowadzeniu symulacji CFD uzyskano wyższą rozdzielczość pola prędkości, szczególnie w pobliżu ścian naczynia.
CFD może być również używany do porównywania różnych warunków przepływu w tym samym zbiorniku. Na przykład symulacje chirurgicznego przycięcia prawej i lewej przedniej tętnicy mózgowej pomagają zobrazować wpływ zabiegu na dynamikę przepływu.
Symulacje przepływu krwi za pomocą obliczeniowej dynamiki płynów są użytecznymi narzędziami wykorzystywanymi w różnych zastosowaniach biomedycznych.
Na przykład warunki hemodynamiczne w obrębie naczyń krwionośnych wpływają na rozwój i postęp chorób tętnic, w tym miażdżycy i tętniaków. Ponieważ bezpośrednie pomiary są trudne do uzyskania in vivo, CFD jest standardowym narzędziem badawczym, które służy do modelowania dynamiki przepływu krwi. Może zapewnić lekarzom wskazówki dotyczące diagnostyki, a także różne scenariusze leczenia.
Oprócz modelowania naczyniowego, symulacje CFD służą do symulacji przepływu powietrza w oparciu o modele dróg oddechowych nosa. Jest to szczególnie przydatne przy projektowaniu protokołów dostarczania w odpowiedni i kontrolowany sposób aerozoli farmaceutycznych do docelowych regionów węchowych, które oddziałują bezpośrednio na mózg.
Właśnie obejrzałeś wprowadzenie JoVE do obliczeniowej dynamiki płynów w celu symulacji przepływu krwi. Powinieneś teraz zrozumieć, w jaki sposób można modelować dynamikę przepływu krwi w wysokiej rozdzielczości w oparciu o trójwymiarową geometrię naczyń. Dzięki za oglądanie!
View the full transcript and gain access to JoVE Science Education videos
Q1: What is computational fluid dynamics and how is it used in medical applications?
Computational fluid dynamics (CFD) uses numerical analysis methods to model fluid flow and simulate realistic conditions. In medical applications, CFD analyzes blood flow in patient vasculature to predict disease progression and model treatment scenarios for conditions including coronary heart disease, arteriovenous malformations, and aneurysms. CFD provides physicians guidance for diagnostics and different treatment options.
Q2: How are blood vessel geometries obtained for CFD simulations?
Blood vessel geometries are obtained using imaging techniques such as magnetic resonance angiography (MRA) and X-ray fluoroscopy. These methods outline the patient's blood vessel geometry and define flow boundary conditions. The blood velocity data are then segmented into voxels, which are units defining 3D space, and the phase shift is obtained at each voxel to determine 3D flow velocity.
Q3: What are the Navier-Stokes equations and why are they important in CFD?
The Navier-Stokes (NS) equations are the governing equations of fluid motion that determine velocity and pressure distributions in blood flow. They account for density, velocity, pressure, and dynamic viscosity of the flow. These equations are numerically solved to produce high-resolution hemodynamic predictions in patient-specific vessel models.
Q4: How does CFD improve upon direct blood flow measurements?
Direct measurements of intraluminal pressure, wall shear stress, and particle residence time are difficult to acquire in vivo. CFD allows these hemodynamic variables to be assessed non-invasively with superior resolution. It can distinguish high-speed jets from slow recirculating vortices observed in diseased blood vessels, providing comprehensive depiction of patient-specific flow fields.
Q5: What software tools are used to process vessel data and run CFD simulations?
Open-source software such as vmtk launcher and ParaView are used for image segmentation and visualization. ParaView separates voxels containing flow data from stationary tissue and determines boundary conditions. Commercial software like ANSYS Fluent imports the volume mesh and transient flow waveforms from 4D flow MRI measurements to run the CFD simulation.
Q6: How can CFD simulations help physicians plan surgical interventions?
CFD is used to simulate surgical techniques such as arterial clipping, which provides physicians better foresight regarding post-operative flow conditions. Simulations can visualize the effects of procedures on flow dynamics before surgery. This allows physicians to compare different treatment scenarios and choose the approach most likely to improve hemodynamic conditions.
Q7: What hemodynamic factors affect the development of vascular diseases?
Hemodynamic conditions within the vasculature significantly affect the development and progression of arterial diseases, including atherosclerosis and aneurysms. CFD simulations reveal complex recirculating flow patterns and stagnant flow regions that contribute to disease formation. Understanding these flow dynamics helps identify risk factors and guide treatment strategies for vascular dysfunction.
Rozdziały w tym filmie
0:07
Overview
1:20
Principles of Computational Fluid Dynamics
3:15
Generating Vessel Centerlines
4:24
Remapping 4D Flow MRI and Determining the Boundary Conditions
8:09
CFD Simulations
10:22
Results
11:17
Applications
12:17
Summary