亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        面向云計算環(huán)境的OpenFOAM 網(wǎng)格生成服務(wù)*

        2022-04-19 10:49:32高若辰淮曉永張志達(dá)李佰文
        電子技術(shù)應(yīng)用 2022年4期
        關(guān)鍵詞:參數(shù)設(shè)置客戶端組件

        高若辰,淮曉永,張志達(dá),李佰文

        (華北計算機(jī)系統(tǒng)工程研究所,北京 100083)

        0 引言

        計算流體力學(xué)(Computational Fluid Dynamics,CFD)是流體力學(xué)和計算機(jī)科學(xué)相互融合的一門新興交叉學(xué)科,其基本原理是把待求解的連續(xù)物理場(如速度場和壓力場)分解成有限個離散點的集合,然后建立控制流體流動的控制方程,通過求解方程組得到的近似解來模擬流體流動情況[1-2]。CFD 在汽車、船舶、航空航天、工業(yè)設(shè)計等多個領(lǐng)域具有廣泛的應(yīng)用[3-4]。

        CFD 的基本結(jié)構(gòu)組成一般分為前處理、數(shù)值求解和后處理分析三部分。其中,網(wǎng)格生成是前處理的關(guān)鍵步驟之一,在計算流體力學(xué)的工業(yè)應(yīng)用實踐中,一般有40%~45%的時間耗費在前處理階段[5]。

        網(wǎng)格生成是對連續(xù)計算流場的離散化,把一個連續(xù)的幾何區(qū)域分割成許多很小的單元,以便在離散的單元上進(jìn)行流場代數(shù)方程的數(shù)值求解[6]。為了獲得高精度的數(shù)值仿真解,需要將計算域劃分為盡可能小的網(wǎng)格單元,質(zhì)量好的網(wǎng)格通??梢赃_(dá)到千萬甚至上億的數(shù)量級。網(wǎng)格數(shù)量越多,對CPU、內(nèi)存等計算資源的需求也會越高。因此,復(fù)雜大型模型的網(wǎng)格生成計算需要耗費巨大的計算資源。

        為了解決網(wǎng)格生成技術(shù)計算量大、耗時長的問題,一方面是優(yōu)化網(wǎng)格生成技術(shù),如動網(wǎng)格生成技術(shù)[7]、重疊網(wǎng)格生成技術(shù)[8]和自適應(yīng)網(wǎng)格生成技術(shù)[9-12];另一方面,利用云端的高性能服務(wù)器資源進(jìn)行網(wǎng)格生成計算也是工程技術(shù)發(fā)展的方向之一[13]。本文對云計算技術(shù)與網(wǎng)格生成技術(shù)進(jìn)行集成,設(shè)計開發(fā)了一個網(wǎng)格生成服務(wù)原型系統(tǒng),并基于OpenFOAM 網(wǎng)格生成器設(shè)計實現(xiàn)了一個面向云計算環(huán)境的網(wǎng)格生成服務(wù)原型軟件。

        1 網(wǎng)格生成服務(wù)模型

        網(wǎng)格生成服務(wù)模型如圖1 所示。網(wǎng)格生成服務(wù)模型通過定義網(wǎng)格生成應(yīng)用協(xié)議,對網(wǎng)格生成API 方法進(jìn)行服務(wù)接口封裝,建立支持WAMP(Web Application Messaging Protocol,一種在Websocket 協(xié)議基礎(chǔ)上的應(yīng)用層協(xié)議標(biāo)準(zhǔn))的服務(wù)接口協(xié)議。

        圖1 網(wǎng)格生成服務(wù)模型

        1.1 網(wǎng)格生成應(yīng)用協(xié)議MeshProtocol

        網(wǎng)格生成的一般步驟如下:

        (1)導(dǎo)入算例的幾何模型;

        (2)選擇合適的網(wǎng)格劃分算法;

        (3)根據(jù)網(wǎng)格劃分算法設(shè)置相應(yīng)的網(wǎng)格參數(shù);

        (4)執(zhí)行網(wǎng)格劃分計算;

        (5)檢查生成網(wǎng)格的質(zhì)量;

        (6)根據(jù)求解器網(wǎng)格格式執(zhí)行相應(yīng)的網(wǎng)格類型轉(zhuǎn)換,轉(zhuǎn)換為可用于求解器的網(wǎng)格。

        根據(jù)網(wǎng)格生成步驟分析,網(wǎng)格生成服務(wù)一般包括查詢可用的網(wǎng)格劃分方法、獲取網(wǎng)格劃分方法的網(wǎng)格設(shè)置參數(shù)內(nèi)容、設(shè)置算例的網(wǎng)格參數(shù)、劃分網(wǎng)格、檢查網(wǎng)格質(zhì)量、網(wǎng)格類型轉(zhuǎn)換等功能。面向網(wǎng)格生成服務(wù)需求,設(shè)計網(wǎng)格生成應(yīng)用協(xié)議MeshProtocol 的接口方法如表1 所示。

        表1 MeshProtocol 應(yīng)用協(xié)議接口

        1.2 基于服務(wù)的網(wǎng)格生成計算

        基于MeshProtocol 網(wǎng)格應(yīng)用協(xié)議建立一個網(wǎng)格生成Server,通過ClientFactory 管理客戶端連接,當(dāng)Client 成功連接時則創(chuàng)建協(xié)議對象接收Client 請求執(zhí)行相應(yīng)計算功能。

        基于客戶端/服務(wù)器模型的網(wǎng)格生成計算序列圖如圖2 所示。

        圖2 基于服務(wù)的網(wǎng)格生成序列圖

        (1)用戶選擇要仿真分析方案的幾何模型文件,客戶端導(dǎo)入其幾何模型文件;

        (2)客戶端調(diào)用方法查詢服務(wù),查詢服務(wù)中可用的網(wǎng)格劃分方法;

        (3)服務(wù)器返回可供用戶使用的劃分方法;

        (4)客戶端根據(jù)網(wǎng)格劃分方法名稱初始化網(wǎng)格生成用戶界面的劃分方法選擇部分;

        (5)用戶選擇一種網(wǎng)格劃分方法;

        (6)客戶端調(diào)用獲取參數(shù)內(nèi)容服務(wù),查詢該網(wǎng)格劃分方法中各個設(shè)置參數(shù)的參數(shù)名、默認(rèn)值、參數(shù)說明等信息;

        (7)服務(wù)器返回查詢到的網(wǎng)格設(shè)置參數(shù)內(nèi)容;

        (8)客戶端根據(jù)網(wǎng)格設(shè)置參數(shù)內(nèi)容生成網(wǎng)格生成用戶界面的網(wǎng)格參數(shù)設(shè)置部分;

        (9)用戶根據(jù)算例需求在網(wǎng)格設(shè)置界面中設(shè)置適當(dāng)?shù)木W(wǎng)格參數(shù),客戶端調(diào)用參數(shù)設(shè)置服務(wù)將參數(shù)上傳至服務(wù)器;

        (10)客戶端調(diào)用網(wǎng)格劃分服務(wù)執(zhí)行網(wǎng)格劃分;

        (11)服務(wù)器生成網(wǎng)格文件并返回網(wǎng)格劃分日志;

        (12)若網(wǎng)格劃分成功,客戶端顯示生成的網(wǎng)格數(shù)據(jù)的圖像,否則顯示執(zhí)行錯誤信息,由用戶根據(jù)錯誤信息修正,直到執(zhí)行成功;

        (13)客戶端調(diào)用網(wǎng)格檢查服務(wù)檢查網(wǎng)格質(zhì)量;

        (14)服務(wù)器返回網(wǎng)格質(zhì)量檢查結(jié)果;

        (15)客戶端調(diào)用網(wǎng)格轉(zhuǎn)換服務(wù),根據(jù)求解器網(wǎng)格格式執(zhí)行相應(yīng)的網(wǎng)格類型轉(zhuǎn)換;

        (16)服務(wù)器返回轉(zhuǎn)換后的網(wǎng)格文件。

        1.3 網(wǎng)格設(shè)置交互

        網(wǎng)格生成計算需要對算例進(jìn)行計算域的網(wǎng)格設(shè)置,如設(shè)置幾何縮放因子、計算域范圍、網(wǎng)格疏密和邊界部件等網(wǎng)格設(shè)置,不同劃分方法根據(jù)算法特征提供不同的參數(shù)設(shè)置。服務(wù)提供不同方法的交互參數(shù)模板規(guī)范,客戶端根據(jù)模板動態(tài)創(chuàng)建交互面板,給用戶提供交互界面。

        網(wǎng)格參數(shù)設(shè)置的主要類型包括單值輸入和多參數(shù)表格輸入兩類組件。單值輸入組件應(yīng)當(dāng)定義組件類型、參數(shù)標(biāo)簽、參數(shù)類型、參數(shù)名、參數(shù)默認(rèn)值和參數(shù)的用戶幫助說明信息。具體代碼如下:

        多參數(shù)表格輸入組件應(yīng)當(dāng)定義組件類型、表名、表頭內(nèi)容、參數(shù)類型、每行表格參數(shù),每行表格參數(shù)又應(yīng)分別設(shè)置參數(shù)標(biāo)簽、參數(shù)名、參數(shù)默認(rèn)值和參數(shù)的用戶幫助說明信息。具體代碼如下:

        2 基于OpenFOAM 的網(wǎng)格生成服務(wù)原型

        OpenFOAM 是由OpenCFD Ltd 于2004 年開發(fā)的一款免費、開源的CFD 軟件[14]。OpenFOAM 提供的典型網(wǎng)格劃分方法有blockMesh、snappyHexMesh 等。其中blockMesh用于生成簡單幾何結(jié)構(gòu)網(wǎng)格,snappyHexMesh 用于快速高效地劃分六面體+多面體網(wǎng)格[15]。采用上述網(wǎng)格服務(wù)模型,下面對OpenFOAM 的網(wǎng)格劃分方法進(jìn)行服務(wù)化封裝,實現(xiàn)了一個基于OpenFOAM 的網(wǎng)格生成服務(wù)原型系統(tǒng)ofMeshService。

        2.1 ofMeshService 原型框架組成

        ofMeshService 的原型框架組成如圖3 所示。其中:MeshProtocol 協(xié)議針對網(wǎng)格生成服務(wù)為客戶端提供的基本接口,包括劃分方法查詢接口、參數(shù)獲取接口、參數(shù)設(shè)置接口、網(wǎng)格劃分接口、網(wǎng)格檢查接口、網(wǎng)格轉(zhuǎn)換接口等;ws-link 提供基于websocket 的rpc 網(wǎng)絡(luò)通信基礎(chǔ)服務(wù);blockMesh、snappyHexMesh 是兩種網(wǎng)格劃分方法;checkMesh 提供網(wǎng)格質(zhì)量檢查處理;foamMeshToFluent 提供把OpenFOAM 網(wǎng)格格式轉(zhuǎn)換為Fluent 網(wǎng)格格式的轉(zhuǎn)換工具。

        圖3 ofMeshService 網(wǎng)格服務(wù)框架

        2.2 ofMeshService 網(wǎng)格設(shè)置交互

        根據(jù)OpenFOAM 的參數(shù)文件分析,blockMesh 劃分方法提供的參數(shù)設(shè)置有幾何縮放因子、包圍盒大小、計算域范圍、網(wǎng)格疏密、網(wǎng)格單元膨脹率和邊界部件等。幾何縮放因子和包圍盒大小使用單值輸入組件,其余參數(shù)可分為計算域和邊界部件兩大類,分別用多參數(shù)表格輸入組件。客戶端解析blockMesh 的用戶交互參數(shù)模板信息后動態(tài)生成的參數(shù)設(shè)置界面如圖4 所示。

        圖4 blockMesh 參數(shù)設(shè)置界面示意圖

        snappyHexMesh 首先使用blockMesh 進(jìn)行初始化網(wǎng)格劃分,在此基礎(chǔ)上對網(wǎng)格做進(jìn)一步精細(xì)劃分,因此snappyHexMesh 劃分界面首先需要繼承blockMesh 界面的功能。此外,還需增加幾何細(xì)化等級、材質(zhì)點坐標(biāo)等參數(shù)設(shè)置,分別用多參數(shù)表格輸入組件定義??蛻舳私馕鰏nappy-HexMesh 的用戶交互參數(shù)配置信息后生成的參數(shù)設(shè)置界面如圖5 所示(較blockMesh 新增部分)。

        圖5 snappyHexMesh 參數(shù)設(shè)置界面示意圖

        3 服務(wù)測試

        如圖6 所示,將網(wǎng)格生成服務(wù)部署在云服務(wù)上,在云上創(chuàng)建服務(wù)器實例。服務(wù)器實例基本計算資源配置為CPU:FT2000+,16 核,32 GB 內(nèi)存。測試算例為摩托車外流場網(wǎng)格劃分,使用snappyHexMesh 劃分方法生成摩托車外流場計算域網(wǎng)格。

        圖6 “云+端”的網(wǎng)格生成服務(wù)結(jié)構(gòu)

        分別通過測試1、測試2 測試單機(jī)網(wǎng)格劃分、“云+端”網(wǎng)格劃分兩種情況下的網(wǎng)格劃分執(zhí)行時間。

        測試1:對算例調(diào)用本地的snappyHexMesh 劃分方法,記錄其網(wǎng)格劃分執(zhí)行時間。

        測試2:通過服務(wù)器上的網(wǎng)格生成服務(wù)執(zhí)行網(wǎng)格劃分,測試記錄網(wǎng)格劃分執(zhí)行時間。

        測試結(jié)果如表2 所示。

        表2 單機(jī)版與云服務(wù)版網(wǎng)格生成計算對比

        測試結(jié)果表明,網(wǎng)格生成服務(wù)能夠給客戶端提供網(wǎng)格生成計算基本服務(wù)接口,滿足網(wǎng)格生成計算需求;由于利用了云上的高性能計算資源,有效提高了網(wǎng)格生成計算效率,減少了網(wǎng)格生成執(zhí)行時間,增強(qiáng)了用戶體驗友好性。

        4 結(jié)論

        針對網(wǎng)格劃分計算量大、計算耗時長的問題,本文提出了一種面向云計算的網(wǎng)格生成服務(wù)模型,從而使網(wǎng)格生成可以部署在高性能的云服務(wù)器上,客戶端可以遠(yuǎn)程通過網(wǎng)格生成應(yīng)用協(xié)議與網(wǎng)格生成計算進(jìn)行通信。客戶端只負(fù)責(zé)GUI 人機(jī)交互,大規(guī)模的網(wǎng)格生成處理在云上高性能能服務(wù)器上執(zhí)行,從而提高了網(wǎng)格生成計算的效率,增強(qiáng)了網(wǎng)格生成處理計算用戶體驗的友好性。

        猜你喜歡
        參數(shù)設(shè)置客戶端組件
        無人機(jī)智能巡檢在光伏電站組件診斷中的應(yīng)用
        能源工程(2022年2期)2022-05-23 13:51:50
        新型碎邊剪刀盤組件
        U盾外殼組件注塑模具設(shè)計
        縣級臺在突發(fā)事件報道中如何應(yīng)用手機(jī)客戶端
        傳媒評論(2018年4期)2018-06-27 08:20:24
        孵化垂直頻道:新聞客戶端新策略
        傳媒評論(2018年4期)2018-06-27 08:20:16
        基于Vanconnect的智能家居瘦客戶端的設(shè)計與實現(xiàn)
        電子測試(2018年10期)2018-06-26 05:53:34
        蟻群算法求解TSP中的參數(shù)設(shè)置
        動車環(huán)境下U900異頻切換參數(shù)設(shè)置探討
        風(fēng)起新一代光伏組件膜層:SSG納米自清潔膜層
        太陽能(2015年11期)2015-04-10 12:53:04
        基于MATLAB仿真的井下變壓器參數(shù)設(shè)置研究
        日日婷婷夜日日天干| 开心五月激动心情五月| 91精品国产综合久久青草| 在线观看免费不卡网站| 日本乱熟人妻中文字幕乱码69| 国产伦一区二区三区色一情| 精品无码av一区二区三区| 国产又黄又大又粗视频| 亚洲无线码1区| 中文字幕日韩精品永久在线| 国产区精品一区二区不卡中文| 中文字幕亚洲情99在线| 国产一区二区三区4区| 永久免费看黄网站性色| 国产精品永久久久久久久久久| 欧美亚洲日本国产综合在线| 99久久国产综合精品女乱人伦| 国产女主播福利一区二区| 日韩内射美女片在线观看网站| 另类内射国产在线| 91美女片黄在线观看| 日本在线一区二区三区视频| 国产麻豆精品精东影业av网站| 国产午夜视频在线观看| 国产伦码精品一区二区| 日本按摩偷拍在线观看| 国产欧美日韩精品专区| 国产在线丝袜精品一区免费| 国产成人亚洲合色婷婷| 国产精品18久久久白浆| 骚小妹影院| 99久久久精品免费| 91久久国产香蕉熟女线看| 综合色区亚洲熟妇另类| 天天爽夜夜爽人人爽曰喷水| 日本高清二区视频久二区| 欧美拍拍视频免费大全| 无码精品国产va在线观看| 99久久精品国产片| 在线观看国产视频你懂得| 色偷偷噜噜噜亚洲男人|