找回密码
 注册
Simdroid-非首页
查看: 1591|回复: 33

[H. 有限元编程] 模块化、开放式前后处理系统+求解器

[复制链接]
发表于 2010-5-31 22:14:47 | 显示全部楼层 |阅读模式 来自 广东广州
本帖最后由 chunyu 于 2010-10-12 12:54 编辑

通用的框架已经完成,仍很初级,只实现了最基本的功能。
现在主要精力回到支持局部自适应网格和并行计算的有限元求解器。
可执行程序完全是免费的,如果您也在从事自主开发工作,源代码也可以部分共享。
仅为抛砖引玉。

本帖子中包含更多资源

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

×

评分

1

查看全部评分

发表于 2010-6-1 21:14:56 | 显示全部楼层 来自 美国
Simdroid开发平台
这样的广告贴我们也是欢迎的,支持原创。
回复 不支持

使用道具 举报

 楼主| 发表于 2010-6-1 23:09:46 | 显示全部楼层 来自 广东广州
谢谢版主。发这个帖子并不是要做广告,主要是想寻找志同道合且有一定基础的人工作来做。源代码我可以共享,但只和能参与开发进来的朋友共享。
回复 不支持

使用道具 举报

发表于 2010-6-2 02:42:32 | 显示全部楼层 来自 美国
支持国产软件,推荐给lz一个很好的开源前处理软件 GMSH
也许能对您软件的发展有所帮助
回复 不支持

使用道具 举报

发表于 2010-6-2 02:49:08 | 显示全部楼层 来自 美国
This is fancy. Great work. I wish I could get involved.
回复 不支持

使用道具 举报

发表于 2010-6-2 10:47:22 | 显示全部楼层 来自 上海闵行区
谢谢版主。发这个帖子并不是要做广告,主要是想寻找志同道合且有一定基础的人工作来做。源代码我可以共享,但只和能参与开发进来的朋友共享。
chunyu 发表于 2010-6-1 23:09

界面做得很不错~不过lz先介绍一下这个前后处理系统的开发目的、开发形式、最终目标,因为现在商业的和开源的前后处理软件宛如天上的繁星。
我的一点疑问:
1、lz选择了wxwidgest+OpenCASCADE+VTK+Salome,是否考虑到这些东西不是基于LGPL就是BSD协议,那么将来商业化,能够避免很多版权问题?不然要省力的话,直接ParaView或者Mayavi2上开发更方便简单;
2、斑竹提到的Gmsh也使用了OpenCASCADE,且划分网格也包含了TETEGEN或NETGEN的接口,虽然界面用FLTK编写,用起来感觉怪怪的。lz的不同点或者创新点在哪里?Salome应该是更为庞大的CAELinux的一个组件;
btw,lz是常州泰思达工程计算与分析科技有限公司的老总?

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2010-6-2 11:28:33 | 显示全部楼层 来自 广东广州
1. Gmsh确实是一个很好的开源软件,它的功能、软件架构很值得借鉴
2、“这个前后处理系统的开发目的、开发形式、最终目标,因为现在商业的和开源的前后处理软件宛如天上的繁星“。开发这个号称通用的工具主要出于兴趣,还有就是抛砖引玉,希望能激起更多人的兴趣。商业的软件确实很多,但大多数人还是用的盗版。开源的前后处理软件其实很少,并且不怎么好用。我希望的开发形式是在一个通用框架的基础上,用户自己添加自己所需的功能,比如我可能要添加复合材料模块,另一个人要添加轴承模块等。通用框架是开放的,这样可以省去很多重复工作。通用框架的开发工作量也很大,需要多位人员的参与。
2、“lz选择了wxwidgest+OpenCASCADE+VTK+Salome,是否考虑到这些东西不是基于LGPL就是BSD协议,那么将来商业化,能够避免很多版权问题?不然要省力的话,直接ParaView或者Mayavi2上开发更方便简单”。是的,不想牵涉到版权问题。ParaView或者Mayavi2都非常好,非常值得学习和借鉴。也有可能把Mayavi2的模块放进来,如果不牵涉版权的话。
3、”斑竹提到的Gmsh也使用了OpenCASCADE,且划分网格也包含了TETEGEN或NETGEN的接口,虽然界面用FLTK编写,用起来感觉怪怪的。lz的不同点或者创新点在哪里?Salome应该是更为庞大的CAELinux的一个组件;“。这个工具没有创新点,除了是中文的且界面友好一点外。网格划分模块准备采用Salome的Mesh Module。

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2010-6-2 12:43:53 | 显示全部楼层 来自 浙江杭州
1. Gmsh确实是一个很好的开源软件,它的功能、软件架构很值得借鉴
2、“这个前后处理系统的开发目的、开发形式、最终目标,因为现在商业的和开源的前后处理软件宛如天上的繁星“。开发这个号称通用的工具主要出于兴 ...
chunyu 发表于 2010-6-2 11:28

斑竹说这个是广告贴,大概是不方便点破~lz说开发的主要出于兴趣~我只能Smilence~
这里提供一点数据仅供众版友参考:
美国ITI公司的某个读取后处理结果并显示的小软件,在国内的每套售价是六位数的,比动辄200w、300w的ANSYS、ABAQUS便宜一个数量级吧,且已经卖出若干套。
国产的飞箭有限元软件前、后处理用的是西班牙的GID,一套最便宜的也要5位数,当然买得多的话肯定有折扣的。

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2010-6-2 13:18:47 | 显示全部楼层 来自 广东广州
本帖最后由 chunyu 于 2010-6-2 13:26 编辑

谢谢提供这些数据,还真不知道这么贵,看来把这个免费的工具开发出来更有必要。这个工具的价格是0,对有兴趣的人(最好懂python,wxpython, occ,vtk,这样好添加功能)完全开放,尤其是自己工作中要做开发的。如果程序转化为EXE,文件太大,没有空间存放,只好贴两个图。另,我现在在大学工作,主要做的是计算力学,前后处理不是我的专长,写这个小程序一方面出于兴趣,一方面就是因为国外的东西太贵,一个ACIS的建模内核我都负担不起,更别提整套前后处理了。白天忙其他事,只能晚上睡觉前添几行代码,所以希望能有更多的人参与进来,否则一个人的只能做一点点。至于我blog上提到的其他工具,如轴承计算工具,三维voronoi图生成工具,因为是一些项目成果,没办法公开。

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2010-6-2 15:57:33 | 显示全部楼层 来自 上海
本帖最后由 refeihc 于 2010-6-2 16:01 编辑

我对前后处理没有下过功夫,虽然知道它的重要性。楼主有这个干劲做,让我觉得开心。

我有以下的问题,如果楼主回答不了,就当是建议吧。

1  前后处理模块分别从两头连接着核心模块,那数据结构是怎么考虑的?我不关心你的实体模型数据,也不关心图形格式标准,我只关心有限元核心模块所涉及到的那点儿入口出口数据。

2  楼主为什么不用一个嵌入的数据库呢,开源的也能找到,可以省去许多烦心事,有过考虑吗?

我觉得对于前后处理方面的工作如果谈创新则要求过高了,如果能站在最新的计算机技术平台上,就足够了不起。至少现在已经有了多平台架构,而且wx系列加上python也是近期的趋势,希望楼主努力。

另外,OCC是什么意思?

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2010-6-2 16:18:26 | 显示全部楼层 来自 广东广州
1、生成节点、单元和组,导出数据文件供求解器使用。因为我自己会用到类似abaqus的数据格式,所以单元、节点、载荷等的格式将按照abaqus inp文件输出。其他格式有兴趣的可以自己添加,这是个开放的、免费的、简单的工具。所谓的通用是指不针对某一行业而已,功能开始也不会很多
2、我们自己开发的基于自适应网格的并行有限元求解器可以将结果保存为vtk格式,方面用VTK显示。如果是自主开发的求解的器,应该容易将结果保存为vtk格式。
上面的选择都是懒办法,势单力薄,没有办法

3、“一个嵌入的数据库”是什么?请详细解释下:)

OCC=OpenCASCADE的缩写

再声明一下,我是抛砖引玉,我只完成基本框架和我工作中需要的功能,其他的功能留待感兴趣的同行扩充

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2010-6-2 16:47:58 | 显示全部楼层 来自 浙江杭州
1、生成节点、单元和组,导出数据文件供求解器使用。因为我自己会用到类似abaqus的数据格式,所以单元、节点、载荷等的格式将按照abaqus inp文件输出。其他格式有兴趣的可以自己添加,这是个开放的、免费的、简单的工 ...
chunyu 发表于 2010-6-2 16:18

既然在大学工作,就依托一些科研项目,招个把研究生干这个活儿,专门搭建平台,也算拥有自主知识产权,将来可以靠这个继续拉项目、评职称,甚至商业化
国外的很多开源软件都是这么干的,Gmsh、OpenFOAM便是这么发展起来的
btw,鉴于这类软件潜在的商业价值,纯粹依靠版友自发的兴趣爱好怕是远远不够的

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2010-6-2 19:42:16 | 显示全部楼层 来自 上海虹口区
11 楼,你搜索一下“嵌入式数据库”,其实关于数据结构和数据库有许多内容,一两句话说不清,以后再谈吧!

既然在大学工作,就依托一些科研项目,招个把研究生干这个活儿,专门搭建平台,也算拥有自主知识产权,将来可以靠这个继续拉项目、评职称,甚至商业化
国外的很多开源软件都是这么干的,Gmsh、OpenFOAM便是这么发 ...
pasuka 发表于 2010-6-2 16:47


12楼的兄弟看来不在大学工作,事情没那么理想。

目前,国内各个高校每年都有一批研究生在开发程序,但基本上学生一毕业就没了后继,只能写几篇几年过后没人愿意看的文章,做不成像样的东西。

搭建平台的要求是有限元软件工作中最高的,一般而言没有10年以上的摸爬滚打,别干这个。而研究生的综合素质还达不到搭建平台的程度,就算勉强搭建了,号称拥有知识产权,其实价值不大。特别是开发软件风险极大,学生毕不了业怎么办。

国内的管理机制不鼓励开发软件,别看各级政府都嚷着支持开发软件,但那只是嚷嚷而已,实际的政策没有,搞软件的基本上拉不到纵向课题,也不算成果,当然就谈不上晋升了。

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2010-9-3 18:07:27 | 显示全部楼层 来自 华南理工大学
杂事太多,断断续续,才把网格划分和显示完成。

本帖子中包含更多资源

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

×
回复 不支持

使用道具 举报

 楼主| 发表于 2010-9-3 18:11:11 | 显示全部楼层 来自 华南理工大学
本帖最后由 chunyu 于 2010-9-3 18:28 编辑

GUI部分:wxWidgets,原来是用python绑定,最近用C++重写了,更灵活,更方便。主体采用标准的doc/view结构

几何:主要使用OpenCASCASE库。Step,igs文件的导入、清理和点、线、面建立编号。

网格划分:netgen,下一步打算整合Salome/Smesh模块。

网格显示:OpenCASCADE的MeshVS模块,自己定义数据源。

求解器:打算自己开发,支持局部自适应网格。

结果显示:VTK

黄海军演,欧美和中国的碰撞在所难免,未雨绸缪吧。
回复 不支持

使用道具 举报

 楼主| 发表于 2010-9-9 20:38:02 | 显示全部楼层 来自 广东广州
后处理模块主要基于VTK

本帖子中包含更多资源

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

×
回复 不支持

使用道具 举报

发表于 2010-9-17 11:26:11 | 显示全部楼层 来自 湖北宜昌
看样子,你这软件是个组装机啊。
回复 不支持

使用道具 举报

头像被屏蔽
发表于 2010-9-17 15:09:18 | 显示全部楼层 来自 北京西城
提示: 该帖被管理员或版主屏蔽
回复 不支持

使用道具 举报

 楼主| 发表于 2010-9-19 10:48:43 | 显示全部楼层 来自 华南理工大学
本帖最后由 chunyu 于 2010-9-19 11:10 编辑

是的,核心的模块如几何建模、网格划分和结果显示都不是自己开发的,我的专业是力学,按道理说搞求解才是“正业”,但是前后处理这一块老没人做也不是个事啊。

不少商业软件也都是采用集成开发的方式,感兴趣的朋友可以看看:
1、Deform,几何建模采用OpenCASCADE,界面采用QT;
2、ABAQUS,几何建模采用ACIS,CAE的界面好像是采用了wxPython,以前的授权声明有提到,从6.9后不提了;
3、Caedium,一样的体系:几何OpenCASCADE,可视化:VTK,界面:wxWidgets
...
有些朋友进入这个领域时间还不长,对我国在该领域的技术现状还不了解,希望多关注一下,多思考一下。

另外,写这个程序的目的是为了交流和分享。基于前人的工作,对其中比较重要的两个类即几何模型显示类以及数据显示类在wxWidgets的框架下做了调整,可能会对自己做开发的朋友有用。鼠标操作的定义如下:左键按下-旋转,中键或滚轮按下--平移,滚轮转动或右键-动态缩放

本帖子中包含更多资源

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

×
回复 不支持

使用道具 举报

发表于 2010-9-19 21:15:31 | 显示全部楼层 来自 上海杨浦区
支持楼主!千里之行,始于足下!
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-9-25 17:12 , Processed in 0.053785 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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