找回密码
 注册
查看: 3191|回复: 13

CFD商业软件二次开发

[复制链接]
发表于 2011-11-17 18:22:12 | 显示全部楼层 |阅读模式

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

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

x
请问各位达人
现有的商用CFD软件中有没有可以通过二次开发加入自己设计的求解器的。
譬如说,现在我自己设计了一个通量求解器,能不能嵌入到fluent中。
这样,我就可以省去网格处理,边界条件处理,湍流模型等方面的工作,简化算法的测试工作。
发表于 2011-11-18 01:13:35 | 显示全部楼层
估计不行。不过你可以跟像ANSYS商量,也许可以签一个协议,到时候相互支持,一起挣钱。
 楼主| 发表于 2011-11-18 08:32:39 | 显示全部楼层

回复 2# 通流 的帖子

我是觉得一般做CFD算法的人很难将程序写到商业软件那么通用,如果这个办法可行,以后自己设计的算法推广到工程实际应用的周期就可以大大缩短了。
版主提供的建议不错,不过可能需要一些权威人士才行吧!
我这种小菜鸟人家肯定不搭理。
发表于 2011-11-18 11:10:29 | 显示全部楼层
Matlab软件是可以使用S-函数定义自己的方程的,但不能定义求解器,通用的数值求解器好像Fluent、matlab、ANSYS、ADAMS等这些数值计算仿真软件都是一样的,都采用ode45、ode23、ode113、ode15s、ode23s、ode23t、ode23tb等几个通用的求解器,属于当今国际数值计算研究的最新成果,都是速度最快、精度最高的求解器,其中后面4个是求解刚性方程的求解器。
你的目的似乎是要把网格处理、边界条件处理、湍流模型选择等方面的工作集成起来,简化算法的测试工作。我不了解Fluent和udf,但凭我对一个优秀软件的理解,Fluent肯定提供了边界处理、模型选择的函数,我不知道Fluent是否有网格处理函数,Gambit是处理网格的,但不知道Gambit的动态库函数公开了没有。
 楼主| 发表于 2011-11-18 12:04:37 | 显示全部楼层

回复 4# uesoft 的帖子

据我了解,fluent的udf是可以提供自定义的方程,然后用fluent内部求解器来计算。
但是,能否用自己的求解器来替代内部求解器进行求解,这还需要各位经验人士提供相关的信息和解决方案。
例如,自己开发了一个Euler/NS方程的通量计算格式,我们希望通过各种算例来进行测试,其中也包括一些复杂的工程实际问题。如果要自己写程序,那么湍流模型,边界条件,加速收敛的技术,各种迭代算法都得自己写,这岂不是很麻烦,而且也很难做不到现有软件的水平。所以,我觉得这种需求是很有意义的。
虽然现有软件本身的求解器已经很强大,但就算法研究者来说,没有一个已有的成熟的平台(可以是自己开发的模块化程序),算法测试的工作量是相当大的,如果能实现将自己设计的算法直接嵌入到现有软件里面,这样测试工作就可以大为简化。
发表于 2011-11-18 12:06:02 | 显示全部楼层

回复 3# 北羽 的帖子

不一定·。只要你有不错的主意,他们就愿意干。你的真的是好东西吗?
 楼主| 发表于 2011-11-18 12:21:50 | 显示全部楼层

回复 6# 通流 的帖子

哈哈,我并没有说自己东西有多好的意思!
如果能这样做,这对做算法研究的人来说都是一种便利啊!
如果软件本身是模块化的,所有模块又都是开放的,支持用自定义模块来替换内部模块,而软件本身只相当于模块集成的功能。那么,研究者就可以只专注与某一模块了。
 楼主| 发表于 2011-11-18 12:29:46 | 显示全部楼层
其实这也可以拓宽他们软件的市场!
不仅做计算的单位要购买,做算法研究的单位也要购买,这岂不是双赢吗!
发表于 2011-11-18 12:52:23 | 显示全部楼层
原帖由 北羽 于 2011-11-18 04:21 发表
哈哈,我并没有说自己东西有多好的意思!
如果能这样做,这对做算法研究的人来说都是一种便利啊!
如果软件本身是模块化的,所有模块又都是开放的,支持用自定义模块来替换内部模块,而软件本身只相当于模块集成的 ...


算法研究还是基于开源的求解器吧,比如 OpenFOAM 之类
发表于 2011-11-18 13:51:52 | 显示全部楼层

回复 8# 北羽 的帖子

我想通流没有嘲笑的意思,他是在让你继续分析自己的思路是否存在隐患。
我也赞成你基于Fluent通用平台开发的思想。我们开发基于AutoCAD的三维工厂设计软件AutoPDMS时,一些开发人员不想利用ACAD现成的类库ObjectARX,想另起炉灶自己用OpenGL或D3D写一个图形平台,遭到我的坚决反对。但要完全理解ObjectARX类库,需要很高的智商和长期的投入和资金,无数的BUG和臃肿的结构使AutoPDMS避免不了经常死机的缺陷,这成为不少软件开发项目的宿命。
至于开源求解器,要完全看懂他的思路,也不是一件简单的事。你想想,OpenFOAM自己的开发者都懒得看它了,谁还愿意继续去看呢?
 楼主| 发表于 2011-11-18 17:50:35 | 显示全部楼层

回复 10# uesoft 的帖子

确实如你所说,已有的模块可能由于过多考虑兼容性之后,反而使其变得臃肿,最终降低软件的整体性能和效率。但是基于已有平台进行开发应该是以后软件开发的一种高效模式。
发表于 2011-11-18 17:53:33 | 显示全部楼层

回复 11# 北羽 的帖子

基于已有平台进行开发应该是以后软件开发的一种高效模式。
-------
赞成。
发表于 2011-11-18 23:58:15 | 显示全部楼层
如果让大家这么干,虽然暂时ANSYS多卖了几个license。不过如果你开发的是一个有前途的东西,当你搞成了,ANSYS就没法从你那里赚钱了。只有在保证他们的利益的情况下,这个才能做。如果ANSYS认为你做的有前途,他可以免费给你提供license。我有个朋友就是这么做的。
 楼主| 发表于 2011-11-19 18:06:41 | 显示全部楼层

回复 13# 通流 的帖子

“只有在保证他们的利益的情况下,这个才能做。”
分析得很在理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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