freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

fluent里的用戶自定義函數(shù)(編輯修改稿)

2024-08-31 18:52 本頁面
 

【文章內(nèi)容簡介】 CENTROID(x, cell, thread)。 y = x[1]。 w_vel = y*OMEGA。 /* linear wvelocity at the cell */ source = WEIGHT*(w_vel C_WSWIRL(cell,thread))。 dS[eqn] = WEIGHT。 return source。 } 修改 FLUENT變量的函數(shù) ? 函數(shù)由聲明變量 f 作為face_t數(shù)據(jù)類型開始 。 一維數(shù)組 x和變量 y是 real 數(shù)據(jù)類型 。 循環(huán)宏用來在區(qū)域中每個面上循環(huán)以創(chuàng)建型線或數(shù)據(jù)數(shù)組 。 在每個循環(huán)內(nèi) , F_CENTROID為含有 index f的面輸出面質(zhì)心的值 ( 數(shù)組 x) ,index f在由 thread指向的線索上 。 存儲在 x[1]中的y坐標分配給變量 y, 它用于計算 x速度 。 然后這個值分配給 F_PROFILE, 它使用整數(shù) index( 由求解器傳遞個它 ) 來設置內(nèi)存中面上的 x速度值 。 DEFINE_PROFILE(inlet_x_velocity, thread, index) { real x[ND_ND]。 /* this will hold the position vector */ real y。 face_t f。 begin_f_loop(f, thread) { F_CENTROID(x,f,thread)。 y = x[1]。 F_PROFILE(f, thread, index) = 20. y*y/(.0745*.0745)*20.。 } end_f_loop(f, thread) } 寫 /讀 Case或 Data文件 ? 在頂部整數(shù) kount被定義為全局的 ( 由于它被源代碼文件中的所有三個函數(shù)使用 ) 并 初 始 化 為 0 。 名 字 為demo_calc 的 第 一 個 函 數(shù) , 使用DEFINE_ADJUST 宏來定義 。 ? 在 demo_calc中 , kount的值每次迭代后增加因為每次迭代調(diào)用DEFINE_ADJUST一次 。 ? 名字 為 writer 的 第二 個 函數(shù) , 使用DEFINE_RW_FILE宏來定義 。 當保存數(shù)據(jù)文件時 , 它指示 FLUENT寫當前kount值到數(shù)據(jù)文件 。 ? 名字為 reader的第三個函數(shù) , 當讀取數(shù)據(jù)文件時 , 它指示 FLUENT從這個數(shù)據(jù)文件中讀取 kount的值 。 ? 這三個函數(shù)一起工作如下 。 如果你運行 10次迭代計算 ( kount將增加到值為10 ) 并保存這個數(shù)據(jù)文件 , 當前kount(10)的值被寫入你的數(shù)據(jù)文件 。如果你讀這個數(shù)據(jù)返回到 FLUENT并繼續(xù)計算 , kount將以值 10開始隨著每次迭代繼續(xù)增加 。 include int kount = 0。 /* define global variable kount */ DEFINE_ADJUST(demo_calc, domain) { kount++。 printf(kount = %d\n,kount)。 } DEFINE_RW_FILE(writer, fp) { printf(Writing UDF data to data file...\n)。 fprintf(fp, %d,kount)。 /* write out kount to data file */ } DEFINE_RW_FILE(reader, fp) { printf(Reading UDF data from data file...\n)。 fscanf(fp, %d,amp。kount)。 /* read kount from data file */ } DEFINE_ADJUST 功能及其使用方法 功能 ? DEFINE_ADJUST是一個用于調(diào)節(jié)和修改FLUENT變量的通用宏。 ? 可以用 DEFINE_ADJUST來修改流動變量(如:速度,壓力)并計算積分。 ? 用來對某一標量在整個流場上積分,然后在該結(jié)果的基礎上調(diào)節(jié)邊界條件。 ? 在每一步迭代中都可以執(zhí)行用DEFINE_ADJUST定義的宏,并在解輸運方程之前的每一步迭代中調(diào)用它。 DEFINE_ADJUST ( name, d) ? DEFINE_ADJUST有兩個參變量: name和 d。name是你所指定的 UDF的名字。當你的 UDF編譯并連接時,你的 FLUENT圖形用戶界面就會顯示這個名字,此時你就可以選擇它了。 d是FLUENT解算器傳給你的 UDF的變量。 ? D是一個指向區(qū)域的指針,調(diào)節(jié)函數(shù)被應用于這個區(qū)域上。區(qū)域變量提供了存取網(wǎng)格中所有單元和表面的線程。對于多相流,由解算器傳給函數(shù)的區(qū)域指針是混合層區(qū)域指針。 ? DEFINE_ADJUST函數(shù)不返回任何值給解算器。 DEFINE_INIT ? 用 DEFINE_INIT宏來定義一組解的初始值。 ? DEFINE_INIT 完成和修補一樣的功能,只是它以另一種方式 —— UDF來完成。 ? 每一次初始化時 DEFINE_INIT函數(shù)都會被執(zhí)行一次,并在解算器完成默認的初始化之后立即被調(diào)用。因為它是在流場初始化之后被調(diào)用的,所以它最常用于設定流動變量的初值。 DEFINE_INIT ( name, d) ? DEFINE_INIT有兩個參變量: name和 d。 ? name是你所指定的 UDF的名字。當你的UDF編譯并連接時,你的 FLUENT圖形用戶界面就會顯示這個名字,此時你就可以選擇它了。 ? d是 FLUENT解算器傳給你的 UDF的變量所作用的計算區(qū)域 DEFINE_INIT舉例 ? 下面的 UDF名字是my_init_func,它在某一個解中初始化了流動變量。在解過程開始時它被執(zhí)行了一次。它可以作為解釋程序或者編譯后的 UDF在FLUENT中執(zhí)行。 include DEFINE_INIT(my_init_function, domain) { cell_t c。 Thread *t。 real xc[ND_ND]。 /* loop over all cell threads in the domain */ thread_loop_c (t,domain)
點擊復制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1