🧱 我用AI手搓了一个结构力学求解器,结果只花了 2 小时
🧱 我用AI手搓了一个结构力学求解器,结果只花了 2 小时
公众号:非解构 · 作者:上叶侬(用户提供链接,标记为上叶侬)
事情的起因其实很简单: 昨晚我们非解构的力学大神用GAMA内置的结构力学求解器做了个参数化分析:

有没有发现哪里很牛逼?!!! 但是聊着聊着画风突变了。大家开始讨论AI了!!!

看看这用AI搓出来的内力图:


小编突发奇想,是不是可以手搓一结构力学求解器? 最近VIBE Coding这么火,搓一个不是也是分分钟的事情么? 嗯,试试就试试。

01. 我给它下了提示词
我用的是 AI Studio和Codex一起对战的模式。 我给它们一段话: 提示词内容:
请帮我基于 vue3 生成一个二维杆系结构力学求解器。功能包括: 1. 可以添加,修改和删除节点。 2. 添加,删除和编辑杆单元,指定刚度。 3. 设置删除和修改节点支座。 4. 设置删除节点荷载,点荷载可以布置在节点上,也可以布置在杆件上。 5. 基于原位显示内力。 6. 基于原位显示变形。 7. 添加杆件的均布荷载。 8. 生成弯矩图 (BMD)。 9. 生成剪力图 (SFD)。
他们吭哧吭哧地就开始干活了。 过程非常丝滑,丝滑到有点反常。 我不断加需求,它不断补全。 最后整个求解器在浏览器里跑起来了。 时间总共差不多两小时。 事实证明,AI Studio 还是更胜一筹啊!

大家可以通过这个网址,访问这个求解器: 两个小时AI搓出来的,肯定有的地方不完善,大家不喜勿喷! http://124.222.212.171:51674/

02.也许?
我们过去认为: “软件开发对于结构工程来说是巨大的门槛,需要软件团队 + 力学专家 + 图形开发 + 部署团队。” 大模型第一次把这个门槛拆掉了。 你不需要: ✘ 写代码 ✘ 写矩阵 ✘ 写界面 ✘ 写渲染引擎 ✘ 学 Docker ✘ 学部署 甚至连语言都不需要精准描述,你只需要说: “我需要这个东西。” 然后它就开始做。 而且做的是我们行业能理解的东西: 建模、荷载、约束、变形、内力、图线。
03. 一部分年轻人会觉得“这很爽”,另一部分会觉得“这很刺痛”
在我们行业里,年轻工程师的竞争力很大程度来自于: ✔ 更熟悉软件 ✔ 更熟悉图形表达 ✔ 更能做课题 ✔ 更能折腾工具 但是大模型的出现让这个优势突然变得: 有的事情似乎不再那么高不可及 如果新人说: “我会自己用 Python 写小工具,能画图能算能表达。” 大模型会回一句: “这个我也会。” 一起看看下面的vibe drawing!!! 我们不需要专门去开发什么mcp,什么大模型开发。 我们只需要说话,调用现成的工具就可以。 那你可能会问: “我们要怎么应对当前的挑战?” 其实答案反而变得更清晰: 你的专业基础还是决定性的。 所谓的VIBE Coding, 只是把你调用计算机算力资源的门槛降低。 比如传统的,你做有限元分析, 你必须依赖于有限元软件。 那么,你能用到的算力资源,仅限于软件提供商给你限定的范畴。 但是当你有了通过大模型进行VIBE Coding的能力, 你调用算力的能力,取决于你能掌握的VIBE Coding的边界。 然而,如果你对结构力学一无所知, 你是不可能通过VIBE Coding做出这个求解器的。 换句话说: AI 会做事,但不会决定做什么事 而能决定“做什么”的那群人,才是未来结构行业的核心。
04. 所以两小时做求解器这件事,本质上不是“炫技”
它代表三个趋势:
趋势一:结构行业将进入“工具自造时代”
未来不会只有: SAP2000 / MIDAS / Abaqus / Ansys 还会出现: “每个工程师的私人工具” 以前这些工具想都没法想。
趋势二:“结构表达力”会成为新竞争力
未来谁能做到: “把力学想法表达成可运行工具” 谁就有话语权。
趋势三:结构行业的知识沉淀方式会被改写
以前知识靠: 师傅带徒弟 经验口传 技术总结会议 内部技术 PPT 未来可能变成一条提示词: “把这个方法做成工具。”
05. 最后一句话,特别想对年轻结构工程师说
不要害怕大模型替代我们,而要学习大模型能替我们做什么。 结构行业不会被 AI 吃掉, 但不会用 AI 的结构工程师一定会被其他工程师吃掉。
最后贴上本次VIBE Coding过程中所有的提示词
我现在要做一个基于 Vue3 的二维杆系结构力学求解器。可以添加、修改和删除节点。可以添加、删除和编辑杆单元,指定刚度。可以设置、删除和修改节点支座。可以设置、删除节点荷载,点荷载可以布置在节点上,也可以布置在杆件上。基于原位显示内力。基于原位显示变形。可以添加杆件的均布荷载。生成弯矩图。生成剪力图。添加框选的功能,让我可以批量删除和添加构件。添加正交输入功能,让我可以根据距离和正交方向输入新的节点。字体稍微调大,背景设置为白底,背景中添加一些浅色的网格线。当前似乎无法添加荷载,包括梁的均布荷载和节点荷载,以及节点上的节点荷载,请完善。网格线颜色可以稍微再深一点,现在看不清楚。添加 Ctrl 多项选择功能,Ctrl+点选,可以点选多个不相邻的对象。内力和变形功能已全面完善。你绘制的节点荷载方向似乎有误。显示轴力图、弯矩图、剪力图和变形图。不同的支座形式用更加丰富的图例表示。将网格设置成可以无限延申的形式,网格演示调整为浅蓝色。你绘制的荷载的箭头仍然有问题,请再次检查并修正。你的 y 方向箭头是向右的且没有和细的直线相连。同时 x 向的节点荷载也是错误的,请修正。网格颜色可以再深一点。同时支持通过 Ctrl 滑动滚轮缩放画布。你绘制的 x 和 y 方向荷载为负数时,绘制错误。荷载输入框支持输入负数。建模工具只在添加节点和构件时使用,加入复制和镜像、移动、旋转的功能。生成的内力变形图上显示内力或者变形值,轴力通过不同的颜色区分拉压。结构力学求解器名称改为 NSStructure 2D。制作一个 Dockerfile 和 docker-compose 文件,通过 Nginx,让我可以直接在 Docker 上部署这个项目。鼠标滚轮调整为缩放画布。显示支座反力。支持删除构件的荷载。在 Windows 上通过 Docker 部署后,有的时候添加节点会失效。在通过鼠标滚轮缩放后,添加节点功能也会失效。我在 Windows 通过 WSL 上编译的镜像在 Linux 上似乎有的功能失效了,我要如何处理。还不能设置杆件的弹性模量,请加上这个功能。优化当前代码,对于移动、复制可以设置距离和方向,对于镜像,可以点选镜像轴。
大家玩的开心!!!
本文档由AI从非解构公众号自动采集整理,仅供学习参考。
LOADING…