科學計算的特點

本人不敢從系統科學上討論科學計算,本人只是想要討論下對大部分工程計算都需要的科學計算。

科學計算幾乎都是過程式的,即從輸入到輸出,中間幾乎不需要交互。參數設置都是一步到位,中間計算過程一刻不停,直到輸出計算結果。一次科學計算可以分爲三塊:計算對象——數據,控制參數,計算實體。這三個內容,任何一個內容都可能會變得相當複雜,也可能都是相當複雜的。簡單的計算,如a+b或者求正弦之類的,不需要討論。但是,像天氣情況模擬、者核彈爆炸模擬、飛機和導彈的飛行控制計算就非常複雜。小計算或者功能簡單的計算,都可以使用過程式編程,數據、參數、計算實體緊密結合在一起。當然,也可以將它們放在一個類裏。這樣做的好處是,避免程序中其它部分形成混亂,而且也便於管理。但是,對計算要求複雜、功能多、數據量大、參數多的計算,使用面向對象會比面向過程方法好得多。一個最直接的好處是,根據計算關係,可以將數據、參數、實體緊密地組織在一起,邏輯上也會更加清晰。使用得到的構件可以組合成一個大的複雜構件,實現複雜計算。

對數據量大或者參數多的計算,包括計算過程中臨時數據,存儲設計也是一項關鍵技術。不同的存儲設計決定了訪問方法,從而對計算實體產生一定的影響。因爲不同的數據與參數可能是爲不同的計算實體輸入的,計算過程中,對數據的邏輯訪問順序要求有不同的存儲與訪問規則。這即是說,存儲與訪問設計會影響計算的邏輯順序。

(歡迎參與討論,一起學習)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章