找回密码
 注册
Simdroid-非首页
楼主: wuweide127

形状优化文章分享,hypermorph+hyerstudy (题目和摘要在第13页)

[复制链接]
 楼主| 发表于 2006-11-5 00:09:25 | 显示全部楼层 来自 大连理工大学西山生活区

第七天

首先感谢xucaiwen战友的鼓励!我当然愿意交朋友了,wuweide@sina.com.cn。有时间多交流!

这两天做例子做的这个苦啊!(Creating a Hexahedral Mesh using the Solid Map Function - HM-3200 )
花了两天地时间才把它做下来,而且还是在有详细帮助地情况下做的

有这么几个关键点:
1,face element的建立。在例子中,全部的实体单元都是由face element生成的。只是具体采用的方式不同,用的最多的是solid map。因此如何得到face element是个关键。这个概念在ansys中很淡化,我是从来不在ansys中用平面单元生成立体单元的。HM生成face element的命令只在solid map面板中,且只能对solid map component中的单元有效。所以在做这种三维单元划分的时候,头脑一定要清醒,是不是在相应的component里面?
2,合并节点。不知为什么,HM里面每次生产单元都会有那么多的节点不能直接合并。所以每次生成单元以后,切切要记得使用edge里面的命令来合并节点(记得选中所有的单元以后再执行哦)。同时注意tolerance的设定,在设定之前,一定要先用distance命令测量一下正常单元节点间的最小距离。不然可能使正常的单元扭曲。
今天先这样,明天再好好总结这一周的收获!

[ 本帖最后由 wuweide127 于 2006-11-5 00:12 编辑 ]
发表于 2006-11-6 08:55:23 | 显示全部楼层 来自 河北秦皇岛
Simdroid开发平台
写得真不错,好好学习。
HM对视图操作也很方便:
可以试试CTRL+left:旋转
和CTRL+right:移动
另外选择对象时可以先按一下shift+left,会出现相应选项的

还是tutorial不错,我将里面的例子打印出来,慢慢学习
 楼主| 发表于 2006-11-6 16:01:04 | 显示全部楼层 来自 大连理工大学

第8-9天,阶段性总结

首先感谢qhdhfcy战友的鼓励和帮助!现在我也慢慢对HM的操作熟悉了,所以视图操作也觉得顺手多了。

这两天又来了一个三级跳,直接开始做拓扑优化的例子。紧赶慢赶,终于把前面的两个例子做出来了。这在原来是不可想象的。因为在7、8天以前,我还是看着软件就觉得头大,不知如何下手。但是现在,看着做出来的优化结果(虽然只是照着例子做),真有“速成”的感觉。当然了,目前只是很小的进步,以后的路还很长,就让自己吹一下牛吧

下面总结一下这些天的学习。重点强调是学习过程中一定要注意的地方。

1,对HM的建模思路一定要清晰,HM的基本概念一定要深入理解和反复加深印象,直到能溶入到具体操作的每一步。在我看来,HM的建模有两个最重要的基本概念,分别是collectors和card image。对于collectors来说,所有的实体,所有的性质,反正是数据库中的所有的数据都要装在各自的collectors里面。在操作的过程中,不同的collectors也起到了不同的作用,绝大多数的操作就是直接针对不同的collectors来的。而card image 是对于不同的collectors的性质的确定。也就是说,不同的collectors的性质是由不同的card image来设定的。在建模,加载,运算等等的一切过程中,这两个概念是无处不在的。所以对于初学HM的人来说,如果这两个概念不清楚,或者对这它们的具体操作(比如说,create, create/edit的区别; update怎么用;load,load/edit等等具体的命令)不清晰、不熟练,那学习HM简直就是寸步难行!因此我觉得初学者一定要耐住性子,好好的把HM自带的帮助文件的教程做一做,特别是最前面的几课,看似简单,实际上包含了HM里最普遍最重要的一些操作。现在的我,一旦接触到HM,马上头脑中的想到的就是“整个模型有几个collectors?它们各自的card image是什么,设置好了没有?当前的collector是什么?”。当这几个问题搞清楚以后,我觉得后面无论是继续建模还是加载运算,起码来说,心里就有底了。

2,学习的过程中要多看,甚至随时看自带的帮助文件。对经常使用的命令一定要达到熟练的地步。HM的页面布局特点是操作面板很多,但是经常使用的命令也就是那么几个(replace,mark,surface edit,solid map,等等)。而这些命令往往又又很多的设置在里面。所以对于这些命令,一定要多看帮助文件,(我感觉HM自带的帮助文件做的非常好,很多都能够做到“图文并茂”,而且解释详尽,唯恐我们没看懂)把其具体的操作事项都要搞清楚。相应的例子要多加练习。只有这些命令熟悉了,运用时等到达准确、迅速、无误才能在使用HM的时候感到顺畅。前面说觉得是“速成”,其实自己这些天除了学HM就没有干别的,整天泡这上面。天下没有捷径,做任何事都一样。

3,建模和操作之前的设计很重要。我做HM感到和ansys最大的一个区别就是,ansys可以先做一做再想,但是HM一定要事前把要做的模型的各个细节都想好以后再去做。比如说,在建模以前,就必须想好,我要建哪几个collectors,各自都起什么名字,什么颜色?如果事先不计划好,在建模的时候,光是collectors的混乱就会让你后患无穷!而且HM的对于每个功能的实现操作步骤是比较多的。但是这些操作表现上又是放在一起没有顺序区别的面板,所以很容易顾此失彼,(例如在optimization的设定过程中,variable, objective,dconstrains都是放在一起的面板,但是在设定的操作过程中是有先后顺序的)所以我建议在建模和计算之前最好能拿一张纸,仔细想好要做的每一个细节,写下来仔细检查,然后再按照写好的去操作。我觉得在这里用掉的时间一定能够在后面顺畅无误(或少失误)的操作中补回来。而由于顾此失彼造成的错误、疏漏和返工所耽误的时间可能是你在设计时所花时间的几倍!

这里想到的就是这么多,具体的命令就不谈了,主要是我对学习方法的一些体会。总之呢,两句话:万丈高楼平地起(基本功最重要);熟能生巧!

与大家共勉!

[ 本帖最后由 wuweide127 于 2006-11-25 08:36 编辑 ]
发表于 2006-11-7 08:50:48 | 显示全部楼层 来自 山东烟台
真是的!哥们行军神速啊!从日记中可以看出哥们真的是拿出了,红军长征的勇气啊!虽说是两万五千里!有我们在一起!你不会孤单的!加油啊!自己也是!
 楼主| 发表于 2006-11-7 20:42:27 | 显示全部楼层 来自 大连理工大学

第10天

首先感谢“天山南北 ”战友的鼓励!我也是迫于压力才那么有干劲的。但是想到大家能够一起战斗,我倍感振奋!

今天看到了"member size control"。觉得这真的是一个好东东。下面我就以一个自己做的例子来说明(参考了帮助文件)。

模型为MBB梁,底面两端简支,上面中间节点加载力。考虑到对称性,只建了右边的梁模型(尺寸:900×300)。变量是单元密度,目标是最小的compliance,约束是体积分数最大不超过0.3。首先不加member size control, 然后加minimum member size control 为90。之后对比结果。

上面的图为不加member size control, 下图为加了control.
可以很明显的看到,如果没有加size control,单元密度的分布有很大的“波动性”(是不是传说中的“棋盘构型”?),如果要从结果中得到概念设计,恐怕的费一番脑筋。
但是加了size control以后,结果就变得异常清晰了!恐怕是大多数人最希望得到的结果。
当然了,我现在也不是很明白一些东西,比如其中的理论支撑什么的。如果有高手能够对我做的评论指导一下,我就太感激了!
谢谢!

本帖子中包含更多资源

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

×
 楼主| 发表于 2006-11-8 16:47:36 | 显示全部楼层 来自 大连理工大学

第11天

今天是另外一个拓扑优化参数的学习:draw direction constraints。这对于最后的设计便于加工,是很有好处的。自己做的例子(参考了帮助文档):

悬臂梁模型,长×宽×高(32*8*8),一端固定,另一端沿y方向施加扭矩。
优化设计:变量为单元密度,目标为最小的compliance,约束为30%的体积分数。

三种情况
不加draw direction constraints、加single draw direction constraints(y方向)、加split draw direction constraints(y方向)。

比较结果。

[ 本帖最后由 wuweide127 于 2006-11-8 16:54 编辑 ]

本帖子中包含更多资源

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

×
 楼主| 发表于 2006-11-8 16:51:43 | 显示全部楼层 来自 大连理工大学

第11天-2

可以看到,由于加了draw的方向,生成的结果明显的利于加工!特别是模具加工。而且对于某些切割加工也同样是非常有意义的。

本帖子中包含更多资源

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

×
发表于 2006-11-9 08:36:34 | 显示全部楼层 来自 江苏无锡
进步神速,成效显著阿!如此用功,很值得学习。

[ 本帖最后由 gy_tian 于 2006-11-9 08:37 编辑 ]
发表于 2006-11-9 16:28:18 | 显示全部楼层 来自 江苏南京
hypermesh用了有一段时间了,开始觉得很不好上手,用习惯之后,开始觉得有点喜欢了,看似死板的菜单,熟了之后效率还是挺高的~
最近开始学习使用OPTISTRUCT,希望多交流~
建议建立一个QQ群,讨论起来方便多了~我的QQ还没有到太阳呢~郁闷!
 楼主| 发表于 2006-11-9 21:08:38 | 显示全部楼层 来自 大连理工大学

第12天

首先感谢gy_tian战友的鼓励和表扬!真的有些不好意思了。其实我就是抓紧了时间而已。而且现在所作的基本上还是在走别人走过的路。另外一方面,我一直都在“跳跃式”进展,就盯着做拓扑优化,实际上单元划分和后处理还是我很薄弱的地方。因此希望大家都能多多帮助指导我!hollowgrass 战友,如果可能,我也希望建一个群来讨论的。

今天终于做到了Pattern Grouping!
看来OS对于循环对称结构,并没有考虑要用什么类似ansys中的cyclic命令来简化计算。那就麻烦点吧。

这个是我自己想的一个循环模型(帮助文件中的模型对于现在的我实在太复杂了)。用了Pattern Grouping的条件。

初始的模型和加载如图1所示。之后首先不用Pattern Grouping条件,然后加上Pattern Grouping进行对比。

本帖子中包含更多资源

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

×
 楼主| 发表于 2006-11-9 21:12:56 | 显示全部楼层 来自 大连理工大学

第12天-2

从结果可以看到,Pattern Grouping的确起到了作用。但是我有很大的疑惑 :
对于不加Pattern Grouping的情况,得到的结果是否合理呢?怎么会出现“断开”的现象呢?而且上下如此不对称!这是为什么呢?请指教!

本帖子中包含更多资源

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

×

评分

1

查看全部评分

发表于 2006-11-16 09:44:07 | 显示全部楼层 来自 山东烟台
我们一直在关注着你的进步!怎么这几天休息了!要坚持啊!
希望这是有史以来最好的一帖!
也希望你的进步给大家以激励!
愿意和你做个朋友!
kd_zhao@@126.com
发表于 2006-11-16 17:06:53 | 显示全部楼层 来自 江苏镇江
wuweide127老兄,加油啊!看来你的进步真的很快啊,有机会一定好好交流交流!
我的msn:chenhs0701@hotmail.com,QQ:8350427!
 楼主| 发表于 2006-11-17 08:19:55 | 显示全部楼层 来自 大连理工大学

感谢支持!(灌水啦)

谢谢天山南北 、chenhs0701两位战友的热心支持与鼓励!

说来惭愧,本来是想每天都能有所进展,然后和大家一起分享自己的学习心得。但是往往事不如愿,这些天要改一篇投稿的文章,时间很紧又非常麻烦,所以每天只是有空的时候来窝里逛逛,心中也有所懈怠。

两位的话给我很大的鼓励和鞭策,真的。我感受到了大家一起在这条路上奋斗的激情,和要求自身不断进步的决心!能在这样一个氛围中学习,我觉得很幸运。我会珍惜这个机会,也愿意和所有志同道合的战友们成为好朋友,多多交流,一起进步。

今后我尽力把每天的心得和大家分享;当然我不奢望成为“有史以来最好的一帖”(是我的梦想),但是如果真的能对大家有所帮助,那就是我付出努力的最大回报了!谢谢!

[ 本帖最后由 wuweide127 于 2006-11-17 08:23 编辑 ]
发表于 2006-11-17 09:28:40 | 显示全部楼层 来自 上海卢湾区
支持一下,精神和激情非常值得大家学习!!以后多多交流
发表于 2006-11-18 10:58:24 | 显示全部楼层 来自 上海杨浦区
你好,wuweide127

对于你的上面得到不对称结果的问题,我想作一点探讨:

1. 结果是否合理,与你的优化的目标和约束有关,如果是柔度问题,我觉得应该是比较合理的。
2. "断开" 是可能的, 因为你的位移约束在整个内边界上都有,荷载都可以传递到约束部位。 你可以认为你得到的是两个独立的结构。:)
3. 不对称是可能的,基于敏度的优化往往会得到一个局部最优解。也许对称的结构是最优的,但是,你得到的不对称结构相信也是一个不错的结构。 所以,如果你期望得到对称的结构,即使在结构与边界条件都对称的情况下,往往也需要施加额外的对称约束-pattern grouping。 另一个好处是,通过pattern grouping, 软件内部应该有某种变量连接的机制,从而使得实际参与优化的设计变量的个数大大减少,提高优化效率。

一点拙见,欢迎大家讨论。
 楼主| 发表于 2006-11-18 19:10:11 | 显示全部楼层 来自 大连理工大学

感谢参与探讨!

首先感谢altair_vega战友的支持!看过你的很多帖子,是个热心人哦。多交流哈。

zkong战友的回复让我很感激,因为你的回复基本上回答了我心中一直以来的疑惑。而且可以看出,你对OS的研究挺深的啊,在理论方面一套一套的。我这方面就欠缺多了,基本上都是在凭经验(如果有那么一点)办事,呵呵。向你学习!(另:这个例子我做的就是柔度问题,希望得到最小的柔度)

今天恶补一下拓扑优化的基本理论。因为有人突然问我“什么是拓扑优化?”,我支支吾吾了半天,就说出来“这个可好了,可以省材料”,“结果很吸引眼球的”等等,可是人家不认帐:“我还是不明白嘛!”所以只好承认自己根本没有理论基础,就恶补了一下子,自我感觉收获还不少。这里就班门弄斧一下吧。

什么是拓扑优化呢?简单的说,就是在一个给定的空间区域内,根据已知的负荷或支撑的约束条件,解决材料的分布问题,从而使结构的刚度达到最大或使输出位移、应力等达到规定要求的一种结构设计方法。是有限元设计和优化方法进行有机结合的新方法。
其具体方法分类主要包括:均匀化方法、相对密度法、渐进结构优化法。
求解方法包括:OC(Optimality criteria)法、SIMP (Solid isotropic mcirostructure with penalization)法、SLP(Sequential linear programming)法、 MMA (Method of moving asymptotes)法。
但是拓扑优化最大的问题就是数值不稳定问题,包括棋盘格式问题、网络依赖性问题、局部极值问题。
嗯,说了这些,有点“灌水”的感觉。不过看在都是我自己一个字一个字敲上去的份上,就请大家多包涵了。

另外给大家附两篇文章,一中一E,我上面敲的就是从中文中提出来的。E文的是关于拓扑优化数值不稳定问题的经典文章,感觉只要是写拓扑优化的文章,都要引用这篇,牛!

本帖子中包含更多资源

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

×
 楼主| 发表于 2006-11-18 19:14:46 | 显示全部楼层 来自 大连理工大学

第13天-1

英文的有点大。四个文件,这是1,2。如果上载的限制能再放开点就好了。

本帖子中包含更多资源

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

×
 楼主| 发表于 2006-11-18 19:17:30 | 显示全部楼层 来自 大连理工大学

第13天-2

英文的有点大。四个文件,这是3,4。如果上载的限制能再放开点就好了

本帖子中包含更多资源

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

×
发表于 2006-11-19 09:32:37 | 显示全部楼层 来自 河北秦皇岛
wuweide127 战友真是好样的,我现在每天上来就会先看看这个贴有没有更新。可是阁下做的都是优化的问题,我又不曾涉猎,遗憾。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-3-29 07:44 , Processed in 0.064241 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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