- 积分
- 15
- 回帖
- 0
- 西莫币
-
- 贡献
-
- 威望
-
- 存款
-
- 阅读权限
- 5
- 最后登录
- 1970-1-1
该用户从未签到
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
大家好!
在Flux官网的publications里有一个去年Flux Conference的演讲PPT”Reluctance Synchronous Motor Optimization“,其中介绍了将Flux作为求解器同时利用遗传算法来进行电机拓扑优化。
第26和27页展示了优化结果,被算法认为保留的Element被设定为拥有用户自定义的材料属性(比如Iron),而被算法认为应当去除的Element则被设定为拥有Air属性。
请问大家觉得,演讲的作者是通过怎样的思路来编写脚本于优化迭代过程中自动改变Element的材料属性的,或者大家有无这方面的经验?
因为就我所知,在Flux里是不能直接对Element进行材料属性设置的(如果可以那就很方便了)。Flux的操作逻辑是,将用户自己建立好的材料添加到物理面域(Face Region)上,并将这些物理面域附加到几何面(Face)上,网格划分后生成的Element属于哪个几何面,那么该Element就拥有该几何面所附加的物理面域所添加的材料属性。
我的想法是,可以先在建立几何模型时将之后要生成的位于优化设计区域内的每个Element所对应的几何面建立好,同时设定两种物理面域,一种物理面域添加用户自定义的材料属性,另一种物理面域添加Air属性。在优化过程中的每次迭代之后,被算法认为保留的Element,将添加有自定义材料属性的物理面域附加到该Element对应的几何面上;被算法认为应当去除的Element,则将添加有Air属性的物理面域附加到该Element对应的几何面上。这种方法理论上是可行的,但必须要在建立几何模型时编写PyFlux脚本才能实现,因为需要的几何点数量较大,同时之后的点连成线用手工来做也很不合适。另外,我们还必须知道网格划分后生成的位于优化设计区域内的每个Element的编号(Element ID)以及与其对应的几何面的编号(Face ID)。
如果大家对于我上面所提的问题以及想法有兴趣或者这方面的经验,还恳请多多指教。我们一起探讨和交流,共同提高,谢谢!
因为原文件比较大同时不允许发URL,所以将第26和27页放于附件里,原演讲PPT大家可以到Flux官网的publications里下载。
Reluctance_Synchronous_Motor_Optimization.pdf
(414.67 KB, 下载次数: 20)
|
评分
-
查看全部评分
|