《ANSYS Fluent二次開發(fā)指南》詳細介紹了ANSYSFluent二次開發(fā)方法和技巧,《ANSYS Fluent二次開發(fā)指南》內(nèi)容分為三部分:第1部分為UDF程序設(shè)計,介紹了FluentUDF基礎(chǔ)、UDF編譯配置、程序編制等;第2部分為Fluent界面定制,主要介紹Scheme語言基礎(chǔ)以及利用Scheme語言編制Fluent自定義用戶界面的一般流程;第3部分為流程封裝,介紹了采用進程封裝方式進行Fluent二次開發(fā)的基本方法。
《ANSYS Fluent二次開發(fā)指南》結(jié)構(gòu)清晰,語言簡練,通俗易懂,可供CFD工程人員、研發(fā)人員以及相關(guān)專業(yè)師生閱讀參考。
適讀人群 :供CFD工程人員、研發(fā)人員以及相關(guān)專業(yè)師生閱讀參考閱讀 1.國內(nèi)首本介紹Fluent二次開發(fā)的圖書,涵蓋UDF程序設(shè)計、Fluent界面定制以及流程封裝等內(nèi)容
2.CAE大神流沙老師傾情制作,詳細介紹Fluent二次開發(fā)的基本方法和技巧
內(nèi)容全面,語言精煉,通俗易懂,幫助讀者快速掌握fluent二次開發(fā)技能
ANSYSFluent是一款通用計算流體力學(xué)軟件,目前被廣泛應(yīng)用于航空航天、能源動力、石油化工、環(huán)境、水利、氣象、生物醫(yī)療、食品等行業(yè),且隨著計算機技術(shù)的不斷發(fā)展,其應(yīng)用領(lǐng)域還在不斷擴展。
作為一款通用流體計算軟件,ANSYSFluent提供了眾多的功能幫助用戶實現(xiàn)前處理、求解及后處理的完整計算流程,同時ANSYSFluent還提供了二維和三維、瞬態(tài)及穩(wěn)態(tài)、層流及湍流、單相流及多相流、部件運動與網(wǎng)格運動、化學(xué)反應(yīng)流及燃燒等眾多計算功能。這些功能在賦予了Fluent軟件強大功能的同時,無形中也提高了軟件的使用門檻及使用者的學(xué)習(xí)周期。然而在實際工程應(yīng)用中,用戶所涉及的流體問題往往只使用到軟件眾多功能中的少部分,因此使用者常需要對軟件進行封裝,將一些不相關(guān)的功能及界面隱藏掉,開發(fā)出更具有專業(yè)特色的軟件模塊。另一方面,為保證軟件的通用性,F(xiàn)luent在一些模型及功能上進行了處理,在實際使用過程中,經(jīng)常需要根據(jù)實際情況自定義計算模型,或利用自定義方式實現(xiàn)軟件自身未能提供的功能。
Fluent提供了良好的用戶自定義機制以滿足軟件定制的需求。在功能擴展方面,用戶可以采用C語言編寫UDF程序;在軟件界面擴展方面,用戶可以采用Scheme語言進行界面定制。除此之外,F(xiàn)luent提供了TUI腳本命令,用戶可以利用journal腳本實現(xiàn)仿真計算流程控制。
本書以Fluent二次開發(fā)為目標(biāo),主要介紹Fluent二次開發(fā)的三種方式:
(1)UDF程序設(shè)計,內(nèi)容涵蓋UDF編譯配置、程序編制等;
(2)Fluent界面定制,涵蓋Scheme語言基礎(chǔ)以及利用Scheme語言編制Fluent自定義用戶界面的一般流程;
(3)流程封裝,內(nèi)容涵蓋采用進程封裝方式進行Fluent二次開發(fā)的基本方法。
本書可供從事流體仿真相關(guān)行業(yè)的科研人員以及企業(yè)研發(fā)人員學(xué)習(xí)參考,也可供與流體仿真相關(guān)專業(yè)的師生閱讀。
編著者
第1部分UDF程序設(shè)計
第1章FluentUDF基礎(chǔ) 002
1.1UDF簡介 002
1.2FluentUDF的學(xué)習(xí)路徑 002
1.3基礎(chǔ)要求 003
1.4UDF代碼編輯器 003
1.5UDF使用限制 003
1.6C語言基礎(chǔ) 005
1.6.1C語言中的注釋 005
1.6.2基本數(shù)據(jù)類型 005
1.6.3常數(shù) 005
1.6.4全局變量和局部變量 005
1.6.5外部變量 006
1.6.6靜態(tài)變量 007
1.6.7用戶自定義數(shù)據(jù)類型 008
1.6.8強制轉(zhuǎn)換 008
1.6.9函數(shù) 008
1.6.10數(shù)組 008
1.6.11指針 008
1.6.12流程控制 009
1.6.13操作符 010
1.6.14C語言庫函數(shù) 011
1.6.15預(yù)處理命令 011
1.7UDF使用流程 014
1.7.1Fluent中的Patch 014
1.7.2案例描述 015
1.7.3編寫UDF源文件 016
1.7.4解釋UDF 017
1.7.5HookUDF 017
1.7.6查看結(jié)果 018
第2章UDF的編譯及解釋 020
2.1解釋型UDF 020
2.1.1解釋型UDF的局限性 020
2.1.2在Fluent中解釋UDF 021
2.2編譯型UDF 021
2.2.1C編譯器 022
2.2.2GUI方式編譯UDF 022
2.2.3命令行方式編譯UDF 024
2.2.4GCC方式編譯UDF 026
2.3設(shè)置UDF環(huán)境變量 031
2.4UDF中的網(wǎng)格結(jié)構(gòu) 033
2.5UDF中的數(shù)據(jù)類型 033
第3章UDF數(shù)據(jù)訪問宏 035
3.1數(shù)據(jù)訪問宏 035
3.1.1節(jié)點數(shù)據(jù)訪問宏 035
3.1.2面數(shù)據(jù)獲取宏 037
3.1.3單元數(shù)據(jù)訪問宏 039
3.1.4拓撲關(guān)系宏 041
3.1.5特殊宏 044
3.2循環(huán)迭代宏 046
3.2.1遍歷區(qū)域中的網(wǎng)格單元 047
3.2.2遍歷區(qū)域中的網(wǎng)格面 047
3.2.3遍歷網(wǎng)格單元集合中的所有單元 047
3.2.4遍歷面集合中的所有面 047
3.2.5遍歷一個網(wǎng)格單元上的所有面 048
3.2.6遍歷網(wǎng)格單元中的節(jié)點 048
3.2.7遍歷網(wǎng)格面中的所有節(jié)點 048
3.3向量及標(biāo)量運算宏 049
3.3.12D及3D處理 049
3.3.2ND操作宏 049
3.3.3NV宏 050
3.3.4向量運算宏 051
3.4時間相關(guān)宏 052
3.5輸入輸出宏 053
3.5.1Message宏 053
3.5.2Error宏 053
3.6其他宏 053
3.6.1Data_Valid_P 054
3.6.2FLUID_THREAD_P 054
3.6.3Get_Report_Definition_Values 054
3.6.4M_PI 057
3.6.5N_UDM 057
3.6.6N_UDS 057
3.6.7SQR(k) 058
3.6.8UNIVERSAL_GAS_CONSTANT 058
第4章常用的DEFINE宏 059
4.1通用DEFINE宏 059
4.1.1DEFINE_ADJUST 059
4.1.2DEFINE_DELTAT 061
4.1.3DEFINE_EXECUTE_AT_END 063
4.1.4DEFINE_EXECUTE_AT_EXIT 065
4.1.5DEFINE_EXECUTE_FROM_GUI 065
4.1.6DEFINE_EXECUTE_ON_LOADING 066
4.1.7DEFINE_EXECUTE_AFTER_CASE/DATA 067
4.1.8DEFINE_INIT 067
4.1.9DEFINE_ON_DEMAND 068
4.1.10DEFINE_REPORT_DEFINITION_FN 070
4.1.11DEFINE_RW_FILE 071
4.1.12DEFINE_RW_HDF_FILE 072
4.2模型參數(shù)指定宏 072
4.2.1DEFINE_ZONE_MOTION 072
4.2.2DEFINE_PROFILE 073
4.2.3DEFINE_PROPERTY 074
4.2.4DEFINE_SPECIFIC_HEAT 075
4.3動網(wǎng)格模型宏 075
4.3.1DEFINE_CG_MOTION 075
4.3.2DEFINE_GEOM 077
4.3.3DEFINE_GRID_MOTION 077
4.3.4DEFINE_SDOF_PROPERTIES 079
4.4源項定義 080
4.4.1DEFINE_SOURCE 080
4.4.2源項定義案例 080
4.5UDS及UDS宏 081
4.5.1單相流中的UDS 081
4.5.2多相流中的UDS 082
4.5.3Fluent中定義UDS 083
4.5.4UDS宏 087
第5章并行計算中的UDF 090
5.1并行UDF介紹 090
5.1.1并行計算環(huán)境 090
5.1.2命令傳遞與通信 091
5.2并行計算中的網(wǎng)格術(shù)語 092
5.2.1分區(qū)網(wǎng)格中的網(wǎng)格類型 092
5.2.2分區(qū)邊界上的網(wǎng)格面 093
5.2.3PRINCIPAL_FACE_P 094
5.2.4外部Thread數(shù)據(jù)存儲 094
5.3串行代碼并行化 094
5.3.1串行代碼并行化的任務(wù) 094
5.3.2DPM模型的并行化 095
5.4并行UDF宏 095
5.4.1編譯器指令 096
5.4.2host與node節(jié)點通信 097
5.4.3邏輯判斷 098
5.4.4全局約簡 099
5.4.5全局求和 100
5.4.6全局最大最小值 100
5.4.7全局邏輯值 100
5.4.8全局同步 101
5.5并行數(shù)據(jù)遍歷 101
5.5.1內(nèi)部網(wǎng)格遍歷 101
5.5.2外部網(wǎng)格遍歷 102
5.5.3內(nèi)部及外部網(wǎng)格遍歷 102
5.5.4遍歷所有網(wǎng)格面 103
5.6節(jié)點間數(shù)據(jù)交換 104
5.6.1網(wǎng)格單元及網(wǎng)格面分區(qū)ID 104
5.6.2網(wǎng)格單元分區(qū)ID 104
5.6.3網(wǎng)格面分區(qū)ID 104
5.6.4消息顯示 104
5.6.5消息傳遞 105
5.6.6計算節(jié)點間數(shù)據(jù)交換 108
5.7并行UDF宏限制 109
5.8處理器標(biāo)識 111
5.9并行UDF中的文件讀寫 112
5.9.1讀取文件 112
5.9.2寫入文件 113
第2部分Fluent界面定制
第6章Fluent用戶界面開發(fā)基礎(chǔ) 118
6.1為何要進行界面開發(fā) 118
6.2如何進行界面開發(fā) 118
6.3界面開發(fā)工具 119
6.4一個簡單的Scheme程序 120
6.5使用.fluent文件 121
第7章Scheme語言基礎(chǔ) 123
7.1Scheme編輯器 123
7.2基本要素 124
7.2.1注釋 124
7.2.2塊 124
7.2.3數(shù)據(jù)類型 124
7.2.4基本語法概念 126
7.3程序結(jié)構(gòu) 128
7.3.1順序結(jié)構(gòu) 128
7.3.2if結(jié)構(gòu) 128
7.3.3cond結(jié)構(gòu) 129
7.3.4case結(jié)構(gòu) 130
7.3.5and結(jié)構(gòu) 130
7.3.6or結(jié)構(gòu) 131
7.3.7遞歸 131
7.3.8循環(huán) 132
7.4FluentRP變量 132
7.4.1創(chuàng)建RP變量 132
7.4.2修改RP變量 133
7.4.3GUI中訪問RP變量 133
7.4.4UDF中訪問RP變量 133
7.4.5保存及加載RP變量 134
第8章Fluent界面元素 135
8.1引例 135
8.2界面布局容器 136
8.2.1對話框 136
8.2.2表格 137
8.3控件 139
8.3.1整數(shù)輸入框 139
8.3.2實數(shù)輸入框及字符串輸入框 140
8.3.3復(fù)選框與單選框 141
8.3.4按鈕 142
8.3.5列表框與下拉框 144
8.4創(chuàng)建菜單 147
8.4.1添加頂級菜單 147
8.4.2添加子菜單 147
8.4.3添加菜單項 147
8.4.4菜單案例 147
第9章Fluent界面開發(fā)實例 149
9.1Y+計算器 149
9.1.1計算方法 150
9.1.2程序代碼 150
9.2湍流參數(shù)計算器 153
9.2.1基本公式 153
9.2.2程序代碼 154
9.3UDF交互 157
9.3.1Scheme代碼 157
9.3.2UDF代碼 159
第3部分流程封裝
第10章Fluent進程封裝 162
10.1Fluent文本操作界面 162
10.1.1基本介紹 162
10.1.2命令縮寫 163
10.1.3命令歷史 164
10.1.4運行Scheme 164
10.2文本提示系統(tǒng) 164
10.2.1數(shù)字 165
10.2.2布爾值 165
10.2.3字符串 165
10.2.4符號 165
10.2.5文件名 166
10.2.6列表 166
10.2.7求值 166
10.2.8系統(tǒng)命令 166
10.2.9文本菜單 167
10.3進程調(diào)用式流程開發(fā) 168
10.3.1進程調(diào)用 168
10.3.2Fluent命令啟動 169
10.3.3準(zhǔn)備TUI 169
10.3.4示例程序 170
10.4ACT流程開發(fā) 172
10.4.1ACT介紹 172
10.4.2ACT的功能概述 173
10.4.3技能需求 174
10.4.4ACT開發(fā)示例 174