CAE软件研发的一些思考

2016-09-03  by:CAE仿真在线  来源:互联网

区别于其他行业的软件开发,CAE软件的研发有其特殊性,这里的CAE软件主要指使用有限元/有限差分/有限体积等数值计算方法进行仿真的软件,其中包含了前处理器,后处理器,求解器以及相关模块,求解领域包括但不仅限于静力,动力,流体,电磁,声,热,光等
中国在数值计算方法很早就有比较突出的成果,以冯康为代表的老一代数学家在有限元理论方面的研究处于世界领先地位,在工程应用方面也取得了相当的成功。只可惜由于种种客观原因的限制(主要是计算机在中国发展的限制以及投入不足),中国的CAE软件没能取得长足的发展。也导致了目前中国CAE软件市场被国外软件一统天下的局面。

长期从事CAE软件的管理研发工作,本文想从几个方面探讨一下CAE软件研发的一些相关话题。
1. 中国有无研发大型通用CAE软件的必要性。
2. 中国自主研发CAE软件的出路是什么
3. CAE软件架构设计
4. CAE软件研发管理
5. CAE软件的核心技术和风险

1. 中国有无研发大型通用CAE软件的必要性。
这是个老生常谈的话题,每逢开各种学术会议,最后总会得出结论:发展国产通用CAE软件是当务之急云云,开完会后不了了之。殊不知通用CAE软件研发涉及到的范围相当广,需要从技术,资金投入,开发周期,人才储备,市场应用,项目支撑等各个方面做好调研。开发一款优秀的通用CAE软件绝不是买个求解器,做一个前处理器,算两个case就能成气候的。Ansys,Nastran,Abaqus 发展了几十年,在研发方面投入巨资,不仅自己做开发,还收购了相当多优秀的CAE公司,将产品应用到无数的实际工程中,一步一个脚印才逐步发展到现在的水平的。
个人以为开发国产通用CAE软件虽然是个美好的愿望,在中国目前的环境下,不切实际(国家连OS研发都不愿意投入,CAE更不用讲了)。退一万步讲,即使能开发出来一个像样的产品出来,结局也能想到:基本上是被国外的产品直接拍死,只能做做科研或者给高校使用。

2. 中国自主研发CAE软件的出路是什么
既然没必要开发大型通用CAE软件,那国产CAE软件研发的出路在哪里呢?
既然通用的道路走不通,那就走专业化的道路。使用CAE软件的目的不外乎两点:优化和验证设计,缩短产品上市周期。在这个过程中,用户最耗时的部分是 几何模型和有限元模型的建立以及模型的优化。如果能针对这个部分做一些专业定制的开发,将会给客户带来很大的价值。试想,对一艘船进行仿真,建立整船的几何到建立有限元模型需要1个月。分析的工况有20个,这些要全部手工建立,仿真结束后要自己生成报告。如果能开发出一款专业的船舶建模软件,用户通过输入参数就能很快建立几何模型,而且可以从模板库直接取船舶的部件,考虑到船舶分析的一些特殊情况,比如大量使用shell和梁,杆单元,能够帮助用户快速建立好有限元模型,同时把常用的工况也做成模板,求解可以调用公认标准求解器,也可以调用针对船舶开发的专业求解器,仿真结束后把结果输出为用户想要的报告格式。可能3天就能完成整个仿真流程。这样可以大大减少用户的工作量。尤其对于精密制造业比如飞机,发动机,芯片等,效率就是王道。

3. CAE软件架构设计
略,以后通过UML图的  状态图  用例图 活动图等来描述一般CAE软件的架构和设计

4. CAE软件研发管理
CAE软件各个功能相对独立,因此很容易模块化,但是集成后各个模块之间耦合度很高。
曾经调试过一个case,仿真出现错误,从求解器开始debug,经过Mesh,FEM模型,CAD模型,最后找到问题的原因是CAD单位问题,也有过从求解器debug开始到CAD再又回来,最终问题定位到Mesh上。
人员配置:
不同于常规软件研发,CAE软件研发对研发人员背景有较高要求,需要理解CAE里很多概念。
对于一款常规的专业CAE软件,参考开发人员配置:
1> 系统架构师(1名)
系架构师主要负责 与应用工程师和客户工程师沟通,进行需求分析,技术选型,概要设计,模块设计,数据结构设计,保证产品按预计进度开发,以及软件仿真流程正确运行。这就要求系统架构师不仅需要有丰富的研发,架构设计经验,而且要对CAE行业有较深刻的理解。
2>前处理开发(2-3名)
前处理开发主要负责 将CAD模型转化为有限元模型,这个过程中主要是对CAD模型(按照各个行业需求,模板等,快速生成CAD模型)和有限元模型(有限元单元自动设置,网格密度优化,边界自动识别设置等)进行编辑,以及可视化。这块的操作需要 应用工程师的大力协助,因为这块是最需要专业知识的地方。也是对图形学要求最多的地方。
3>CAD开发(1名,可选)
CAD通常需要一个CAD内核,主要是建立和编辑几何模型(三维),可以用开源OCC,也可以用商业ACIS/Parasolid,也可以自主开发,看实际需求。
4>GUI/常用功能(若干)
主要是进行各种界面,以及常用功能进行设计和实现,比如工程文件设计,打开,保存。这块实际上和前处理会有很多重叠的地方。
5> 求解器开发人员(1-2名 ,可选)
不多说,核心开发。一名开发求解器,一名辅助做benchmark,也需要应用工程师的支持
画外音:如果有一个厉害的求解器就够了,如LS-Dyna和powerflow,各种前后处理器会围着团团转
6>后处理开发(1名,可选)
辅助:
1>应用工程师
2>客户工程师
应用工程师主要负责和系统架构师,客户工程师沟通,讲实际工程需求和客户需求转化为实际可开发需求。可以这样说:应用工程师是整个团队的军师。

敏捷开发可以应用到CAE的研发管理中,早期做原型时,可以一个月作为一个Sprint,半年左右完成原型,以后逐步缩减Sprint时间,转为迭代开发。敏捷开发的思路比较清晰,做法也很明确,可以根据实际需要进行运用。

5. CAE软件的核心技术和风险
目前自主研发CAE软件并没有太多的技术障碍,通常认为的技术障碍,比如CAD内核,网格,甚至求解器都可以购买商业库。个人认为CAE软件的核心技术在于:给用户提供一整套问题的解决方案,帮助用户快速解决实际工程问题,尤其在通用CAE软件解决不了或者解决起来很费劲的的领域,软件在这个过程甚至可以只起辅助作用。当然从长远来,所有的基础开发都不可避免。
在国外尤其是美国,CAE软件研发的生态环境比较完善,高校,各种科研机构,公司,技术人员都能从CAE研发中获得稳定长期的利益,包括开源产品,这也是为什么CAE软件产品能在国外蓬勃发展。
开发专业CAE软件的目的是提高分析效率,但是如果提高的效率的程度不能中和产品研发的成本,就会存在商业上的风险,这是做需求分析时必须要考虑到的。


开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:CAE软件研发的一些思考 有限元技术培训 有限元仿真理论研究 有限元基础理论公式 能量守恒质量守恒动量守恒一致性方程 有限体积法 什么是有限元 有限元基础知识 有限元软件下载 有限元代做 Fluent、CFX流体分析 HFSS电磁分析 Ansys培训 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:kf@1cae.com