太长不看版
2023年4月20日、4月27日、5月5日、5月13日,相继发布了新的v0.0.4版本以及图神经网络剪力墙设计、GAN-to-ETABS自动化建模源代码、土木工程自然语言规则AI解译等功能。感谢过程中各位工程师的积极参与和反馈。
的目标之一就是根据建筑平面布置让AI设计出结构布置方案,之后由专业结构软件完成结构的计算分析、配筋校核等工作。为了提升工作效率,我们开发了从AI到结构软件的自动化建模程序,可以实现将AI设计的结构方案自动导入结构分析软件。
本次更新我们开源了GAN-to-PKPM/YJK的代码,可以将AI结构方案设计结果导出到PKPM和YJK结构设计软件。后续我们将持续更新其他相关代码,也欢迎各位专家能够共同开发和完善程序。
5月5日发布的GAN-to-ETABS代码,与本次发布的GAN-to-PKPM/YJK的代码,一同放置于智能设计云平台中,下载路径:
智能设计云平台参数化建模工具下载
更新说明
本次开源的GAN-to-PKPM/YJK程序,可自动提取AI设计的矢量数据(.gdt)文件中的设计结果,包括剪力墙构件坐标和截面尺寸、梁构件坐标和截面尺寸、以及楼板坐标的结构化数据;进而基于PKPM/YJK的API,进行结构分析模型自动构建。
需注意:下载矢量数据文件(.gdt)中,剪力墙的设计结果为生成对抗网络(GAN)设计,图神经网络(GNN)设计对应的矢量数据将在后续更新中推出。
PKPM/YJK的API说明同样放在了开源代码的下载路径中,本次更新的主要内容便是基于PKPM和YJK开放的接口和示例文件,编写对应的建模代码。由于PKPM/YJK的API较新,我们基本没有相关的开发经验,相关开发过程得到了PKPM和YJK技术专家的大力支持,在此表示感谢!
同时,各位专家和用户在开发中遇到相关问题,可以从PKPM和YJK的相关渠道进行咨询和查阅:
PKPM结构软件二次开发官方QQ群:
YJK二次开发资料:
提供的下载矢量数据(.gdt)文件简介,剪力墙和梁的结构构件信息示意:
剪力墙:构件编号,墙体两端X、Y坐标,墙体厚度
*(, X1, Y1, X2, Y2, thick)
0,4.+05,3.+05,4.+05,3.+05,200
梁构件:构件编号,梁两端X、Y坐标,梁宽、梁高
*BEAM(, X1, Y1, X2, Y2,thick,)
0,4.+05,4.+05,4.+05,4.+05,200,600
使用说明
2.1 GAN-to-PKPM开源代码使用流程
(详见代码.txt文件)
(1)打开PKPM软件,创建一个项目名称与.gdt文件名称一样的PKPM空白模型(.jws),保存在“”目录中,关闭PKPM模型。
(2)采用、、等的IDLE软件,打开“28_v1.py”主程序
(a)修改if == “”:的 = “gdt文件名称”
(b)填写(结构总高度), (标准层高度)的信息
(c)需要注意的是,“.();.()”分析模块尚不成熟,建议各位用户在完成自动建模后,在相应结构设计软件内执行分析。
代码需要修改的部分内容
(3)自动建模完成后,进入PKPM界面,进行模型调整、分析等操作。
PKPM 计算模型
(4)注意事项
GAN-to-PKPM自动建模时,必须等代码运行结束后,再由PKPM打开更新后的PKPM模型(.jws),否则会出错。
2.2 GAN-to-YJK开源代码使用流程
(详见代码.txt文件)
(1)采用、、等的IDLE软件,打开“6_v1.py”主程序,修改(com=0)函数中的建模信息:
(a) = “”
(b) = 3000
(c) = 9
(d) = “D:\2_YJK”,保证为绝对路径
(e) = f”D:\1_gdt\{}.gdt”,保证为绝对路径
代码需要修改的部分内容
(2)打开YJK软件,创建一个项目名称与.gdt文件名称一样的YJK空白模型,保存在“2_YJK”目录中,并保持YJK程序界面处于打开状态。
(3)在YJK的命令窗口中,输入“”,如果前期环境配置正确,则会提示选择py文件,选择6_v1.py,便可实现自动建模。
YJK调用代码
(4)自动建模完成后,进入YJK界面,进行模型调整、分析等操作。
YJK计算模型
(5)注意事项
GAN-to-YJK自动建模时并不是由去调用YJK,而是由YJK去调用执行相关命令。因此,本地的安装与环境配置非常重要,需要严格按照YJK API使用说明进行操作。
后记
我们在PKPM和YJK二次开发方面积累较少,因此,我们的开源代码存在很多不足,请各位专家使用时批评指正,也希望能有更多的专家一起参与开发。
近期还将继续更新新的内容,请大家持续关注和建议。
往期文章
()
()
()