找回密码
 注册
查看: 2372|回复: 8

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

[复制链接]
发表于 2006-11-15 08:12:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
您好,gallongallon,谢谢您的多次热心帮助,但是现在我的模拟还是进行不下去,我简单介绍一下:
一、
1、我模拟二维空间的气流组织,空气密度为常数,不可压缩,稳态流动,不考虑能量方程,采用K-E方程,SIMPLE算法
2、厂房模型高12米,宽18米,侧墙5。5米处设送风口,直径0。3米,对侧墙4米处设排风口,直径为0。6米。送风速度为6米/秒,排风速度为1。5米/秒。
3、我做模拟时采用的边界条件为:送风口为velocity-inlet,排风口也为velocity-inlet,只是将排风的速度设成负值以此将其变为排风。
二、我的操作如下:
    我采用K-E模型,SIMPLE算法模拟,二阶迎风差分离散方程,但是模拟出来的结果非常离谱,不知错在哪里,请高手指教,现在把我的FLUENT操作列举如下,请指正:
  网格划分:采用50毫米划分为结构网格,二维。
  FLUENT应用过程:
    1、read----case----changfang.msh
    2  grid----check
    3  grid----scale
    4  grid----smooth/swap
    5  define---models---solver  选用segregated 默认设置
    6  define---models---viscous 选用K-Epsilon 保持默认设置
    7  define---operating conditions 打开重力选项 Y方向设-   9.8重力加速度
    8  define---boundary conditions  送风口设为速度入口,速度为6米/秒,I=5(估算),水力直径为30厘米,排风口设为速度入口,速度设为负值-1。5米/秒,水力直径60厘米,I=5(估算)
    9 solve--control--soloution  保持默认设置
   10 solve--initialize  选择从送风口初始化
   11 solve--monitors  保持默认设置
   12 solve--iterate   进行迭代计算
  这是我的全部操作过程,但是最后的模拟结果非常不正确,在厂房的高12米处竟然有2米/秒的风速,我不知错在哪里,请高手给我指点一下,不胜感激,谢谢!!
  后来考虑到出口边界流动充分发展,又将出口边界条件改为gallongallon给我编写的UDF:
/****************************************************/
/*outlet1.c*/
/****************************************************/
#include"udf.h"
DEFINE_PROFILE(outlet_u,thread,position)
{
cell_t c;
face_t f;
Thread *tc;
real U;
begin_f_loop(f,thread)
{
c=F_C0(f,thread);/*获得边界处相邻网格C0的cell index*/
tc=THREAD_T0(thread);/*获得C0的cell thread*/
U=C_U(c,tc);/*获得C0的速度分量U*/
F_PROFILE(f,thread,position)=U;
}
end_f_loop(f,thread)
}
DEFINE_PROFILE(outlet_k,thread,position)
{
cell_t c;
face_t f;
Thread *tc;
real K;
begin_f_loop(f,thread)
{
c=F_C0(f,thread);/*获得边界处相邻网格C0的cell index*/
tc=THREAD_T0(thread);/*获得C0的cell thread*/
K=C_K(c,tc);/*获得C0的湍动能K*/
F_PROFILE(f,thread,position)=K;
}
end_f_loop(f,thread)
}
DEFINE_PROFILE(outlet_d,thread,position)
{
cell_t c;
face_t f;
Thread *tc;
real D;
begin_f_loop(f,thread)
{
c=F_C0(f,thread);/*获得边界处相邻网格C0的cell index*/
tc=THREAD_T0(thread);/*获得C0的cell thread*/
D=C_D(c,tc);/*获得C0的耗散系数D*/
F_PROFILE(f,thread,position)=D;
}
end_f_loop(f,thread)
}
采用这个边界条件时,总是在初始化时提示错误信息:gallongallon您说是“边界条件里不能出现梯度,开始时梯度不存在”,可是我的边界条件怎么设置呢?
后又分别改为pressure_outlet、outflow等出口边界条件模拟,结果全不正确,不知错误在哪里,请教gallongallon:
    您看我的问题出在哪里呢?二维网格结构网格划分一般很难有错误的,是不是主要出在边界条件上了?请指教,我的出口边界该如何设置呢?谢谢!请指教!!!
发表于 2006-11-15 16:31:30 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

我觉得可能有两点问题:
1.排风口速度为什么要用负的呢?定义一下方向不就可以了?
2.湍流参数设置不合理!(我觉得这可能就是原因所在,就我算过的低速算例看,湍流参数设置不合理,有可能导致结果有很大的出入)
 楼主| 发表于 2006-11-15 17:56:12 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

那请问湍流参数要如何确定呢,还是一点一点试呢?[br][br][以下内容由 niuaiming 在 2006年11月15日 05:58pm 时添加] [br]
之所以将速度表示成负的,是因为要把速度入口变成实际的排风口。不知这样对不对?请指教!!
发表于 2006-11-16 09:04:28 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

参数怎样设置我也不是太清楚
速度入口实际上设置方向矢量就行了(具体对不对你看一下流场的矢量图就行了)
发表于 2006-11-16 13:09:57 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

3、我做模拟时采用的边界条件为:送风口为velocity-inlet,排风口也为velocity-inlet,只是将排风的速度设成负值以此将其变为排风。
……………………
用OUTFLOW就可以了,这样的话UDF也没有必要用(前提是你的出口足够长)
我开始以为你用在非OUTFLOW的边界上,这个UDF实际上就是OUTFLOW的定义
同意楼上的说法,因为用了湍流边界,参数不对很容易不正确,可以参考帮助里面K和E的设定
 楼主| 发表于 2006-11-16 18:27:13 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

谢谢gallongallong和马叉虫指点,我用过outflow,但是我的排风口就设在墙上,这样算是满足出口足够长吗?[br][br][以下内容由 niuaiming 在 2006年11月16日 06:30pm 时添加] [br]
真的很感谢各位热心相助,每次总有不再想做的念头,但是看到这么多热心人帮助指点,我又重新鼓足劲头学习,争取能学好FLUENT,也不负大家的帮助与支持,谢谢各位了!谢谢!
发表于 2006-11-16 18:33:08 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

不可以吧,要准确你可以将计算域再扩大
发表于 2006-11-16 18:38:23 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

另充分发展的湍流K和E不是你这样直接算的吧,UDF帮助里有个例子就讲了充分发展的湍流,你可以参考
 楼主| 发表于 2006-11-17 08:37:02 | 显示全部楼层

[求助] 请教gallongallon 高手,您看我的模拟出错在哪里

好,谢谢,我在仔细想想,谢谢gallongallon!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表