• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      HDF5數(shù)據(jù)格式在核反應(yīng)堆計(jì)算軟件中的應(yīng)用研究1)

      2018-12-28 06:08:20馮晉濤潘俊杰
      中國(guó)核電 2018年4期
      關(guān)鍵詞:數(shù)據(jù)類(lèi)型數(shù)據(jù)格式熱工

      蘆 韡,馮晉濤,潘俊杰

      (中國(guó)核動(dòng)力研究設(shè)計(jì)院 核反應(yīng)堆系統(tǒng)設(shè)計(jì)技術(shù)重點(diǎn)實(shí)驗(yàn)室,四川 成都 610041)

      擁有高質(zhì)量的設(shè)計(jì)工具是開(kāi)展科研、工程設(shè)計(jì)任務(wù)的前提條件。核反應(yīng)堆專(zhuān)用科研、設(shè)計(jì)計(jì)算軟件匯集了人們對(duì)核反應(yīng)堆的理論方法、設(shè)計(jì)、建造和運(yùn)行經(jīng)驗(yàn),它是核反應(yīng)堆研發(fā)設(shè)計(jì)的必備工具。隨著計(jì)算機(jī)技術(shù)與性能的發(fā)展和提升,各種高性能計(jì)算服務(wù)器的應(yīng)用,核反應(yīng)堆計(jì)算軟件的計(jì)算規(guī)模不斷增大,網(wǎng)格數(shù)量和精細(xì)度不斷增加,計(jì)算數(shù)據(jù)也越發(fā)龐大,對(duì)核反應(yīng)堆計(jì)算軟件進(jìn)行海量數(shù)據(jù)存儲(chǔ)管理和輸入/輸出 (I/O)能力的需求急劇的增長(zhǎng),因此,對(duì)輸入輸出技術(shù)和數(shù)據(jù)存儲(chǔ)管理技術(shù)就提出了新的要求。

      HDF是用于存儲(chǔ)和分發(fā)科學(xué)數(shù)據(jù)的一種自我描述、多對(duì)象文件格式,由美國(guó)國(guó)家高級(jí)計(jì)算應(yīng)用中心NCSA(National Center f or Superco mputing Applications,NCSA)創(chuàng)建,以滿足不同群體的科學(xué)家在不同工程項(xiàng)目領(lǐng)域的需要,其最新版本HDF5格式在氣象、遙感等領(lǐng)域已有較為深入應(yīng)用。本文針對(duì)反應(yīng)堆堆芯數(shù)據(jù)管理、存儲(chǔ)的需求,包括組件各項(xiàng)中子學(xué)參數(shù)、堆芯各項(xiàng)中子學(xué)參數(shù)以及堆芯各項(xiàng)熱工水力參數(shù)等,通過(guò)對(duì)HDF5數(shù)據(jù)格式及其編程技術(shù)的研究,將其成功應(yīng)用到中國(guó)核動(dòng)力研究設(shè)計(jì)院自主研發(fā)的先進(jìn)中子學(xué)柵格計(jì)算軟件KYLIN-2、先進(jìn)節(jié)塊法堆芯三維少群中子學(xué)計(jì)算軟件CORCA-3D、堆芯熱工水力子通道分析軟件CORT H中,為反應(yīng)堆堆芯數(shù)值計(jì)算領(lǐng)域的數(shù)據(jù)存儲(chǔ)管理和高效I/O問(wèn)題提供解決方案。

      1 HDF5數(shù)據(jù)格式特性

      1.1 HDF5文件組織

      HDF5文件是一個(gè)由兩種基本數(shù)據(jù)對(duì)象 (分別為HDF5群組Groups與HDF5數(shù)據(jù)集Datasets)存放多種數(shù)據(jù)的容器,其中HDF5群組是包含0個(gè)或多個(gè)HDF5對(duì)象以及支持元數(shù)據(jù)(metadata)的一個(gè)群組結(jié)構(gòu),HDF5數(shù)據(jù)集是數(shù)據(jù)元素的一個(gè)多維數(shù)組以及支持元數(shù)據(jù)。

      使用群組和數(shù)據(jù)集時(shí)在許多方面類(lèi)似于使用UNIX的目錄和文件。HDF5文件里的對(duì)象經(jīng)常通過(guò)它的絕對(duì)路徑來(lái)引用。通過(guò)群組和數(shù)據(jù)集,可以存儲(chǔ)任意復(fù)雜的數(shù)據(jù)。HDF5文件以層次式的方式,有效地建立了文件內(nèi)各個(gè)對(duì)象之間的組織方式和邏輯包含關(guān)系,如圖1所示。

      圖1 HDF5數(shù)據(jù)模型結(jié)構(gòu)Fig.1 Data model of HDF5

      在創(chuàng)建HDF5數(shù)據(jù)格式文件時(shí),需創(chuàng)建 “群組+數(shù)據(jù)集”,創(chuàng)建群組時(shí)需在應(yīng)用程序中指明群組的位置、名稱(chēng),而創(chuàng)建數(shù)據(jù)集時(shí)則需指明數(shù)據(jù)集的位置、名稱(chēng)、數(shù)據(jù)類(lèi)型、數(shù)據(jù)空間以及創(chuàng)建特性列表等信息。

      1)數(shù)據(jù)類(lèi)型:HDF5數(shù)據(jù)集包含兩種數(shù)據(jù)類(lèi)型,元數(shù)據(jù)類(lèi)型 (ato mic)和復(fù)合數(shù)據(jù)類(lèi)型(co mposite)。元數(shù)據(jù)類(lèi)型在API層面上不能分解稱(chēng)更小的數(shù)據(jù)類(lèi)型單位,它包括整型(integer),浮點(diǎn)型 (float),日期和時(shí)間 (date and ti me),字符串 (string),比特域 (bitfield),非透明 (opaque)等數(shù)據(jù)類(lèi)型。復(fù)合數(shù)據(jù)類(lèi)型是一個(gè)或多個(gè)元數(shù)據(jù)類(lèi)型 (和/或這些數(shù)據(jù)類(lèi)型的數(shù)組)的集合。如圖2所示。

      圖2 HDF5數(shù)據(jù)類(lèi)型Fig.2 Data type of HDF5

      2)數(shù)據(jù)空間:HDF5數(shù)據(jù)空間描述了數(shù)據(jù)數(shù)組的維度。數(shù)據(jù)空間或者是數(shù)據(jù)點(diǎn)的有規(guī)則的N維數(shù)組 (稱(chēng)為簡(jiǎn)單數(shù)據(jù)空間),或者是由其他方式組成的更加通用的數(shù)據(jù)集合 (稱(chēng)為復(fù)雜數(shù)據(jù)空間)。數(shù)據(jù)集的維數(shù)可以是固定的,也可以是可擴(kuò)展的。數(shù)據(jù)空間也可以描述一個(gè)數(shù)據(jù)集的一部分,這就使得對(duì)選取的數(shù)據(jù)集進(jìn)行局部I/O操作成為可能。

      3)創(chuàng)建特性列表:創(chuàng)建數(shù)據(jù)集時(shí),HDF5允許用戶指定原始數(shù)據(jù)在磁盤(pán)上如何組織和壓縮。這個(gè)信息存放在數(shù)據(jù)集創(chuàng)建特性列表中,并傳遞給數(shù)據(jù)集接口。磁盤(pán)上的這個(gè)原始數(shù)據(jù)集能被連續(xù)存放 (與內(nèi)存管理中的線性方式相同)、分成大塊 (chunks)存放、外部存放等。

      1.2 HDF5文件針對(duì)反應(yīng)堆數(shù)值計(jì)算領(lǐng)域的適用性分析

      反應(yīng)堆數(shù)值計(jì)算領(lǐng)域常用的計(jì)算數(shù)據(jù)文件組織形式為十進(jìn)制或二進(jìn)制文本文件。與傳統(tǒng)的數(shù)據(jù)存儲(chǔ)方式比較,HDF5文件能較好地解決了計(jì)算數(shù)據(jù)存儲(chǔ)管理中存在的眾多問(wèn)題,HDF5文件在反應(yīng)堆數(shù)值計(jì)算領(lǐng)域的主要優(yōu)勢(shì)如下。

      (1)數(shù)據(jù)存儲(chǔ)規(guī)模無(wú)限性

      除去硬件條件的限制,HDF5數(shù)據(jù)格式不限制單個(gè)HDF5文件大小,常規(guī)數(shù)據(jù)文件一般不能超過(guò)2 GB,而HDF5對(duì)超過(guò)4 GB的數(shù)據(jù)仍然能夠流暢存儲(chǔ)。隨著反應(yīng)堆數(shù)值計(jì)算精細(xì)化程度的不斷提高,相應(yīng)的計(jì)算數(shù)據(jù)可能達(dá)到數(shù)GB的規(guī)模,HDF5文件能有效的解決反應(yīng)堆堆芯計(jì)算數(shù)據(jù)的存儲(chǔ)規(guī)模問(wèn)題。

      (2)跨平臺(tái)和可移植性

      目前主流的核反應(yīng)堆計(jì)算軟件的編程語(yǔ)言包括C、C++、Fortran和Java等,運(yùn)行平臺(tái)包括UNIX、Linux和Windows等。HDF5文件具有C、C++、Java和Fortran90程序接口,支持跨平臺(tái)在不同的計(jì)算環(huán)境中訪問(wèn)數(shù)據(jù),很好地適用于不同編程語(yǔ)言及不同運(yùn)行平臺(tái)的核反應(yīng)堆計(jì)算軟件。

      (3)并行I/O和局部I/O機(jī)制

      反應(yīng)堆堆芯計(jì)算數(shù)據(jù)規(guī)模較為龐大,I/O時(shí)間開(kāi)銷(xiāo)較大。HDF5文件實(shí)現(xiàn)了一個(gè)虛擬文件層,提供了多I/O機(jī)制,HDF5并行I/O驅(qū)動(dòng)器支持并行的將數(shù)據(jù)寫(xiě)到HDF5文件中,局部I/O機(jī)制則能使開(kāi)發(fā)者和用戶精確地讀寫(xiě)需要的數(shù)據(jù),從而提高數(shù)據(jù)訪問(wèn)效率。

      此外,HDF5文件還具有自我描述性、數(shù)據(jù)模型通用性、數(shù)據(jù)存儲(chǔ)機(jī)制的靈活性等特點(diǎn),豐富的層次結(jié)構(gòu)為用戶表達(dá)數(shù)據(jù)結(jié)構(gòu)提供了極大的靈活性。

      1.3 HDF5文件編程實(shí)現(xiàn)

      HDF5函數(shù)庫(kù) (HDF5 Librar y)提供了一系列應(yīng)用程序接口 (API)。這些API提供用于創(chuàng)建、存取、處理HDF5文件和對(duì)象的例程。HDF5函數(shù)庫(kù)是由C語(yǔ)言實(shí)現(xiàn)的,也包括使用Fortran90和Java編寫(xiě)的外殼函數(shù),可通過(guò)以上3種編程語(yǔ)言在反應(yīng)堆數(shù)值計(jì)算軟件中進(jìn)行HDF5庫(kù)文件的讀寫(xiě)操作。

      使用HDF5函數(shù)庫(kù)進(jìn)行數(shù)據(jù)寫(xiě)入的流程如圖3所示。

      HDF5中用來(lái)存放數(shù)據(jù)與定位數(shù)據(jù)的結(jié)構(gòu)分別是DataSet與hyperslab,使用方式如下:

      1)定義數(shù)據(jù)集之前,需指定數(shù)據(jù)類(lèi)型、數(shù)據(jù)空間、存儲(chǔ)布局、未初始化數(shù)據(jù)的默認(rèn)值等。數(shù)據(jù)集具有可擴(kuò)展性,可以根據(jù)需要實(shí)時(shí)擴(kuò)展數(shù)據(jù)空間的大小,從而改變數(shù)據(jù)集的容量。

      2)讀或?qū)憯?shù)據(jù)都需要先定位到數(shù)據(jù)空間中將要讀寫(xiě)的位置,然后調(diào)用write或者read函數(shù)進(jìn)行存取。

      在層次數(shù)據(jù)結(jié)構(gòu)中,訪問(wèn)HDF5文件內(nèi)容類(lèi)似Windows文件夾的訪問(wèn):首先指定文件名,然后以 “/”來(lái)表示層次。例如/Data/FEMData表示某文件內(nèi)名稱(chēng)為Data的群組下面的一個(gè)名為FEMData的群組或者數(shù)據(jù)集。HDF5支持部分I/O,可以有選擇性的讀寫(xiě)數(shù)據(jù)集中的一部分?jǐn)?shù)據(jù),這個(gè)機(jī)制是通過(guò)Hyperslab來(lái)實(shí)現(xiàn)的。部分I/O避免多余的內(nèi)存數(shù)據(jù)拷貝,保證數(shù)據(jù)存儲(chǔ)效率。

      圖3 HDF5文件數(shù)據(jù)寫(xiě)入流程Fig.3 Write flow of HDF5

      2 HDF5數(shù)據(jù)格式的應(yīng)用

      針對(duì)反應(yīng)堆組件中子學(xué)、堆芯中子學(xué)、堆芯熱工水力數(shù)據(jù)的特點(diǎn),設(shè)計(jì)并實(shí)現(xiàn)了基于HDF5數(shù)據(jù)格式的組件中子學(xué)參數(shù)庫(kù)KYMRES(KYlin-2 Main RESults databank)、堆芯中子學(xué)參數(shù)庫(kù)COMRES(COrca-3D Main RESults databank)和堆芯熱工水力參數(shù)庫(kù)THMRES(Ther mal-Hydraulic subchannel Main RESults databank)。

      HDF5文件的優(yōu)勢(shì)之一是能對(duì)數(shù)據(jù)進(jìn)行分層分組的管理,上述參數(shù)庫(kù)的設(shè)計(jì)正是基于這一思路開(kāi)展。

      2.1 采用HDF5數(shù)據(jù)格式的組件中子學(xué)參數(shù)庫(kù)

      組件中子學(xué)參數(shù)庫(kù)KY MRES包含基礎(chǔ)數(shù)據(jù)和狀態(tài)點(diǎn) (分支)數(shù)據(jù),其中基礎(chǔ)數(shù)據(jù)可劃分為幾何數(shù)據(jù)、選項(xiàng)數(shù)據(jù)等,狀態(tài)點(diǎn)數(shù)據(jù)則包括二維分布場(chǎng):中子通量、功率、截面、核密度等。KYMRES庫(kù)具體形式如圖4所示。KYMRES庫(kù)成功應(yīng)用于先進(jìn)中子學(xué)柵格 (組件)計(jì)算軟件KYLIN-2中,可用于軟件自身再啟動(dòng)計(jì)算和下游堆芯計(jì)算。同時(shí),KYMRES庫(kù)包含了KYLIN-2軟件所有的計(jì)算輸出信息,由于HDF5文件提供了專(zhuān)用的文件查看工具,因此KYMRES庫(kù)也可作為KYLIN-2軟件的輸出文件提供給用戶使用。

      2.2 采用HDF5數(shù)據(jù)格式的堆芯中子學(xué)參數(shù)庫(kù)

      堆芯中子學(xué)參數(shù)庫(kù)COMRES是具備主要信息的堆芯三維數(shù)據(jù)庫(kù),提供給堆芯后續(xù)計(jì)算使用,如首循環(huán)裝載計(jì)算、換料循環(huán)裝載計(jì)算提供給堆芯燃耗計(jì)算的堆芯數(shù)據(jù)庫(kù)、歷史循環(huán)的燃耗計(jì)算提供給換料循環(huán)裝載計(jì)算的堆芯數(shù)據(jù)庫(kù)。

      COMRES庫(kù)包含基礎(chǔ)數(shù)據(jù)和燃耗步數(shù)據(jù),其中基礎(chǔ)數(shù)據(jù)包括不隨燃耗或堆芯狀態(tài)變化的堆芯幾何模型、燃料組件裝載等信息,燃耗步數(shù)據(jù)則包括隨燃耗或堆芯狀態(tài)變化的堆芯總體、組件、節(jié)塊、燃料棒等不同尺度下的各類(lèi)參數(shù),如中子通量、功率、截面、核密度等參數(shù)的三維分布場(chǎng)。

      COMRES庫(kù)具體結(jié)構(gòu)形式如圖5所示,COMRES庫(kù)已成功應(yīng)用于先進(jìn)節(jié)塊法堆芯三維少群中子學(xué)計(jì)算軟件CORCA-3D中。

      2.3 采用HDF5數(shù)據(jù)格式的堆芯熱工水力參數(shù)庫(kù)

      T H MRES庫(kù)用于存儲(chǔ)堆芯各項(xiàng)熱工水力參數(shù),依次按照時(shí)間步、子通道號(hào)、軸向節(jié)塊號(hào)的層次進(jìn)行數(shù)據(jù)的存儲(chǔ),存儲(chǔ)的數(shù)據(jù)主要包括流體物性 (流體密度、比焓、導(dǎo)熱率),堆芯熱工水力參數(shù) (溫度、壓力、流量),本構(gòu)關(guān)系式參數(shù)(摩擦系數(shù)、空泡份額、含氣率、換熱系數(shù)),DNBR參數(shù) (不同CHF關(guān)系式計(jì)算的結(jié)果)等。

      T H MRES庫(kù)具備完整的堆芯三維熱工水力參數(shù)信息,成功應(yīng)用于堆芯熱工水力子通道分析軟件CORT H等軟件中,可用于CORT H軟件再啟動(dòng)計(jì)算,堆芯溫場(chǎng)、流場(chǎng)三維顯示,同時(shí)也可作為堆芯多專(zhuān)業(yè)耦合系統(tǒng)的接口數(shù)據(jù)。

      T H MRES庫(kù)第一層為瞬態(tài)時(shí)間步,第二層為各子通道編號(hào),第三層為子通道內(nèi)軸向節(jié)塊,第四層為節(jié)塊內(nèi)各參數(shù),具體結(jié)構(gòu)形式如圖6所示。

      圖4 KYMRES庫(kù)結(jié)構(gòu)Fig.4 Structure of KYMRES

      圖6 THMRES庫(kù)結(jié)構(gòu)Fig.6 Structure of TH MRES

      3 結(jié) 論

      本文針對(duì)核反應(yīng)堆計(jì)算軟件對(duì)海量數(shù)據(jù)存儲(chǔ)管理和輸入輸出 (I/O)的需求,對(duì)HDF5數(shù)據(jù)格式進(jìn)行了深入研究,掌握了HDF5數(shù)據(jù)格式的結(jié)構(gòu)、特點(diǎn)、優(yōu)勢(shì),以及HDF5文件的編程接口。針對(duì)中國(guó)核動(dòng)力研究設(shè)計(jì)院自主研發(fā)的先進(jìn)中子學(xué)柵格計(jì)算軟件KYLIN-2、先進(jìn)節(jié)塊法堆芯三維少群中子學(xué)計(jì)算軟件CORCA-3D、堆芯熱工水力子通道分析軟件CORT H對(duì)數(shù)據(jù)存儲(chǔ)和處理的需求,設(shè)計(jì)并實(shí)現(xiàn)了基于HDF5文件格式的組件參數(shù)庫(kù)KY MRES、堆芯參數(shù)庫(kù)COMRES、子通道參數(shù)庫(kù)T H MRES。

      KY MRES、COMRES和T H MRES庫(kù)對(duì)數(shù)據(jù)進(jìn)行了分層分組的管理和存儲(chǔ),KYLIN-2、CORCA-3D和CORT H軟件能夠十分便捷的對(duì)指定的群組或數(shù)據(jù)集進(jìn)行存取,無(wú)需將數(shù)據(jù)庫(kù)整體讀入,節(jié)省了內(nèi)存開(kāi)銷(xiāo),并且軟件能夠同時(shí)對(duì)多個(gè)群組或數(shù)據(jù)集進(jìn)行存取操作。對(duì)局部I/O和并行I/O的支持使得上述數(shù)據(jù)庫(kù)I/O效率得到了大幅提升。滿足了反應(yīng)堆堆芯數(shù)值計(jì)算軟件的數(shù)據(jù)存儲(chǔ)管理和高效I/O的要求。

      猜你喜歡
      數(shù)據(jù)類(lèi)型數(shù)據(jù)格式熱工
      詳談Java中的基本數(shù)據(jù)類(lèi)型與引用數(shù)據(jù)類(lèi)型
      如何理解數(shù)據(jù)結(jié)構(gòu)中的抽象數(shù)據(jù)類(lèi)型
      熱工儀表自動(dòng)化安裝探討的認(rèn)識(shí)
      智能控制在電廠熱工自動(dòng)化中的應(yīng)用
      在智能交通系統(tǒng)中PLC數(shù)據(jù)格式轉(zhuǎn)換方法的研究
      智能控制在電廠熱工自動(dòng)化中的應(yīng)用
      論子函數(shù)在C語(yǔ)言數(shù)據(jù)格式輸出中的應(yīng)用
      DWG與SHP數(shù)據(jù)格式互轉(zhuǎn)換方法研究——以龍巖規(guī)劃測(cè)繪數(shù)據(jù)為例
      提高火電廠熱工管理精細(xì)化水平探索
      基于ArcGIS的規(guī)劃數(shù)據(jù)格式轉(zhuǎn)換研究
      托里县| 建瓯市| 德化县| 崇左市| 嘉鱼县| 东丰县| 奉贤区| 财经| 连平县| 波密县| 新泰市| 通榆县| 筠连县| 修武县| 长葛市| 民县| 哈巴河县| 廊坊市| 苍溪县| 乌兰察布市| 饶阳县| 龙里县| 留坝县| 海兴县| 漾濞| 郴州市| 桃江县| 罗山县| 桑植县| 随州市| 舒城县| 永仁县| 乌鲁木齐市| 巫溪县| 巴里| 墨竹工卡县| 曲水县| 安溪县| 岑巩县| 平塘县| 龙泉市|