我用的是直接在controldict里加入force的函数来提取力和力矩,力提取的没有问题,但是力矩的量级竟然是10^-20,这明显不对啊。单位我也看了一下是m没有问题。力矩的点取在右下角红色那里。请各位老哥看一下是啥问题,万分感谢!
算例是二维的,这个点是取在正中间位置,所以是不是相互抵消了。我又取在了z轴两个边界处,得出的力矩方向相反,大小一样。所以说这个力矩该怎么求呢
你看看你的网格坐标系定义和CofR是不是合适
另外,这个的用法也可以参考 forces help openfoam 2112
非常感谢您的回复,网格的坐标系与CofR已经检查过了,没有问题。CofR的位置在模型的右下角,z轴的中间。
这个帮助文档刚刚看了一下,发现了一个设置如下:
CofR (0 0 0); // Rotation around centre line of propeller
pitchAxis (0 1 0);
请问这个pitchAxis是什么意思?起到了什么作用。感谢!
pitchAxis是计算力系数时用的。
如果检查没问题的话,我也不知道了,但是我感觉力矩的计算应该得检查好坐标系和相对点,一个和力矩正负(方向)有关,一个和大小(用来确定力臂)
好的好的,非常感谢您的回复,我再检查一下坐标系和相对点
加油加油!有啥进展欢迎分享经验
1 个赞
openfoam里面力矩实在搞不来了,最后用的paraview求得力和力矩,切个片手动把三维模型搞成二维的,再提取压强啥的计算一下就行了。因为force函数与paraview提取变量方法的不同,所以数值大小上还是有一点点的误差,但是在容许范围之内。