|
发表于 2004-3-8 18:05:05
|
显示全部楼层
CFD工程(起点)
[这个贴子最后由supersonic在 2004/03/08 09:29pm 第 1 次编辑]
这个好庞大的工程呀
如果讲求应用,即使现在不实现很多技术,也得考虑扩展性。
关于CGNS,我了解不多,好像只是个专门为CFD设计的一种交换格式吧。如果是这样,我觉得这个并非问题的核心。有必要以它为先行么?
赵兄的那种想法基本上是飞箭的模式。但是不知道这种模式是否很适合基于有限体积法的CFD。
我曾经分析过一个叫AMROC的基于Berg那一套方法的adaptive cartesian mesh软件,觉得设计者的思想不错。他其实是设计了一个AMR算法的C++模板框架,并不大。其中采用一个叫DAGH的C++模板库作为AMR算法的底层库来实现数据管理、并行通讯和网格Box操作,又采用有名的双曲系统fortran 77求解包clawpack作为积分器。当然这两个库都做了适当的修改。这样它的功能分解的非常清晰。我目前在此基础上开发,要加入自己的积分器很方便。所以我觉得这种C++框架+C/Fortran积分器核心的结构很好。
我们都没有搞大东西的经验,要急于做大玩意么?某种意义上说,CFD软件不比操作系统简单。
能否先拿一个典型软件剖析一下?比如DUNS,或者目前开源世界最大的CFD代码Overture? 这个过程也可能比较花时间,搞定一个DUNS估计要几个月,搞定Overture估计就要一年多甚至更长了。而且我觉得这种分析现有代码的工作还是很有必要的,我们飞豹的火控系统软件还是啃以色列的代码弄出来的呢。不过CFD软件开发周期长,大家都得做好短期内是没有成果的,这个恐怕不能急于求成。
|
|