Fluent UDF【12】:常用的數(shù)據(jù)宏

2017-06-11  by:CAE仿真在線  來源:互聯(lián)網(wǎng)

除了前面提到的網(wǎng)格單元數(shù)據(jù)獲取宏、網(wǎng)格面數(shù)據(jù)獲取宏及節(jié)點數(shù)據(jù)獲取宏外,在數(shù)據(jù)獲取方面,還有幾個非常常用的宏。編寫UDF程序時,經(jīng)常與這些宏打交道。這些宏包括:

  • Loookup_Thread

  • THREAD_ID

  • Get_Domain

  • F_PROFILE

  • THREAD_SHADOW

1

獲取指定區(qū)域的Thread

Thread是UDF中一種非常重要的數(shù)據(jù)結(jié)構(gòu),有時常常需要獲取某個邊界的Thread進行其他操作,此時可以利用宏Lookup_Thread實現(xiàn)。

  • 宏描述:Lookup_Thread(d,id)

  • 宏參數(shù):Domain *d, int id

  • 返回值:Thread *t

id值可以從邊界條件面板中獲取得到,如下圖所示。

Fluent UDF【12】:常用的數(shù)據(jù)宏fluent結(jié)果圖片1

獲取某個zone的ID之后,就可以對該區(qū)域進行操作了。下面的例程是獲取ID為1的邊界上各網(wǎng)格面中心節(jié)點坐標。

#include "udf.h" DEFINE_ADJUST(print_f_centroids, domain) { real FC[2]; face_t f; int ID = 1; Thread *thread = Lookup_Thread(domain, ID); begin_f_loop(f, thread) { F_CENTROID(FC,f,thread); printf("x= %f,y= %f", FC[0], FC[1]); } end_f_loop(f,thread) }

2

獲取區(qū)域ID

獲取區(qū)域的ID可以使用宏THREAD_ID來實現(xiàn)。

  • 宏描述:THREAD_ID(t)

  • 宏參數(shù):Thread *t

  • 返回值:返回相應(yīng)Thread的對應(yīng)ID值,int類型

調(diào)用形式:

int zone_id = THREAD_ID(t);

3

獲取區(qū)域指針

獲取區(qū)域指針可以通過宏Get_Domain來實現(xiàn)。

當區(qū)域的指針無法通過宏參數(shù)傳遞進來時,可以使用宏Get_Domain來獲取指定id的區(qū)域的指針,利用DEFINE_ON_DEMAND宏中。

  • 宏描述:Get_Domain(id)

  • 宏參數(shù):int id

  • 返回值:Domain *d

注意:對于單相流,id值為1;對于多相流,id值為大于1的整數(shù)。

多相流中的id值可以在Phase對話框中查看,如下圖所示。

Fluent UDF【12】:常用的數(shù)據(jù)宏fluent結(jié)果圖片2

下面是一個例程:

DEFINE_ON_DEMAND(my_udf) { Domain *mixture_domain; mixture_domain = Get_Domain(1); Domain *subdomain; subdomain = Get_Domain(2); ... }

4

設(shè)置邊界值

設(shè)置邊界值可以利用宏F_PROFILE來實現(xiàn)。

  • 宏描述:F_PROFILE(f,t,i)

  • 宏參數(shù):face_t f, Thread *t, int i

  • 返回值:void,此宏沒有返回值

此宏后兩個參數(shù)通過Fluent傳入,第一個參數(shù)通過循環(huán)宏得到。如下例程:

#include "udf.h"DEFINE_PROFILE(pressure_profile,t,i) { real x[ND_ND]; real y; face_t f; begin_f_loop(f,t) { F_CENTROID(x,f,t); y = x[1]; F_PROFILE(f,t,i) = 1.1e5 - y*y; } end_f_loop(f,t) }

5

獲取影子面的Thread

當一個面存在影子面時,可以利用宏THREAD_SHADOW獲取該面的影子的Thread。

  • 宏描述:THREAD_SHADOW(t)

  • 宏參數(shù):Thread *t

  • 返回值:Thread *t

當宏參數(shù)所對應(yīng)的面沒有影子面時,此宏返回NULL。

Fluent UDF【12】:常用的數(shù)據(jù)宏fluent分析圖片3

Fluent UDF【12】:常用的數(shù)據(jù)宏fluent分析圖片4



開放分享:優(yōu)質(zhì)有限元技術(shù)文章,助你自學(xué)成才

相關(guān)標簽搜索:Fluent UDF【12】:常用的數(shù)據(jù)宏 Fluent培訓(xùn) Fluent流體培訓(xùn) Fluent軟件培訓(xùn) fluent技術(shù)教程 fluent在線視頻教程 fluent資料下載 fluent分析理論 fluent化學(xué)反應(yīng) fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析 

編輯
在線報名:
  • 客服在線請直接聯(lián)系我們的客服,您也可以通過下面的方式進行在線報名,我們會及時給您回復(fù)電話,謝謝!
驗證碼

全國服務(wù)熱線

1358-032-9919

廣州公司:
廣州市環(huán)市中路306號金鷹大廈3800
電話:13580329919
          135-8032-9919
培訓(xùn)QQ咨詢:點擊咨詢 點擊咨詢
項目QQ咨詢:點擊咨詢
email:kf@1cae.com