参数波动跟监测点位置有关,放在分离区跟放在直管中间是不一样的,另外,感觉稳态计算是监测面上的通量吧,通量守恒就可以认为收敛了吧。
西湖冷月
帖子
-
-
-
很多年不用UDF了,这段代码给看的一头雾水。
这个C_CENTROID(v, c, t)后边咋没用了,见过NV_DOT、ND_DOT、NVD_DOT,但貌似没有C_DOT_V这个宏?可以再查查UDF手册看看,具体我也忘了。 -
@疯狂记笔记的小白 周期性边界吗?
-
@桑葚熟了 这个问题是不是可以从源头上想,滑移网格是为了解决什么问题提出来的,提出来之后怎么实施的,这个过程其实包含了你提到的疑惑。
又想不用动网格变形网格,又想实现运动,那就把动的那一部分网格挖出来,不变形、整体运动,不动的保留网格,两个之间滑移运动。这有个前提,这种物体运动不需要网格变形,比如叶轮旋转,而且运动带来的影响基本局限于动的那一部分网格内,这就需要你自己判断究竟动的网格范围有多大。在这个基础上通过坐标变换实现滑移运动网格数据与不动的网格上绝对坐标系保持一致。
其次,是滑移运动这部分网格跟不动的网格交界位置怎么传递数据的问题,这也有相关的算法保证。 -
@胡同小巷 时间步长和时步数量是针对瞬态计算而言,一个时间步长内需要把控制方程迭代收敛,所以才有最大迭代步数问题,是指在一个瞬态迭代步内,要通过类似稳态的迭代过程把计算迭代收敛,然后整个网格或流动进入下一个瞬态时间步。比如动网格或滑移网格流动问题,一个瞬态时间步内迭代时,网格状态不动,在这个状态下计算最多20步把流动算收敛(你也可以更改这个数字),然后网格变形或旋转等等,进入下一个瞬态时间步状态,在这个状态下重新开始20步迭代计算收敛过程,依次类推。
回到你的设置,你瞬态时间步设置10000步,时间步长设置0.000001s,这都是针对瞬态过程而言,确实总的流动计算物理时长还不到1s,就是你只能看到这个流动不到1s的过程。跟每步的20次关系不大,这个每步迭代20次只是保证每一步的收敛性,总的流动物理时长就是时步数量和时间步长的乘积。
题外话,不太懂你算的这个问题是什么,但感觉流动分布很简单,时间步长这么小没必要。时间步长的确定跟你流动的实际物理复杂程度和网格有关,达到一定分辨率就行了。 -
@ejector 这也差的太多了,不是界面清晰不清晰的问题,怀疑两相模型用的不对
-
@kennyadapter 前面的大神们说的对,就是O-block的大小不合适,再就是可以在圆中间横着、竖着各切一刀,多出来的四个顶点沿横轴、纵轴往外稍微移动一下,调到合适的位置能改善一下质量。
如果边界离圆面太近不能调整,那就是计算域选的不合适。 -
@深蓝 除了对编程有一点要求外,就是受限于fluent本身开放的接口,UDF程序没啥限制的。题外话,发帖时间为什么比北京时间延后这么多?穿越了?还是在日本、澳大利亚,新西兰。。。呀,哈哈
-
@bestucan 不太懂这个,就是用google浏览器打开网页,之前都没问题,最近突然出现这种打不开的情况。
-
这几天突然开始出现github和gmail只能随机打开一个的情况,要么github网页加载正常了,gmail打不开了,要么就是突然gmail又能打开了,github加载不出来了。代理出现问题,如图。
关键是,github登录的验证邮箱留的是gmail的号,这俩躲猫猫让我情何以堪??网上能查到的方法,修改“Hos..”文件,助手,DNS,注册表,驱动,能试的都试了,就是解决不了。莫非是外部原因??脑壳疼!!
-
貌似是UDF并行的问题,提示中说mpt_read错误,没有发现这样的文件或者字典,是不是C++安装不完整之类造成的。
-
感觉这个问题是计算流体力学本身不同方向的割裂造成的,流体力学可以不十分懂算法和底层的方程原理也能把流动算出来,做算法的可以不用管具体流动应用场景,直管把方程解出来。但其实这两者是有桥梁的,粘性流体力学基础之类的相对底层一点的东西才是涵盖算法和工程的,算是个纲领。
-
小米14 Pro,8G内存,跑100万以内网格勉强吭哧瘪肚能整,再多就呼呼叫了,也就敲敲字刷刷剧可以,干计算还得台式机。
-
尺度太小的话,连续介质假设还成不成立?还能不能用有限体积法求解呢?
-
@wseric 嗯嗯,fluent自带后处理是可以做的,但出的图不太好看,tecplot出图漂亮一点。目前,基本可以解决这个问题,就是速度三角形换算问题,公式推导出来编公式计算就行。
-
@Leo_Chou 楼上说的对,画网格的时候设置周期,只是为了简化具有周期性特征的几何域网格划分难度,在ICEM设置周期最后要生成周期网格才用,上下左右都周期感觉是几何简化的问题,至于计算时候的周期,保证周期边界几何一致,网格节点一致就行。
-
是否是参考压力的设置问题?还有就是fluent的进口压力是总压,一般实验采集的是静压或叫表压,这两个之间差着一个动压,个人浅见,不太懂具体问题。
-
就图中而言,可以有两种方法:
(1)组装网格,1、2、3、4之间用interface对接,这时候1、2、3、4各部分是分别划网格,然后组装,需要注意各个边界命名不要重复以免产生冲突;
(2)分域,图中1、2、3、4之间的分割线需要补出来,对分割线也要建立part,并分别命名,同时,把最左边、最右边和最上边的边界线切断,切断的线也分别命名,然后用1、2、3、4之间的分割线把整个surface给切成4部分,对这4个面也分别命名,4个surface就成了不同的body了,这时候1、2、3、4之间的分割线是共用的,接下来划网格,完了这4部分就是独立的网格,计算时将1、2、3、4之间的分割线(前边已经命名)类型改为interior即可。 -
ICEM也是可以的,但个人觉得可能不叫分块,应该叫分域,这几个流动域的分割线(分割面)也要建模出来,单独命名后边要用,等于把流动域分割成4个单独的区域,然后分别命名各个流动域(二维的为面)为不同的part,划分网格就行了,出来各个域是单独的,此时域之间的线(面)在计算的时候把类型改为interior就行了。
-
你这个是三维的LES单相流模拟,应该不难分析,常见的不收敛的原因有很多,上面大神们说的时间步长、网格质量、松弛因子都是很不错也很常见的调试首选项,还有就是边界类型也挺关键,再就是几何域合不合适,上下游延伸段够不够,比如存在很狭小的流动域之类的、动网格更新策略,都可以作为改进收敛性的切入点。
-
@paopaoai11 有限体积法求解过程有很多假设,最基本的网格假设是均匀正交棋盘形,这也是最简单的情形,比如陶文铨老师的《数值传热学》、王福军老师的《计算流体动力学分析》推导基本的流场数值计算时,就是用这种简单情况推导,网格界面处的值又是通过线性插值插出来的,误差直接跟网格尺度和节点位置相关,同时流动不一定都沿着网格方向,尤其是压力梯度等变量,这可能导致不合理的压力波等问题,然后就有了交错网格、同位网格等等发展,但这仍然很简单,对实际流动仍然不够,后边又发展出非结构网格,这时候控制方程的离散,不但跟网格节点位置、网格尺度相关,还跟网格界面外法线矢量方向有关,流动方程的误差就跟计算各种矢量角度产生了关联,但计算机有截断误差之类的影响,最后反映到流动计算上,这些网格面之间的角度就是所谓的正交性、膨胀比之类的,就直接影响计算精度。
-
@allvic 是不是可以在边界层内设监测点,得到频率分布,与T-S波的频率进行相关性验证呢?
-
首先,从物理上讲,层流和湍流应该都是有边界层的,湍流有边界层到完全湍流区的过渡,即转捩。
DNS是把湍流能谱涵盖完整了,也就是从大尺度到耗散尺度都硬算出来,当然也就包括说不清道不明的转捩区。
纯正的LES(WMLES之类的先不说)应该也是可以算出转捩的,这个比较复杂,涉及网格尺度、时间尺度、来流条件、LES模型本身等。
其次就是RANS和混合RANS/LES,单靠RANS或者近壁面RANS的混合方法一般是算不出转捩的,上面有人说了,RANS是基于各向同性假设,这个假设有先天缺陷,并且对转捩这种时间空间分辨率要求很高的流动一般是排斥的。
但目前专门发展有单方程、双方程的转捩模型,比如Menter他们,北航的柳老师、清华的符老师等等都做过这方面工作,通过间歇因子或者动量厚度雷诺数之类的经验性输运方程来识别转捩,告诉你这里开始转捩了,那里转捩结束变成湍流了,但一般得不到转捩流动本身的实际特征,比如条带结构之类的转捩自身流动属性。
回到你这个问题本身,雾化的不稳定性过程严格来说跟转捩还有区别,湍流也是脉动的、不稳定的,这是一个K-H波动或者R-T波动之类的扰动发展问题,液滴破碎跟表面张力演变过程等等很多复杂因素有关,比如瑞利模型啥的描述这个过程的时候也可以不提转捩,当然转捩本身也跟这些小扰动波动发展有关,这一块深入研究比较复杂,几句话几段话我说不清。
我个人的一点浅见理解,不一定正确,欢迎有懂行的大佬拍砖指正。 -
不懂就问,不是先关机、断电、再拔硬盘吗,难不成我一直操作的不对
-
@云水禅心 这应该是个算法相关的问题,比如SIMPLE系列的算法,需要利用连续性方程导出压力修正值方程,因为压力场是假定的、不精确的,得到的速度场一般也不满足连续性方程,然后就是修正,根据修正后的压力场计算新的速度场,再检查是否满足速度场收敛性,反复进行,计算过程中连续性方程的流场耦合项是忽略了速度修正值的,简化了很多,这样的话,前面的压力修正方程并不能很准确的对应流场变化,结果就是连续性方程收敛慢,但不是不收敛,如果趋势上是收敛的,收敛的量级不够,只能是迭代步数还不够,一直到最后残差完全不变才能说是完全收敛了。并且所谓的连续性方程收敛是只质量守恒,还得看动量方程收敛性,不可压的可以在进出口面监测质量差值,到一定程度就可以认为是收敛了。
-
按照传统CFD的点到为止你已经输了,如果这一点就开始计算,一迭代就花里胡哨了,放在后处理软件里没有打开,你也承认,我先算出来的。你不知道我结果放在后处理软件里,你承认我先算出来的,啊,我关机的时间不算了,你突然开始编程写代码,我大意了啊,没有闪,哎...你这代码晃到了我眼睛,啊,左眼,biu了一下,但没关系啊!你也说,啊,你朋友圈也说了,两分多钟以后,当时流眼泪了,蒙着脸,我说停停。然后两分多钟以后,两分多钟以后嗳就好了,我说老同志你不讲算德你不懂,你说牛老师对不起,对不起,我不懂规矩。啊,我是...你说你是乱写的,你可不是乱写的啊,类库,边界,头文件,训练有素,后来你说你写过三四年C语言,啊,看来是有备而来!这个老同志不讲算德,来骗!来偷袭!我二十出头的小毛孩儿,这好吗?这不好,我劝这位老同志耗子尾汁,好好反思,以后不要再犯这样的聪明,大聪明啊,CFD要以收敛为贵,要讲算德,不要搞窝里斗,谢谢朋友们!
-
@天文 首先需要知道UDF函数命名是有一定规则的,比如C_基本上就是对单元Cell进行操作,F_就是对面Face进行操作,NV_是对矢量进行计算,等等。
因此,回到这一行代码,从NV_可以知道这是一个矢量操作,而_DS通常是Defined Scalar的缩写,是个标量定义式,两个合起来应该就是进行矢量和标量之间的运算,至于具体是什么运算,要看你用在什么地方,实现什么功能。 -
@xjwang 物理上这个问题是可以实现的,数值上应该就是怎么简化近似的问题。
-
@line 之前有点思路了,也大概是按照速度三角形进行换算,没太深入去想没推导公式,可以试试,谢谢!
-
@bestucan 这也是个办法,不过paraview不怎么熟悉,我再看看
-
找了一圈没发现后处理的专门板块,由于是fluent计算的结果,所以发到这儿吧。问题就是,fluent计算叶轮流场后,显示不出来相对速度,用tecplot打开也没有相对速度,但对于叶轮机械而言,相对速度又很重要,有前辈解决了该问题的,可否指教一下如何去实现tecplot中得到相对速度。初步的想法是,因为叶轮转速一定,可以在tecplot中新建一个旋转速度,得到叶轮内圆周速度分布,但如何把圆周速度和绝对速度矢量相加得到相对速度呢?
-
@东岳 相同的品味啊,曾经作为头像用了一年半
-
@leilei 抛开物理流动问题本身谈湍流模型是意义不大的,要看你计算什么流动,任何一个湍流模型不是什么流动都能拿来就用的,如果两个模型适用场合就不同,比如它就不是干大分离的活的,你非要让它干,它收敛困难也正常,这时候你谈它资源消耗和收敛性就没什么意义。
-
@Juanyong Origin出这种图应该很容易吧,哈哈
-
@zousiyu ICEM里边网格生成完之后,在View菜单里有个Save Picture选项,进去之后,输出格式Fomat选择PS能够矢量化处理的PostScript,下面选择EPS就行了,然后在PS里进行处理后输出矢量图,当然也可以直接选择TIF矢量图格式输出。
-
@低碳生活 这个可能是跟UDF程序中用到了循环查找网格节点或者单元的命令有关,结构网格和非结构网格对节点编号规则应该是不同的,很久之前做过LES修改SGS的UDF,但最后也没实现,抱歉我也只知道个大概,你可以看看网上有没有关于非结构网格专门研究的论文或者帖子。
-
@东岳 原来高手是这么思考问题的,厉害厉害,学到了,哈哈!
-
看提示信息说的是浮点数溢出,没遇到过这种错误,期待UDF大佬现身说法
-
其实这些方法都是差不多的,用一个就行了,包括Liutex方法,无非就是把Q方法的旋转与剪切的差值变成比值,代码不难实现。
-
是不是也要规定一下回复的内容,不排除有水回复赚C的可能,这样的话发帖是不是可以少扣一点,然后比较经典的精华贴是不是可以再补贴一下
-
会不会是安装破解出问题了,或者电脑显卡不太够?或者改一下背景颜色为纯白试试?
-
@yxg2018 嗯嗯,这个是可以的,借这个平台说一下,在“File”菜单下倒数第四个有个“Preferences”,里边的General选项中,将“Default Format for I/O”默认的“CFF”改为“Legacy”即可输出之前版本默认的.cas和.dat格式。
如果有Tecplot批量处理非稳态计算结果,又对其.h5格式不熟悉可以选择将fluent输出格式改回原来的。 -
新版的fluent 2020保存的数据格式变成了.cas.h5和.dat.h5,有哪位前辈对这种数据格式比较熟悉的吗?
用tecplot 360导入的时候,数据格式选择.H5格式,但出现的选择框把人搞蒙了,咋选貌似都不对,有懂行的还望不吝赐教!!
-
@hhj0219 这个sampling interval是采样间隔,在ANSYS Fluent Users Guide中的LES-Specific Solution Strategies部分有介绍,采用也是按照时间步来的。
另外,如果要是分析相干结构,貌似没啥好方法能减少数据存储量,我见过一个算燃气轮机用LES的,总时长3s,数据3个TB多,就这还嫌算的糙。确实如果哪位同仁有经验心得分享分享 -
@hhj0219 在开始计算之前,在fluent的计算界面下面有时均化统计的选项,可以设定想要的时均统计方法和结果(不同于自动保存的设定方案),计算结束后在后处理的时候就会有时均量,不知道这样行不行?
-
@东岳 别人提了一部分,自己改了一部分,推导还没完全搞定,大致思路是有了,就是万水千山走不动啊
-
定义了一个新的LES亚格子应力模型,其中有部分改进涉及到滤波尺度,主要的:在原本的Smagorinsky模型中滤波尺度(网格在x y z方向间距乘积的1/3次方)的基础上,修改为(1)计算单位涡矢量与网格单元每一个顶点与网格体中心点之间的矢量的叉乘;(2)查询并确定上一步中得到的叉乘矢量之间相减的模的最大值;(3)对上一步中得到的最大值分别与网格在x y z方向的间距进行加权平均(有表达式),引入局部速度梯度表达滤波尺度;
想请教各位前辈,在fluent中用UDF进行修改的话,这三步分别需要哪些宏命令,UDF基本思路大概是什么,实施的时候需要对网格节点编码有什么特殊要求吗(例如,是否需要用到查询结构化网格节点编码结果的操作,fluent内部网格节点编码应该是非结构化的)?
谢谢大家,恳请高手不吝赐教!! -
这下清楚了,以前总看到quasi-DNS没搞懂,原来是有限体积法DNS,那还有个疑问:有限体积法网格划分到DNS级别,不开湍流模型(用层流模型,即粘性为分子粘性),计算的时候是不是就是所谓quasi-DNS了呢?
-
@will214 思路是对的,不过我试了tecplot输出点的数据操作,打开单独一个data文件没办法输出某个点的数据,而同时打开10个以上data文件可以利用探针时间序列输出某个点数据,但这时候宏循环不好写,谢谢你的建议,我再研究研究。
有关计算收敛的问题
时间步长对连续性方程的影响
求助:在复现一篇论文时编写的附加动量源方程编译不通过
Fluent大涡模拟将一个计算域的出口作为另一个计算域的入口条件
滑移网格
fluent中的计算设置参数不太理解
Star-ccm两相流仿真
关于用ICEM画圆柱网格平滑过度问题
关于Fluent UDF有哪些明显的局限性?
github与Gmail这俩成了冤家咋整?
github与Gmail这俩成了冤家咋整?
UDF源码报错
学习各种算法的用处在哪
CFDer,你们的工作用笔记本电脑是哪款?
Fluent 流体域中模型细缝怎么处理?
Tecplot处理叶轮内部相对速度
ICEM全周期性网格(full periodic boundary)怎么实现
高压阀门模拟
icem非结构网格如何划分block
icem非结构网格如何划分block
Fluent连续性方程不收敛
为什么网格质量会影响收敛?
请问层流边界层不稳定性和TS波不稳定性的频率如何求解?
湍流模型计算层流转变为湍流
如何在linux中卸载移动硬盘?
连续性方程不收敛怎么办
我大意了啊,没有闪
UDF编程求助,NV_DS是什么函数
LES定义入口速度的问题(DSRFG方法)
Tecplot处理叶轮内部相对速度
Tecplot处理叶轮内部相对速度
Tecplot处理叶轮内部相对速度
一个照片
湍流模型问题请教:
k-omega 模型的网格无关性验证
分享Matlab读取Fluent数据代码
分享Matlab读取Fluent数据代码
ansys 2020学生版
求助UDF并行计算的问题
请教:三维涡量识别方法
C币运行机制测试
CFD-post 导入dat文件出错
Fluent 2020数据导入tecplot 360
Fluent 2020数据导入tecplot 360
如何使用UDF修改LES模型中的滤波尺度?
如何使用UDF修改LES模型中的滤波尺度?
如何使用UDF修改LES模型中的滤波尺度?
如何使用UDF修改LES模型中的滤波尺度?
小白求助,一直很疑惑,DNS和层流模型到底什么区别呢?
Fluent瞬态计算结果完成后,如何提取某点流动参数?