本地数值计算助手 Skill Guide
使用
主入口
scripts\run.ps1 "<问题描述>"
例:
| 意图 | 命令 |
| --- | --- |
| 求单摆周期 | scripts\run.ps1 "一根2米长的单摆,初始角度30度,求周期" |
| 求梁弯矩 | scripts\run.ps1 "跨度3米的简支梁,中点受5000牛的集中荷载,求最大弯矩" |
| 求梁弯矩(均布荷载) | scripts\run.ps1 "跨度6米的简支梁,均布荷载2千牛每米,求最大弯矩" |
| 算传热时间 | scripts\run.ps1 "钢件半宽10厘米,初始800度,泡20度的水,降到100度要多久" |
| 算容器壁厚 | scripts\run.ps1 "内压1兆帕、内径1米的压力容器,许用应力100兆帕,需要多厚" |
| 算RC充电 | scripts\run.ps1 "1千欧电阻和100微法电容充电,12伏电源,充到90%要多久" |
| 算管道压降 | scripts\run.ps1 "管径50毫米、长100米的水管,流量20立方米每小时,压降多少" |
| 算弹簧周期 | scripts\run.ps1 "一个2千克的重物挂在刚度100牛每米的弹簧上,求振动周期" |
| 算轴直径 | scripts\run.ps1 "电机功率5千瓦转速1450转,许用剪应力40兆帕,要多粗的轴" |
重要:
scripts\run.ps1是唯一入口,不要直接调用其他脚本。- 首次运行会下载模型(约 1.2 GB);若超时,运行
scripts\run.ps1 --continue继续。 - 模型与计算全部在本机完成,不调用任何云服务;数值由 scipy 确定性计算,模型只做问题解析。
解读输出
输出分五段(中文标签):
- 场景:识别到的问题类型(单摆/简支梁/传热/压力容器/RC电路/管道/弹簧振子/圆轴扭矩)。
- 你给了:用户显式提到的参数。
- 我补了:模型没提的参数按物理常识补齐,并说明理由(如「g 按地球标准重力 9.81」)。
- 计算结果:scipy 算出的数值。
- 白话解读:把结果翻译成人话(如「压降相当于把水抬高了 17.3 米,偏大,建议换更粗的管径」)。
例:
场景: 管道压降
你给了: 管径=50 mm,管长=100 m,流量=20 m³/h
我补了: 密度 → 默认水 ρ=1000 kg/m³;黏度 → 默认水 20°C μ=1e-3 Pa·s;粗糙度 → 默认钢管粗糙度 ε=45 μm
计算结果: dp_kPa=169.3, head_loss=17.26, flow_type=湍流
白话解读: 压降 169.3 kPa,约合 17.3 米水柱,流态为湍流。白话:这段 100 米水管,20 方/小时的流量下,压降相当于把水抬高了 17.3 米,偏大,建议换更粗的管径。(经验值:>5 米水柱通常就要考虑换管)
没给数值时多数场景会引导你补全参数(例:一根单摆 → 「没听到具体数值,可以说详细点,比如『一根2米长的单摆…』」);管道压降例外——只说「这水管压降大不大」它会按常见水管(D=50mm/L=100m/Q=20m³/h)智能补全直接估算;不认识的场景(股票、算术、烧水等)会明确拒绝而非硬算。
本 Skill 不做的事
- 不是通用计算器:只覆盖八个预置场景,其他问题会报错。
- 不联网:没有云端回退,模型缺失时只在本地下载。
- 不训练模型:参数补全规则写死在代码里,行为可复现。
- 结果不用于高精度工程放样:用于快速估算与教学演示。
- 单位换算边界:小数/厘米/毫米/兆帕/千欧/方等常用单位换算稳定;中文数字(含「零点八」这类中文小数)由代码层兜底;英制单位(英寸/英尺/psi/华氏°F)与「吨」这类质量单位需二次换算时,小模型(1.7B)可能整体识别错乱——建议用 SI 或常用单位表述(如 500mm、20 m³/h、19.6kN、12V)。
- 空闲回收:连续
server_alive_timeout(默认 300s)无请求时 server 自动退出释放内存,下次调用自动重启(仅多一次冷启动)。
Scan to join WeChat group