关键词:桥梁顶推,边界条件更新,Midas,迈达斯,二次开发,有限元
我本人并不是土木专业,尽管土木和航空结构力学都涉及到力学计算,但是不同行业在使用力学工具和研究方法上来说区别还是很大的。
举一个最简单的例子,航空上的结构分析验证喜欢采用金字塔方法,从零件到结构件再到整机,一步一步的把仿真和试验都做起来。尤其是试验,动不动就是整机试验。
而在土建领域,搞全尺寸的试验是很少的,一般采用缩比试验。验证一座大厦的安全性,不可能先建一座真实的大厦再想办法给它破坏掉,成本肯定是不允许的。
其他方面的区别更多了,这里不做详述。
我们前面更新了很多有限元软件开发的内容,近期有不少土建类、电力系统的公司来咨询。
我一直认为航空航天方向是最愿意搞有限元软件开发的,然而实际情况是恰恰相反。
有家土建类的公司找我们咨询一个桥梁顶推自动分析有限元软件。
顶推法是一种常用的桥梁施工技术。它的思路非常简单:把箱梁在桥头造好,再一寸一寸沿着桥墩推过去。
所谓的“顶”指的是从桥头使用千斤顶等设备,推动箱梁结构前移。

从力学的层面看,这是一个边界条件动态变化的力学分析问题,每推一下,桥体的支撑位置变化一次,并且在这个过程中,还可以不断追加桥段,也就是说模型也会动态更新。
该公司之前找了国内知名高校的土木专业课题组,最终确定的思路是基于开源力学求解器,攒一个专用于桥梁顶推过程的自动力学分析软件。
SAP2000:建筑结构分析通用软件
这个思路肯定是没有什么毛病,问题出在没找对人。我之前就说过,这类软件开发最大的工作量在前后处理上,求解器并不是工作量最大的部分。
首先需要考虑需要建模功能,这部分不用强调,大家也知道工作量有多大。
如果不做建模功能,就要做模型转换,即开发一个专门的转换模块把BIM或者CAD模型转换成自己的格式,工作量又是巨大。
我当时开发管道应力分析软件的时候,上面两个工作都做了。那么多截面种类、材料、规范既要解析出来,还都要嵌入自己的软件。
然后到求解器这一块,同样是梁单元,不同行业的求解器会有特殊需求。比如管道应力的处理,常常有单向约束。什么是单向约束呢?以某节点x方向为例,就是只约束x正方向,不约束其负方向位移。
针对这些特殊需求进行开发,需要花时间研究有限元算法和原理。有这功夫,自己都能开发一个了。
上面这些工作,大部分国内工程取向的高校课题组是很难短期内做出来的。大部分人做试验、仿真为主,了不起再搞搞本构。你让他们去研究工业软件内核,搭建平台,搞开发,非常不现实,有AI的辅助也不行。
果然,这个东西搞了两年,仍然没搞出来。
他们和我交流完以后,问我的思路。
如果两年前他们找到我,我也会提上面思路,搞开发,甚至不借助开源求解器,全面自研。
但是现在他们很着急了。
我询问他们现在的处理方法。
现在的处理方法是:在MIDAS(迈达斯)Civil中完成力学分析,然后桥梁每顶推一次,计算后导出结果。然后再手动更新支撑位置,如此重复数百次。

MIDAS(迈达斯)软件Civil:桥梁专用分析软件
手动方法肯定是可以的,但是工作量太大,还很容易出错。我们双方在联合测试的时候,我就发现,他们有时候人工插入支撑位置的时候会出错。
然后我查了他们使用的版本和MIDAS的软件特点:
(1)坏消息:他们用的版本是比较老的,没有API接口。
(2)好消息:MIDAS支持文本格式的模型存储和导入。
这个好消息实在太好了,只要他的模型是文本存储,我就可以通过文本操作,实现模型更新和边界条件更新。
搞了这么多年的ABAQUS二次开发,inp格式自定义建模,还搞过CAESAR II的文本转换,这点经验还是有的。
但是没有API也没有宏,这就意味着无法通过代码把自定义的文本模型自动导入、计算、后处理。
不过呢,这个我也有经验。我直接调用鼠键操作,电脑自动进行软件操作就完事了。所以就确定下来,基于MIDAS搞二次开发的思路。
基于这个思路,我写了一个简单的界面,把MIDAS软件嵌入我的界面中,用户可以导入初始的MIDAS文本模型,然后定义单次顶推的距离和顶推次数。
随后就可以一键自动运行,界面左侧会实时显示每次顶推的计算结果,全部算完以后所有的原始模型、计算结果、统计结果都会自动保存:

我们开发的界面
这个软件开发出来也就三四天的时间,随后我们双方又一起联合调试了两天。
拢共也就不到一周,搞定。
搞工程,思路很重要。不同的团队会根据自己的经验和认知给出方案,有的方案是理论上肯定行得通,但是自己能不能做出来不知道。
很多人接项目的时候,由于长期的习惯,视拿到项目为成功,感觉最后无论怎么糊弄都能结题。所以最开始的,表现的大包大揽,这也没问题,那也问题。计划六个月完成,最后拖拖拉拉两三年没搞出来。
所以工程的东西,不只考验乙方的能力,更考验甲方的眼光。而人,总要为自己认知买单。