科學計算可視化
科學計算可視化
科學計算可視化也稱為可視化,其定義為:“可視化是一種計算方法,它將符號或數據轉換為直觀的幾何圖形,便於研究人員觀察其模擬和計算過程。可視化包括了圖像綜合,這就是說,可視化是用來解釋輸入到計算機中的圖像數據,並從複雜的多維數據中生成圖像的一種工具。”
科學可視化是將科學計算過程中及計算結果的數據轉換為圖形及圖象顯示在屏幕上的方法與技術。它綜合運用計算機圖形學、數字圖象處理、計算機視覺、計算機輔助設計及人機交互技術等幾個領域中的相關技術。既可以從複雜的多維數據中產生圖形,又可以理解送入計算機中的圖象數據。近年來,這一技術的範圍又有了擴展,它還包括工程計算數據的可視化及測 量數據的可視化。
科學計算可視化的實現可以大大加快數據的處理過程,使每日每時都在產生的龐大數據得到有效的利用;可以在人與數據、人與人之間實現圖象通信,而不是文字通信或數字通信;可以使科學家們了解到在計算過程中發生了什麼現象,並可改變參數,觀察其影響,對計算過程實現引導和控制。總之,可 使科學計算的 工具和環境進一步現代化。
計算機用於科學計算已有40多年的歷史。在20 世紀50年代和60年代,由於計算機的硬體、軟體技術水平的限制,科學計算只能以批處理方式進行,大量輸出數據的解釋與理解所花費的時間往往是計算時間的十幾倍甚至幾十倍,這一階段談不上科學計算的可視化。70年代以後,雖然可以將科學計算的結果以二維圖象表示,用繪圖儀繪製出來,但仍然不能得到計算結果的直觀、形象的整體概念,而且不能進行交互處理,只能被動地等待計算結果的輸出。
近年來,隨著科學技術的迅猛發展待處理的數據量越來越大,來自巨型計算機,地球衛星、宇宙飛船、計算機斷層攝影(CT)掃描儀及地震勘測的數據與日俱增,原有的數據處理及顯示手段遠遠不能滿足要求。在這樣的形勢下,1987 年2月美國國家科學基金會在華盛頓召開了有關科學計算可視化的首次會議,與會者有從事計算機圖形學、圖象處理及各種不同領域科學計算的專家,會議一致認為: 將圖形和圖象技術應用於科學計算,這是一個全新的技術領域,會議將這一技術定名為科學計算可視化。
國內僅有少數單位在進行科學計算結果數據可視化技術的研究,少數擁有較強計算能力的計算中心正開始應用這一技術實現有關領域的可視化,如氣象、計算流體力學、天文、生物化學等。在美國等發達國家的超級計算中心、國家實驗室、著名大學里,則已在超級計算機、光纖網、高檔工作站的環境中實現了計算流體力學、有限元分析、醫學圖象、天體物理等領域計算結果的實時跟蹤處理及顯示,並正在研究科學計算過程的交互控制技術。已有商品化的科學計算可視化軟體提供給用戶使用,如 AVS 等。
科學計算可視化按其實現的功能,可以分為三個層次: ① 結果數據的后處理即對計算數據或測量數據進行離線處理,然後用圖象顯示出來,這一層次的功能對計算能力的需求相對較低。②中間數據或結果數據的實時跟蹤處理及顯示。③中間數據或結果數據的實時跟蹤處理、顯示及交互控制這一層次的功能不僅能對數據進行實時跟蹤顯示,而且還可以互動式地修改原始數據、邊界條件或其它參數,以使計算結果更為滿意。為了實現這三個層次的功能,科學計算可視化的主要研究內容有:① 標量、矢量、張量場的顯示;② 數值模擬和計算過程的交互控制和引導;③ 面向圖形的程序設計環境;④ 高帶寬網路及其協議;⑤ 用於圖形和圖象處理的向量和并行演演算法及特殊硬體結構。
科學計算可視化的應用領域十分廣泛,幾乎可以應用於自然科學及工程技術所包括的一切領域。
(1)醫學
儘管計算機斷層掃描及核磁共振圖像已廣泛應用於對疾病的診斷,但是,這些醫療儀器只能提供人體內部的二維圖像。醫生們只能憑經驗由多幅二維圖像去估計病灶的大小及形狀,“構思”病灶與其周圍組織的三維幾何關係,這給治療帶來了困難。科學計算可視化技術可以由一系列二維圖像重構出三維形體,並在計算機上顯示出來。在此基礎上就可以實現矯形手術、放射治療等的計算機模擬及手術規劃。例如,髖關節發育不正常在兒童中並不少見,當作矯形手術時,需要對髖關節進行切割、移位、固定等操作。利用可視化技術可以首先在計算機上構造出髖關節的三維圖像,然後對切割部位、切割形狀、移位多少及固定方式等的多種方案在計算機上進行模擬,並從各個不同角度觀察其效果,最後由醫生選擇出最佳實施方案,從而大大提高矯形手術的質量。
(2)地質勘探
尋找石油礦藏是包括我國在內的許多國家的一項長期的戰略性任務。其主要方式是通過地質勘探了解大範圍內的地質結構,發現可能的含油構造,並通過測井數據了解局部區域的地層結構,探明油藏位置及其分佈,估計蘊藏量及勘探價值。由於地質數據及測井數據的數據量極其龐大,而且分佈不均勻,因而無法根據紙面上的數據作出分析。利用可視化技術可以從大量的地質勘探數據或測井數據中構造出感興趣的等值面、等值線,顯示其範圍及走向,並用不同顏色顯示出多種參數及其相互關係,從而使專業人員能對原始數據作出正確解釋,得到礦藏是否存在、礦藏位置及儲量大小等重要信息。這不僅可以指導打井作業、減少無效井位、節約資金。而且必將大大提高尋找油藏的效率,具有重大的經濟效益及社會效益。
(3)氣象預報
氣象預報的準確性依賴於對大量數據的計算和對計算結果的分析。一方面,科學計算可視化可將大量的數據轉換為圖像,在屏幕上顯示出某一時刻的等壓面、等溫面、位渦、雲層的位置及運動、暴雨區的位囂及其強度、風力的大小及方向等,使預報人員能對未來的天氣作出準確的分析和預測。另一方面,根據全球的氣象監測數據和計算結果,可將不同時期全球的氣溫分佈、氣壓分佈、雨量分佈及風力風向等以圖像形式表示出來,從而對全球的氣象情況及其變化趨勢進行研究和預測。
(4)分子模型構造
使用互動式圖形生成技術來觀察複雜的化學物質始於60年代。但是隨著科技發展它已經是學術界和工業界研究分子結構及其相互問作用的工具。科學計算可視化技術的發展將使分子模型構造技術進一步發生變化。過去被認為是複雜而昂貴的方法,但是隨著科技發展已經是一種分析和設計分子結構的有效工具。例如,與超級計算機相結合構造諸如蛋自質和DNA等高度複雜的分子結構,在遺傳工程的藥物設計中使用三維彩色立體顯示來改進已有藥物的分子結構或設計新的藥物等。
(5)計算流體力學
飛機、汽車、船舶等的外形設計都必須考慮在氣體、液體高速運動的環境中能否正常工作。過去的做法是:將所設計的飛機模型放在大型風洞里做流體動力學的物理模擬實驗,然後根據實驗結果修改設計。這種做法既浪費資金,又延長了設計周期。實現了在計算機上建立飛機的幾何模型,並進行流體動力學的模擬計算.這就是計算流體動力學(Computational Fluid Dynamics,CFD)。為了理解和分析流體流動的模擬計算結果,必須利用可視化技術在屏幕上將結果數據動態地顯示出來。例如,用多種不同方法表示出每一點的流速和流向,表示出渦流、衝擊波、剪切層、尾流及湍流等。
(6)有限元分析
有限元分析是5O年代提出的適用於計算機處理的一種數值計算方法,它主要用於結構分析,是計算機輔助設計技術的基礎之一。有限元分析在飛機設計、水壩建造、機械產品設計、建築結構應力分析中得到了廣泛應用。從數學的觀點來看,有限元分析將研究對象剖分為若干個子單元,並在此基礎上求出偏微分方程的近似解。應用可視化技術可實現形體的網格剖分及有限元分析結果數據的圖形顯示。即所謂有限元分析的前後處理,並根據分析結果,實現網格剖分的優化.使計算結果更加可靠和精確。
根據被可視化的對象是物理空間數據還是非物理空間數據來區分。一般來說,如果是物理空問場或工程建築的空間結構數據,無論是可以看見的還是看不見的。其數據在物理空間上都有一個對應位置,如多塊磁鐵相互靠近時產生的複雜磁場。而數據可視化的數據一般來源於經濟、商業、金融等領域,這些數據有具體大小,但它們不對應一個物理空間意義,即不存在一個物理空間場,在某種意義下的數值剛好是該數值。但為了發現其中的規律,數據可視化的方法就是將它們對應到2維或3維空問中,通過在空間場中對大量數據的展示,幫助人們管理、利用、認知這些數據及其規律。常見的股票走勢k線圈就是典型的數據可視化例子。實際上,可以認為科學計算可視化的數據只是數據可視化處理數據的一部分而已,即數據可視化不僅包括科學計算數據的可視化,還包括工程數據和測量數據的可視化。
科學計算可視化的應用範圍非常廣泛,已從最初的科研領域走到了生產領域,它幾乎涉及到了所有能應用計算機的部門。在這裡,將簡要列舉一些應用的例子。在醫學上由核磁共振、掃描等設備產生的人涔器官密度場,對於不同的組織,表現出不同的密度值。通過在多個方向、多個剖面來表現病變區域,或者重建為具有不同細節程度的三維真實圖像,使醫生對病灶部位的大小、位置,不僅有定性的認識,而且有定量的認識,尤其是對大腦等複雜區域,數據場可視化所帶來的效果尤其明顯。藉助虛擬現實的手段,醫生可以對病變的部位進行確診,制定出有效的手術方案,並在手術之前模擬手術。在臨床上也可應用在放射診斷、制定放射治療計劃等。地質勘探利用模擬人工地震的方法,可以獲得地質岩層信息。通過數據特徵的抽取和匹配,可以確定地下的礦藏資源。用可視化方法對模擬地震數據的解釋,可以大大地提高地質勘探的效率和安全性。
數據可視化的應用也十分廣泛,幾乎可以應用於自然科學、工程技術、金融、通信和商業等各種領域。下面舉例說明數據可視化成功應用的領域。油氣勘探利用數據可視化技術可以從大量的地質勘探數據或測井數據中,構造出感興趣的等值面、等值線,並顯示其範圍及走向,用不同顏色顯示出多種參數及其相互關係,從而使專業人員能對原始數據作出正確解釋,得到礦藏是否存在、礦藏位置及儲量大小等重要信息。這不僅可以指導打井作業,減少無效井位,節約資金,而且必將大大提高尋找油藏的效率,從而具有重大的經濟效益及社會效益。