作者:朱淑强来源:误入CAE的程序员微信公众号(itincae)文末试看《轮胎建模仿真与模态轮胎的生成》课程


所谓的有限元软件的二次开发工作,绝大部分指的是前后处理的二次开发,基本不涉及求解器的开发。二次开发是现代企业提高工作效率,规范操作流程,确保仿真精度的一项重要的工作。既然是二次开发,就是需求分析,代码编写,界面设计以及最后调试使用等等一系列的工作,所以要想做好二次开发,代码非常重要。优秀的代码能力,能让二次开发灵活柔性,容易使用,但达到这个并不容易。

CAE软件的二次开发针对的是具有相当工程经验的仿真工程师,仿真工具涉及到复杂的理论基础和工程经验,二次开发的目的和作用也严重依赖企业的工作流程,所以其真正的核心并不在代码。

01

CAE软件二次开发的核心在于流程

一个成熟的企业,其各项工作也必然是流程化和规范化的,具体到仿真工作也是一样。以CAE的前处理来看,大致包含以下几个工作:

  • 有限元网格划分
  • 材料属性的赋予
  • 部件连接与装配
  • 仿真工况的设置
  • 提交计算

二次开发的目的,就是减少重复繁琐的工作内容,让程序自动执行,提高工作效率减少人工错误的产生。要想达到二次开发,必须对工作方法和流程有一定的企业规范。拿材料属性的的自动赋予举例,很多公司都用tk/tcl语言进行二次开发,但首先程序必须识别该部件是什么材料,是solid还是pshell,厚度是多少,另外零件号也必须标明以区分不同的部件。而这就需要企业对部件的命名有一个规范,否则,二次开发就无从谈起,基本不可能实现。

流程越详细,细节规范的越清晰明了,二次开发的可能性也就越大。企业的前后处理均使用二次开发的程序来规范,工作质量和人员效率也就越高。

02

CAE软件二次开发的核心在于经验

二次开发的价值不单单局限在提高工作效率,诚然,提高工作效率是二次开发自带属性,但把工程师的个人经验融合到二次开发的工具中,让所有工程师的工作做法,工程经验通过程序的方法固定下来,就实现了工作经验的升华。工程经验的东西比较主观,每个人可能都不一样,但大家达成通识的工程经验就是可以固定沉淀下来的东西,而这个东西最后通过二次开发的程序固定下来,带不走也丢不掉,就是一个企业的核心竞争力。

03

CAE软件二次开发的核心在于人才

其实公司的竞争大体就是人才的竞争,所以这里我再要提一下。CAE软件的二次开发其实是一个跨学科的工种,需要的开发人员素质有:

  • 掌握基本的有限元理论
  • 相当的实际工程经验
  • 优秀的代码能力

通俗话来讲,这个人既要懂仿真,也要会写程序,最好能有较多工程经验。我也看到很多企业,有专门的软件开发团队,为其他部门需要二次开发的提供技术支持,但这样其中的沟通成本极高。软件工程师不一定能真正理解仿真工程师的需求,仿真工程师也不懂软件开发的条条框框,最后开发的软件贴近不了实际应用,浪费了太多的资源。另外,一个好的软件应该是bug少,这一方面依赖于工程师的代码能力,全面的逻辑思维能力,也依赖于对仿真流程的了解和工程经验的积累。

作者课程推荐

本课程将完整的培训从轮胎CAD数据到轮胎模态仿真,包括自由模态仿真,刚度仿真,印痕仿真,接地静止的模态仿真,接地滚动模态仿真,三种在状态:自由,接地静止和接地滚动的传涵仿真,以及最后模态轮胎的生成和验证。以实际操作为主,适当的介绍一些基本的理论,让学员零基础也能完成整个轮胎的建模与仿真。

 往期热文推荐 

Matlab之外,还有哪些工业软件是被美国卡得死死的

仿真与实验对比的不是数据,是人

我曾经供职的那家新能源汽车公司倒闭了

Abaqus能做什么?从隐翅虫到人造卫星

通俗易懂:非线性与线性的区别是什么?

点击阅读原文,试看轮胎模态课!

vrml行走和静止的人代码_CAE二次开发的核心不是代码相关推荐

  1. PHP+MySql的网络验证源码开源纯代码可二次开发

    PHP+MySql的网络验证源码开源纯代码可二次开发 :99415656994962582靓仔担当有决心

  2. 团队代码规范java,java 开发,适用于团队的代码规范及某些约定

    包含 api 开发原则.代码风格.mapper 扩展等. api 开发总则遵循单一职责原则,一个类只做一件(类)事. 数据库表与业务类是 1:N 的关系. 简单业务表建议只有一个业务类,复杂业务表,建 ...

  3. 逐浪CMS2 x3.8新功能:定时执行C#代码让二次开发虎虎添翼

    关于本功能的简介: <隐藏简介 详细说明 众所周知,由于Zoomla!逐浪CMS2 x3.8是基于MVC架构,不仅性能卓越,同时也带来了很多全新的开发机制. 本文介绍最新功能之一:定时执行C#代 ...

  4. ObjectARX2010二次开发之 --- DXF转G代码(1)

    近期计划用ObjectARX2010开发一个DXF转G代码插件,计划已开始.在此记录每天编程用到的关键函数.今日用到的函数如下: 以下英文解释默认是参考ObjectARX for AutoCAD201 ...

  5. android 浮窗示例代码,Android 浮窗开发之窗口层级(示例代码)

    很多人都知道如何去实现一个简单的浮窗,但是却很少有人去深入的研究背后的流程机制,由于项目中浮窗交互比较复杂,遇到了些坑查看了很多资料,故总结浮窗涉及到的知识点: 窗口层级关系(浮窗是如何"浮 ...

  6. android 用代码模拟滑动,Android开发之使用150行代码实现滑动返回效果

    今天带大家实现滑动返回效果.,具体内容如下所示: 先看看效果图: 因为没有具体内容,也没有简书的图片资源,所以稍微简陋了点. 但是依然不妨碍我们的效果展示~ OK,接下来惯例,通过阅读本文你能学习到: ...

  7. 计算机软件二次开发是否侵权,软件著作权的共有权人能否进行二次开发

    著作权人,即著作权权利义务的承受者,又称著作权主体. 著作权人包括: (一)作者,完成作品的人. (二)其他依照本法享有著作权的公民.法人或者其他组织.即未参加作品创作而承受著作权的公民.法人和其他组 ...

  8. CAD .NET 二次开发 画一条直线代码

    可以使用 .NET 中的 System.Drawing 命名空间来绘制图形. 以下是在 .NET 中绘制一条直线的示例代码: using System.Drawing;// 创建画板 Bitmap b ...

  9. android 代码打开权限,android开发权限询问的示例代码

    现在基于信息安全问题,特别是版本是23以上权限越严格. 特别是拍照,读,写权限 一般权限允许过,下次就不用询问了的,所以很多应用都喜欢在首页或者启动页直接询问,不允许的就用不了1.下面给出封装好的类, ...

最新文章

  1. jQuery与CSS3的选择器
  2. 安装Docker:解决container-selinux = 2.9问题
  3. 设计模式(八): 从“小弟”中来类比外观模式(Facade Pattern)
  4. Linux 服务器如何修改主机名
  5. pythn3随笔-enumerate()
  6. 如何解决JavaScript中0.1+0.2不等于0.3
  7. 适用于ActiveMQ 5.9的Apache Camel Broker组件
  8. H5 水球加载动画 - canvas应用篇
  9. kcf算法中cos_window是什么意思_知网/维普查重系统算法介绍(史上最详细)
  10. python正则替换查询_使用Python中的正则表达式进行搜索和替换
  11. 小米6android版本更新,小米6正式迎来了安卓9.0稳定版升级,一代神机继续创造辉煌...
  12. Atitit.月度计划日程表 每月流程表
  13. WEB安全——文件上传
  14. Photoshop定义画笔选区为空的原因
  15. BeanNotOfRequiredTypeException,Bean named ‘xx‘ is excepted to be of type ‘xx‘ but was ‘$Proxy30 ‘
  16. 电脑常用的快捷键大全分享。
  17. Ubuntu 10.04 HP LaserJet 无法打印 **** Unable to open the initial device, quitting 错误
  18. capsule系列之Dynamic Routing Between Capsules
  19. 黑群晖vmm专业版_群晖的ABB应用不错,但必须吐槽群晖 VMM功能,让你看看就是不让你好好用!!!...
  20. 《用户体验要素》笔记

热门文章

  1. #敏捷个人# 每日认识101(15):成为一个有执行力的人
  2. chrome 浏览器的插件权限有多大?
  3. iPhone开发教程 UI基础课程(58课时)
  4. 移动webAPP前端开发技巧汇总
  5. PAT1021 Deepest Root
  6. android UI设计属性中英对照表(未修订)
  7. Mozilla Firefox,去广告插件
  8. 子组件调用父组件方法
  9. 2018-10-05学习笔记
  10. sklearn学习笔记之简单线性回归