CGNS
副檔名 |
cgns |
---|---|
最新版本 | 4.1.0 2020年3月4日 |
格式類型 | 科學數據格式 |
網站 | http://www.cgns.org |
CGNS是CFD General Notation的縮寫,它是一個面向CFD數據存儲和檢索,通用、輕便並且可擴展的標準。它包含一系列的約定,和實現這些約定的免費開放的軟件。它具有自描述性,跨平台並且和機器無關,由國際指導委員會編寫文檔並且管理。它也是由AIAA所推薦的一個標準。1994年在美國波音公司和NASA的共同努力下,CGNS項目(頁面存檔備份,存於網際網路檔案館)產生。到如今,世界範圍內許多組織都對它的發展有做出了貢獻。1999年,CGNS的控制權完全移交至一個公共的社團——CGNS指導委員會(頁面存檔備份,存於網際網路檔案館)。這個委員會由世界範圍內的來自政府和私人企業的代表組成。
介紹
[編輯]CGNS項目包含兩個部分:(1)一個記錄數據的標準格式,稱為標準接口數據結構(Standard Interface Data Structure),簡稱SIDS;(2)用來讀取、輸出和修改這種格式的數據的軟件。這種格式是由文檔所建立的概念上的實體,軟件則是提供給開發者們用來獲取和產生用那種格式記錄的數據的物理上的產品。
CGNS系統被設計成有助於網站與網站之間、應用與應用之間數據的交換,並且有助於空氣動力學數據的歸檔。數據被存儲成一種緊緻的二進制的格式,並且通過一整套完整的可擴展的函數庫來讀取。應用程序接口(API)是跨平台的,可以被輕易地應用於C、C++、Fortran和Fortran 90項目。還存在一個MEX接口mexCGNS(頁面存檔備份,存於網際網路檔案館),使得可以在高級編程語言比如matlab和GNU Octave中調用CGNS的API。還存在一個面向對象的接口CGNS++(頁面存檔備份,存於網際網路檔案館)以及Python模塊pyCGNS(頁面存檔備份,存於網際網路檔案館),但是它們並沒有被維護。
CGNS的主要目標是和可壓縮粘性流體(即NS方程)有關的數據,但是標準也適用於它的子集,比如歐拉方程和勢流。CGNS標準包含如下幾種形式的數據。
- 結構、非結構和混合網格;
- 流場解數據,可以是節點的、單元中心點的、面中心點的或者邊中心點的;
- 多快接口連接面,包括abutting和overset的;
- 邊界條件;
- 流動方程描述,包括狀態方程、粘性以及熱傳導模型、湍流模型、多組分化學模型和電磁模型;
- 時間相關流體,包括動網格和變形網格;
- 量綱的單位以及無量綱的信息;
- 參考狀態;
- 收斂歷史;
- 和CAD模型定義的關係;
- 用戶自定義的數據。
標準和軟件的大部分可以應用於計算領域的一般物理問題。除流體動力學之外的其它規律需要擴大數據的定義和存儲的約定,但是基礎的、提供跨平台特性的數據庫軟件並不只是針對計算動力學的。
CGNS是自描述性的,允許應用程序在沒有其它外部信息的時候描述文件的結構和內容。CGNS可以利用兩種不同的底層的數據格式
- 一個內部開發並支持的叫做先進數據格式(Andaved Data Format,簡稱 ADF)的方法,基於先前在McDonnell Douglas中使用的通用文件格式系統;
- HDF5,一個廣泛使用的分層數據格式。
工具和指導
[編輯]除了CGNS庫自身,以下的工具和指導可以從SourceForge上獲得:
- CGNS工具,包括ADFviewer,一種CGNS文件的瀏覽器和編輯器;
- 用戶指導代碼,一些小的用Fortran和C寫的CGNS程序例子;
- F77例子,用Fortran寫的,用來演示所有的CGNS功能的計算程序例子。