計算科學(轉自wiki)

計算科學(也稱科學計算 scientific computation 或 SC)是一個快速增加的多學科領域,使用先進的計算能力來理解和解決複雜的問題。php

計算科學包括三個不一樣的方面:html

    1. 開發用於解決科學(例如生物,物理和社會)、工程、人文問題的算法(數值和非數值),或建模軟件,或仿真軟件;
    2. 計算機和信息科學,開發和優化高級系統硬件,軟件,網絡和數據管理組件,解決計算要求嚴苛的問題;
    3. 計算基礎設施,支持科學和工程問題解決、發展計算機和信息科學;前端

在實際使用中,一般是從數值分析和理論計算機科學中應用計算機模擬和其餘形式的計算來解決各類科學學科中的問題。git

該領域不一樣於理論和實驗室實驗,它們是傳統的科學和工程形式。科學計算方法是得到理解,主要是經過分析在計算機上實現的數學模型。github

科學家和工程師開發計算機程序,應用軟件,正在研究的模型系統以及使用各類輸入參數集合運行這些程序。在某些狀況下,這些模型須要大量的計算(一般是浮點計算),而且一般在超級計算機或分佈式計算平臺上執行。web

數值分析是計算科學中使用的技術的重要基礎。算法

計算科學的應用

計算科學/科學計算的問題域包括:spring

1. 數值模擬

數值模擬有各類不一樣的目的,取決於被模擬的任務的特性:數據庫

  • 重建和理解已知事件(如地震、海嘯和其餘天然災害)。
  • 預測將來或未被觀測到的狀況(如天氣、亞原子粒子的行爲和原始爆炸)。

2. 模型擬合與數據分析

  • 適當調整模型或利用觀察來解方程,不過也須要服從模型的約束條件(如石油勘探地球物理學、計算語言學)。
  • 利用圖論建立網絡的模型,例如鏈接我的,組織,網站和生物系統的網絡。

3. 計算優化

  • 最優化已知方案(如技術和製造過程、前端工程)。
  • 機器學習

方法和算法

計算科學中的算法和數學方法是多樣的,經常使用的應用方法包括:編程

程序設計語言廣泛應用於科學計算應用中偏向數學的方面,包括R語言MATLABMathematica[1]ScilabGNU OctaveCOMSOL MultiphysicsSciPyPython語言等。偏向於密集型計算的科學計算常會利用C語言Fortran的一些變體以及BLASLAPACK等最優化代數庫。

計算科學應用程序經常建立真實世界變化狀況的模型,包括天氣、飛機周圍的氣流、事故中的汽車車身變形、星系中恆星的運動、爆炸裝置等。這類程序會在計算機內存中建立一個「邏輯網格」,網格中的每一項在空間上都對應一個區域,幷包含與模型相關的那一空間的信息。例如在天氣模型中,每一項均可以是一平方公里,幷包含了地面海拔、當前風向、溫度、壓力等。程序會在模擬時步中基於當前狀態計算出可能的下一狀態,解出描述系統運轉方式的方程,而後重複上述過程計算出下一狀態。

計算科學家」一詞經常使用於描述科學計算領域中的技能高超者。他們一般是科學家、工程師或應用數學家,會以不一樣方式應用高性能計算機,以提升他們各自的應用學科(如物理學、化學或工程學的相關學科)中最早進的理論和技術水平。科學計算也對經濟學、生物學及醫學等領域有着愈來愈大的影響。

計算科學常被認爲是科學的第三種方法,是實驗/觀察理論這兩種方法的補充和擴展。[2] 計算科學的本質是數值算法[3]以及計算數學[4]。在發展科學計算算法、程序設計語言的有效實現以及計算結果的驗證上,人們已經作出了實質性的努力。計算科學中的一系列問題和解決方法均可以在相關文獻中找到。[5]

重現性和開發性研究計算

計算方法的複雜性是研究的可重複性的威脅。[8] [9] Jon Claerbout已經變得突出,指出可再現的研究須要歸檔和記錄全部原始數據和用於得到結果的全部代碼。[10] [11] [12] Nick Barnes在「科學規範宣言」中提出了軟件用於開放科學出版時應遵循的五個原則。[13] Tomi Kauppinen et al。 創建和定義聯繫開放科學,一種將科學資產互連以實現透明,可重複和跨學科研究的方法。[14]

期刊

大多數科學雜誌不接受軟件論文,由於對一個合理成熟的軟件的描述一般不符合新穎性的標準。[須要引證]在計算機科學自己之外,只有少數專門用於科學軟件的期刊。 像Elsevier的計算機物理通信這樣的已創建的期刊發佈不是開放式的論文(雖然所描述的軟件一般是)。 爲了填補這一空白,2010年發佈了一本名爲「開放式研究計算」的新期刊; [15]該期刊於2012年結束,但沒有發表單篇論文,因爲質量要求太高, 2012年啓動了一項新的開放研究軟件雜誌[17] 在2015年,一個專門用於複製計算結果的新期刊[18]已經在GitHub上開始。

教育

應用數學計算機科學的教學大綱中,或是在標準的數學、科學或工程學的教學大綱中常會有計算科學的相關課程。在一些研究型學府中,科學計算能夠做爲另外一個同層次或不一樣層次主修專業的輔修專業。不過近年來,歐美的計算科學專業學士和碩士學位得到者正在不斷增長,一些學校還設有計算科學、計算工程學、計算科學與工程以及科學計算專業的博士點,而大中華地區的不少學校也開設了信息與計算科學的本科專業。

計算物理學計算化學等專業也有一些學校開設。

相關領域

參見

參考文獻

  1.  Computational Science: Ensuring America’s Competitiveness. Computational Science: Ensuring America’s Competitiveness. President’s Information Technology Advisory Committee. June 2005.
  2. to:a b c Phillips, Lee (2014-05-07). "Scientific computing's future: Can any coding language top a 1950s behemoth?"Ars Technica. Retrieved 2016-03-08.
  3. to:a b Landau, Rubin (2014-05-07). "A First Course in Scientific Computing" (PDF).Princeton University. Retrieved 2016-03-08.
  4. ^ Mathematica 6 Scientific Computing World, May 2007
  5. ^ Graduate Education for Computational Science and Engineering.Siam.org, Society for Industrial and Applied Mathematics (SIAM) website; accessed Feb 2013.
  6. ^ Nonweiler T. R., 1986. Computational Mathematics: An Introduction to Numerical Approximation, John Wiley and Sons
  7. ^ Steeb W.-H., Hardy Y., Hardy A. and Stoop R., 2004. Problems and Solutions in Scientific Computing with C++ and Java Simulations, World Scientific Publishing. ISBN 981-256-112-9
  8. ^ Marwick, Ben. "How computers broke science – and what we can do to fix it"The Conversation. The Conversation. Retrieved 14 November 2016.
  9. ^ Marwick, Ben (2016). "Computational reproducibility in archaeological research: Basic principles and a case study of their implementation"Journal of Archaeological Method and Theorydoi:10.1007/s10816-015-9272-9.
  10. ^ Sergey Fomel and Jon Claerbout, "Guest Editors' Introduction: Reproducible Research," Computing in Science and Engineering, vol. 11, no. 1, pp. 5–7, Jan./Feb. 2009, doi:10.1109/MCSE.2009.14
  11. ^ J. B. Buckheit and D. L. Donoho, "WaveLab and Reproducible Research," Dept. of Statistics, Stanford University, Tech. Rep. 474, 1995.
  12. ^ The Yale Law School Round Table on Data and Core Sharing: "Reproducible Research", Computing in Science and Engineering, vol. 12, no. 5, pp. 8–12, Sept/Oct 2010,doi:10.1109/MCSE.2010.113
  13. ^ Science Code Manifesto homepage. Accessed Feb 2013.
  14. ^ Kauppinen, T.; Espindola, G. M. D. (2011). "Linked Open Science-Communicating, Sharing and Evaluating Data, Methods and Results for Executable Papers". Procedia Computer Science4: 726. doi:10.1016/j.procs.2011.04.076.
  15. ^ CameronNeylon.net, 13 December 2010. Open Research Computation: An ordinary journal with extraordinary aims. Retrieved 04 Nov 2012.
  16. ^ Gaël Varoquaux's Front Page, 04 Jun 2012. A journal promoting high-quality research code: dream and reality. Retrieved 04 Nov 2012.
  17. ^ The Journal of Open Research Software ; announced at software.ac.uk/blog/2012-03-23-announcing-journal-open-research-software-software-metajournal
  18. ^ The ReScience Journal announced during EuroScipy 2015
  19. ^ "Department of Scientific Computing - Education". Florida State University.

其餘來源

外部連接

 
相關文章
相關標籤/搜索