按关键词阅读: 软件 算法 编程 matlab
文章图片
文章图片
文章图片
文章图片
某些软件的开发 , 确实似乎挺简单 , 只需要一点编程基础就可以 , 就像手机端日新月异的众多APP 。 然而 , 工程软件不是手机APP , 它不仅仅需要编程能力 , 还需要工程知识 , 需要核心算法 , 更需要充足的经费支持 。 后人追前人相对容易 , 但是工程软件想要达到目前流行商用软件的高度 , 没有十年是不可能的 。
哈工大的MATLAB事件 , 让很多人都知道了这个软件 。 但其实 , 在工程软件里 , Matlab算较为简单的一类 , 实际上它跟C , 跟其他开源的语言类似 。 甚至可以说 , Matlab是一种语言 , 一种编程语言 。 Matlab之所以能在工程软件中占有一席之地 , 是因为其代码库 , 全世界众多的学者 , 针对某些算法 , 编写了程序 , 供全世界免费使用 。 某些代码特别好的 , Matlab公司就会把它做成build-in代码 。
Matlab就是偏计算类的 , 同类型的还有Mapple , Mathematics等等 , 通过这些偏计算类的软件 , 可以用来实现公式的推导 , 新算法的实现等等 。 这类偏计算类的软件 , 开发难度是最低的 , 有一定的编程能力 , 就可以开发出来 。 除此之外 , 工程软件 , 还有画图类(CAD) , 就像题主提到的solidworks , 同类型的还有著名的catia、autocad等等 。 这类软件 , 主要是图形显示方面的操作 。 这部分CAD软件的开发 , 难度要稍微提高一点 , 这里面涉及到了计算机图形学的内容 , 除了编程能力之外 , 还需要相当扎实的相关专业知识 。 当年我学《计算机图形学》的时候 , 用C语言编写曲线 , 也费了老大的劲了 。
如果说 , 前面两类软件 , 一类是底层的计算 , 一类是图形的显示 , 那么第三类就是真正的工程计算 。 这一类软件非常众多 , 不同的行业都不尽相同 。 在机械相关行业 , 有限元软件就是典型的工程计算软件 。 它不仅仅要求底层的代码编写 , 中间的图形显示 , 最重要的是工程计算的算法 , 这部分内容 , 没有学过力学是完全不可能搞出来的 。 算法是有限元软件的核心:达索旗下的Abaqus有限元软件为何能够起步慢但是发展快 , 根源就在非线性的计算能力是其他同类有限元软件不可能达到的 。
目前商用工程软件的高度——以有限元软件为例 , 有限元最早是NASA为了航空航天开发出来的一套软件 , 通过这套软件 , 可以设计出更加轻便但是足够结实的飞机和火箭 。 随着科技的不断进步 , 早期的那种纯粹的结构分析 , 早已经无法满足现在的研发能力 。 现在的有限元软件 , 除了传统的静力学分析之外 , 还有模态分析 , 随机振动分析等等 。 如果说这些分析也仅仅都是纯力学分析 , 那么考虑电磁场、温度场等其他载荷对结构的影响就更加复杂了 , 算法实现的难度是几何级别的 。
以Ansys为例 , 它能够处理的问题包罗万象 , 甚至可以说 , 只有你想不到 , 没有它涉及不到 。 在仿真领域 , Ansys本身就是以应用范围广而著称 。 另外 , 学术在不断的发展 , 一些学者发表出来的论文 , 采用了新算法 , 可以实现更快更准的计算 。 那么 , 这些软件巨头 , 就会把算法买下来 , 用于下一版本软件的更新 。 实际上 , ABAQUS软件就是如此 , 最早期 , 软件本身就是一个博士生弄出来的算法 。
由此可见 , 无论是软件的功能、还是软件的核心算法 , 都不是短期可以完成的 。 想要达到现有主流软件的水平 , 至少10年的时间 。 然而 , 主流软件不会等你 。 市场上主流的商用软件 , 其实都不是完全自己开发出来的 , 可以说是资本运作的结果 。 它通过不断地吞并 , 来壮大自己 。 比如 , Ansys之所以功能如此齐全 , 就在于它不断地吞并其他小软件 , 将其整合到自己的体系之中 。
另外 , 这些企业也不会只把鸡蛋放在一个笼子里 , 多头并进才是生存之道 。 比如下图是达索公司的产品 , 它不仅仅有有限元的仿真软件 , 还有画图的cad设计软件 , 空间规划软件等等 。 在有限元领域 , 竞争还是非常激烈的 , 同类软件不少 。 为了争夺市场 , 必须有自己核心的内容 , 这个内容就是算法 。 正如前面所述 , 这些软件拥有商 , 都在时时关注着最新的科研动态 , 一旦有较好的合适的算法 , 立马像鲨鱼闻到了血腥味 , 买断新算法的版权 。 这不仅仅需要耐心 , 更多的是需要经费支持 。
稿源:(未知)
【傻大方】网址:/c/11209C4402021.html
标题:软件|如果中国重新开发像MATLAB、solidworks这样的软件大概需要多久?