24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1706  |  回复: 4

microgrid

新虫 (小有名气)

[求助] udf计算两相流 获得混合区单元体积

两相流计算,包含液相和气相

用DEFINE_SOURCE(liq_src, cell, pri_th, dS, eqn) 定义质量源

Thread *mix_th, *sec_th;
  
  用 mix_th = THREAD_SUPER_THREAD(pri_th);获得 混合区液相指针
  用 sec_th = THREAD_SUB_THREAD(mix_th, 1); 获得 单相控制区气相指针(气相为第二相)

在这种情况下,想要用函数C_VOLUME(c,t)得到cell的体积(cell中包含液体和气体),函数中的t应该用混合区的指针吧?怎么得到啊?

大神指导啊~~感激不尽。

[ Last edited by microgrid on 2013-11-12 at 14:49 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

microgrid

新虫 (小有名气)

有没有人帮帮忙啊~~
2楼2013-11-12 15:40:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fangdian

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
microgrid: 金币+5, ★★★很有帮助, 多谢啦~~ 2013-11-12 19:18:52
t可以为气相或者液相指针,均可。
   判断是否为混合区时(以t为气相指针为例),可以采用类似下面代码出入到你的质量源中:
if(C_VOF(c,t)>0&&C_VOF(c,t)<1)
v_sum=v_sum+C_VOLUME(c,t);//v_sum为混合区体积,源项外之前必须赋初值0
3楼2013-11-12 19:04:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fangdian

木虫 (正式写手)

仅供参考。
4楼2013-11-12 19:04:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

崔婷chanel

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by fangdian at 2013-11-12 19:04:08
t可以为气相或者液相指针,均可。
   判断是否为混合区时(以t为气相指针为例),可以采用类似下面代码出入到你的质量源中:
if(C_VOF(c,t)>0&&C_VOF(c,t)<1)
v_sum=v_sum+C_VOLUME(c,t);//v_sum ...

您好,我搜索有关UDF使用的相关问题的时候发现很多您的足迹。我正在用udf编写泵动量源项,碰上了一些问题,其中有一个也是源项添加区域的体积求和问题。
1.请问您上面回复的体积求和中v_sum需要定义为静态变量吗?(抱歉,我c语言基础很差)。
2.请问如果使用了静态变量是不是就要compiled,如果compiled是不是就电脑本身安装有编译器(Visual Studio)?
3.有没有函数可以判断cell的最大单元数
我编写的文件如下,请指教
#include "udf.h"
#include "mem.h"
#define PTOT 320000
static real Volume_tot;
Volume_tot=0.0;
DEFINE_SOURCE(pump_src, cell, thread, dS, eqn)
{
        real pmom, power,x[ND_ND];
        C_CENTROID(x,cell,thread);
        if((pow(x[1],2)+pow(x[2],2))<=0.03161271212  && 5.68822<x[0]&&x[0]< 6.68821)
        {
                Volume_tot=Volume_tot+C_VOLUME(cell,thread);
                power=PTOT/Volume_tot;
                pmom=power/(C_U(cell,thread));
        }
        return pmom;
}
存在就是合理
5楼2016-03-06 18:25:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 microgrid 的主题更新
信息提示
请填处理意见