songerking 发表于 2012-4-9 22:48:27

两个自编小程序(基于fortran的SPH单元布置及节点分离程序)

附件为自己当时为解决裂纹扩展问题而开发的两个小程序,都是用cvf6.0做的。
1.第一个是 ElementSPH,用于在节点上布置sph粒子,这个程序较简单,后来用VB做了界面化封装,做sph模拟的时候,particle mass一定要计算好,不然会出现应力波无法传播的问题(这在楼主利用ls-dyna/sph和自编sph程序做模拟的时候都遇到了)。话说dyna的sph边界确实不怎样,故而舍此,完全自编程序做了一份毕业论文,在边界上采用了梯度化矢量处理方法,在固体力学计算的几个问题上,误差不过千分之五,效果还是不错的(硕士论文被推荐去参评省优,尚未出结果,亦不报什么大希望,毕竟只有一篇上得了档次的小论文)。
2.第二个是实体单元节点分离程序,这个程序是将实体单元连接处的节点根据邻近单元的数量分别为单元配置坐标相同的节点,并将这些节点连接起来,设定塑性失效应变,因而在一定工况下,单元会在节点处分离,从而达到裂纹扩展的效果(abaqus的xfem的预制裂纹是否同种原理?节点分离做裂纹扩展,在爆炸与冲击上有一篇文章,其作者应为论坛中交流过的学者,殊为有心,用c语言也做了类似程序,原理相同,希望大家多多交流,就算为技术进步做点贡献吧,呵呵)。程序未作界面化封装,便于有心人进一步研究。
其实我非常喜欢做科研,虽然自己并不聪明,但是总喜欢探索一些新东西,至今走上了工作岗位,在企业做CAE应用方面的技术,新东西研究的少了,标准化的东西多了,也许这就是生活吧。我们还是有很多有意义的事情等待我们去做的,不仅仅是科研,生活中,其实很多。

songya/2012.04.09
----------------任意节点分离程序V2发布---------------by songya
前段时间比较忙,有些会员的问题未能及时解答,请见谅,花了几分钟编了新版本,基本上解决了问题。

说明:解决了上面第一个版本中对节点号连续性的要求及相关bug,可以对任意节点任意数量和任意part的节点进行分离,并形成节点、单元、nodelist及节点失效语句。计算量大大减小,k文件更加合理。欢迎下载!

zhuliuxian 发表于 2012-4-24 11:20:35

谢谢朋友,感谢你对论坛的贡献,顶一下,让更多的人看到.

penghui299 发表于 2012-4-25 16:04:25

谢谢楼主了,学习一下

shenliguanxin 发表于 2012-5-18 16:29:16

太好了,非常想和你学习下,您的邮箱或QQ。我特别想和您交流下。

shenliguanxin 发表于 2012-5-18 16:30:54

太好了,非常想和你学习下,您的邮箱或QQ。我特别想和您交流下。

shenliguanxin 发表于 2012-5-18 16:32:14

太好了,非常想和你学习下,您的邮箱或QQ。我特别想和您交流下。

accl008a 发表于 2012-5-28 13:43:18

这个必须顶~~~~~~~~

76243386 发表于 2012-5-29 09:36:22

song斑果断给力,只是小弟觉得可以将两程序界面截图看看!让更多的人感受SPH的魅力!

songerking 发表于 2012-6-1 15:11:09

76243386 发表于 2012-5-29 09:36 static/image/common/back.gif
song斑果断给力,只是小弟觉得可以将两程序界面截图看看!让更多的人感受SPH的魅力! ...

节点分离不是sph的内容,呵呵。
---------------------------------------------------------------------------------
鉴于很多朋友反映节点分离CVF程序不好操作,现上传原simtape论坛的超级版主流浪的西瓜的C++版节点分离程序,这个有界面,操作方便。
PS:节点分离实际上是个很简单的思路,有兴趣的同学可以自编程序来实现这个功能。

whb337 发表于 2012-6-1 15:32:31

楼主都是大神级,最近刚开始学SPH,目前看楼主的东西还看不懂,希望以后能向楼主讨教。

shenliguanxin 发表于 2012-6-7 12:37:10

你好,我运行是老出现 2199 have no soild element attach。为什么?
怎么改?》

hebutkappa 发表于 2012-6-14 10:35:33

版主能写个例子具体怎么运行吗

songerking 发表于 2012-6-14 16:43:34

shenliguanxin 发表于 2012-6-7 12:37 static/image/common/back.gif
你好,我运行是老出现 2199 have no soild element attach。为什么?
怎么改?》

不好意思,最近很忙,抽空编了个新版本的,您试试,如果还有bug请告诉我,我好及时更新。现在用lsdyna软件比较少,没有验证,就拜托您验证一下吧,呵呵,谢谢啊。

songerking 发表于 2012-6-14 16:44:03

hebutkappa 发表于 2012-6-14 10:35 static/image/common/back.gif
版主能写个例子具体怎么运行吗

压缩包里有个例子

shenliguanxin 发表于 2012-6-18 16:00:10

我试了你的例子,结果文件是这样的

dawuweijun 发表于 2012-6-21 12:52:54

feichang好,很有用,谢谢了

qxc 发表于 2012-7-5 20:41:25

好东西。赞个,很想学,可惜木有时间啊。

sjzdh 发表于 2012-7-6 05:56:13

正需要,谢谢分享

cs1127626 发表于 2012-7-6 16:34:59

二次开发很强大

hoby 发表于 2012-7-6 20:41:40

楼主的程序思路还是很好的,不过现在已经有商业软件开发出较熟的功能了。节点分开(Node spliting)算法可以应该在裂纹扩展,爆炸等大变形分析中。
下图为瑞典Impetus afea 公司开发的求解器模拟的子弹射击刚体的demo例子。用户只需要定义失效准则就可以激活节点分开。如果网格单元足够细的话,
对裂纹的模拟还是比较贴近实验结果的。

页: [1] 2 3 4 5 6 7
查看完整版本: 两个自编小程序(基于fortran的SPH单元布置及节点分离程序)