斜拉桥索力优化的matlab和ansys联合仿真
本帖最后由 西风独自凉 于 2012-9-8 21:59 编辑斜拉桥合理成桥状态的确定原则在《 ansys斜拉桥成桥索力优化 》http://www.bridgehead.com.cn/thread-37278-1-4.html一贴中已经说过,matlab和ansys联合仿真的原理也在《matlab和ansys联合优化》http://www.bridgehead.com.cn/thread-46145-1-1.html和《matlab和ansys协同工作》http://www.bridgehead.com.cn/thread-31125-1-1.html中介绍过,此处不在赘述。直接以邵旭东教授等编著的《桥梁设计与计算》(该书论坛中好像有电子版)的一例子来说明斜拉桥索力优化的matlab和ansys联合仿真。
书中相应的计算理论见原书p540-550。或者参考下面论文(文章作者非本人)。
算例描述如下:
书中对该算例采用了可行域法来确定索力。本贴也将采用该法。
计算的基本原理:采用matlab为主控程序,编制优化算法程序,将ansys计算得到的弯矩作为约束条件返回给matlab优化程序。
目标函数:弯曲应变能
约束条件:弯矩在可行域内,具体表达式见原书。
利用惩罚函数将约束优化问题转化为无约束优化问题。
新的目标函数:惩罚函数=弯曲应变能+弯矩惩罚项
优化方法:遗传算法
首先,建立有限元模型如下:
联合仿真计算结果输出:
即三索索力T1,T2,T3分别为:3137.819072011635 3303.436908252255
5114.168292024851KN,最小弯曲应变能为3.491895730000000e+004。
可行域检验:算法计算结束时,索与主梁相交的三个截面的弯矩可行域为:
截面1:【-2.6617e+006, 3.0973e+005】N*m
截面2:【-2.6221e+006, -2.2499e+005】N*m
截面3:【-1.8241e+006, -1.7047e+006】N*m
三个截面的弯矩分别为: -2046378.2063 -1675845.4513 -1737980.5069N*m
可见,主梁弯矩全部落入其可行域内。说明计算结果合理。
结果比较分析:
邵教授书中计算得到的三索力分别为:T1=3307.400T2=3620.100T3=5418.100kN。
将邵书中结果T1=3307.400T2=3620.100T3=5418.100kN代入有限元模型,进行受力分析,提取主梁应变能。
主梁应变能为 35202.9857,比本贴采用遗传算法优化后的应变能3.491895730000000e+004要大。
因此,若以主梁弯曲应变能最小为目标,本贴结果更优。
感谢参考文献的作者们!转载注明出处!
大拿发新帖,贴贴是精华!
小弟得滋养,功力天天长!
谢谢昨天与您的交流!进步不小! 楼主,您好!我最近正在做斜拉桥索力优化方面的研究,ansys已经上手有一段时间了,matlab还正处于摸索学习阶段,希望能得到您的帮助,拜读下您的命令流源文件,鄙人感激不尽!邮箱:bolhengzh@126.com 老师您好,最近在做毕业设计,也是有关您这方面的,但是遇到很多问题不能解决,试管毕业大计,能加一下您qq指导一下吗?或者发一下您的命令流参考学习一下?邮箱是:990519279@qq.com,谢谢您了 帖子还不错哦!!! 楼主方不方便分享一下源代码? nb2003ccc 发表于 2012-9-8 23:48 static/image/common/back.gif
大拿发新帖,贴贴是精华!
小弟得滋养,功力天天长!
谢谢昨天与您的交流!进步不小!
言过其实了,相互交流,共同进步! 西风独自凉 发表于 2012-9-9 13:53 static/image/common/back.gif
言过其实了,相互交流,共同进步!
我也做出来了,谢谢您命令流和指导,终于搞明白了! 研究得挺不错。可以结合中国规范做二次开发。 nb2003ccc 发表于 2012-9-20 11:57 static/image/common/back.gif
我也做出来了,谢谢您命令流和指导,终于搞明白了!
很好,再接再励!发扬光大!
帖子还不错哦!!! 楼主资料能不能传一份呢?
您好 ,看了你的例子受益很多,有个地方请教下您。您那个斜拉桥用matlab优化时目标函数是U+U的罚函数,请教下您那个罚函数是不是就直接写出来就行了?还是需要迭代编程?希望得到您的解答非常感谢 本帖最后由 西风独自凉 于 2012-10-8 11:25 编辑
若以弯曲应变能最小为优化目标,因是约束优化问题,可以利用罚函数方法转化为无约束问题求解。
若以弯矩作为约束条件构造新的目标函数(惩罚函数),新的目标函数可以如此构造:惩罚函数=弯曲应变能+弯矩惩罚项。
弯曲应变能和弯矩惩罚项直接写出来带入上式即可。 西风独自凉 发表于 2012-10-8 11:16 static/image/common/back.gif
若以弯曲应变能最小为优化目标,因是约束优化问题,可以利用罚函数方法转化为无约束问题求解。
若以弯矩作 ...
您好 您看是不是这个意思比如目标函数为U=uxi^2/2ei+k(ui-a)^2
然后直接调用matlab的遗传工具箱,其间目标函数不需要罚函数其他语句,放大不符合目标函数的值。
另外想问您如果是 b>m>a,其罚函数项该怎么写呢?
放大系数k不用变化吗?
我qq加您了,您看可以指点下吗? 帖子还不错哦!!!
页:
[1]
2