默认“实时 CFD · 调风速与 Sc”在本机 Python 服务中持续求解,浏览器显示刚完成的流场与结构状态。拖动参数后,求解器沿用当前流场,不切换预计算工况。需要先启动本机服务;已有的计算回放和结构对照环节仍能离线使用。
本次已在本机启动,打开 实时涡振课堂。
日后从源码目录双击 启动实时涡振.cmd。第一次换电脑时,先在源码目录安装依赖:
python -m pip install -r viv/ale/requirements-live.txt也可以在源码目录运行:
python viv/ale/live_server.py --port 8792 --open服务只监听本机地址。保留运行窗口,停止时按 Ctrl+C。运行过程无需外网。双击独立交付 HTML 时,实时页仍连接本机 8792 服务;没有服务会明确显示未连接,不显示替代流场。回放页不依赖该服务。
1. 保留初始质量比 m*=10、固有频率 fₙD/Uref=0.16、阻尼比 ζ=1% 和弹性支承。
2. 点击“开始连续升速”:初始风速 0.6,先保持 120 个计算时间单位,再用 160 个单位升至 1.5,随后保持。持速时间可以调整;原短程验证采用 50,网页默认已延长,以便观察低风速尾流的发展。
3. 同时查看尾流、近壁网格、升力与位移。频率图中的实测曲线需要积累足够长的时程;虚线 StU/D 只作参考,不是输入的荷载频率。
4. 可随时拖动风速滑块接管。入口平滑过渡,历史继续保留;“暂停计算”停止时间推进,“继续计算”沿用状态。只有“重新开始”清空这次实验。
风速与时间按 D=1、Uref=1、ρ=1 统一无量纲化;这里 0.6 不是直接指定工程风速 0.6 m/s。黏度固定为 0.01,因此风速范围 0.5–1.6 对应 Re=50–160。实时表示参数进入当前数值求解,不保证计算时间与实际时间等速。本机快速网格实测约每秒推进 0.7 个计算时间单位,默认初持加升速需约 7 分钟,取决于电脑负载。页面比较最近两个时间窗的响应变化;变化小只能说明该观察窗内比较平缓,不等于已证明稳态。
主图可选择涡量、速度大小、全场压力、表面压强 Cp 或只看网格。涡量默认使用暗色背景,也可切换浅色;速度和涡量默认隐藏网格。需要检查局部变形时再勾选“网格”,右侧全域概览始终保留网格参照。
流场逐像素使用三角单元的重心插值。速度先插值两个分量,再计算大小;压力使用 P1 节点值,涡量使用求解器的顶点投影值。显示插值让相邻单元颜色连续,不改写原始数据,也没有用图像模糊制造细小涡结构。这不是完整 P2 速度场重构,不能从显示的平滑程度推断网格已经足够细。
表面 Cp=(p−p_ref)/(½ρU²),p_ref 为当前入口边界静压的线平均。曲线沿圆柱壁面读取真实压力节点;0°为迎风点、90°为上方、180°为背风点、270°为下方。Cp 使用当前入口速度归一化,启动或加速阶段的瞬时值不应直接解释为稳态系数。色标超范围时只让颜色饱和,曲线和导出仍保留原值。
“导出时程 CSV”用于表格分析;“导出完整实验 JSON”保存本次全部时程、结构参数、固定/自由标记、参数操作事件、网格和当前流场及表面 Cp。快照是点击导出时最近一个完整计算步的场,不包含过去每一步的完整流场。回放页也提供时程与当前流场导出。
- 固定结构:在当前位置锁住圆柱,速度归零。流体继续求解,约束承担支反力。释放后从原位置继续弹性运动,不会跳回中心。
- 固有频率:改变 fₙ,按 k=m(2πfₙ)² 更新刚度。它改变约化风速 Uᵣ=U/(fₙD),不直接改变此处的 Sc。
- 质量比:m*=m/(ρπD²/4),m 是单位长度质量。调 m* 保持 fₙ,所以 k 与 c 同步变化。
- 阻尼比:c=2ζm(2πfₙ)。
- Scruton 数:Sc=4πmζ/(ρD²)=π²m*ζ。直接拖 Sc 保持当前 m*,反算 ζ;反过来调质量或阻尼也会更新 Sc。
例如 m*=10 时,ζ=1% 对应 Sc≈0.987,ζ=5% 对应 Sc≈4.935。可在接近频率交会的风速附近保持来流,再增加 Sc,观察位移包络如何随时间变化。参数变化后的前一段是瞬态;更严格的比较应从同样的初始条件重复实验。相同 Sc 下,质量比、约化风速或历史不同,振幅仍可能不同。
该教学计算使用实际变形的 ALE 贴体网格,外边界固定;压力及黏性应力积分推动单自由度结构,再由结构运动改变流场。没有指定持续正弦升力。
同一实时核心的连续升速检查已独立运行 5000 步(初持 50、升速 160、终点再持速 40),观察到尾流频率先低于 fₙ,再接近,最后高于 fₙ;位移的有限窗半峰峰值也先增大后减小。网页初持默认现已延长至 120,以上数字仍明确属于原核验历程。它是这一组参数的非稳态计算结果,不是强制生成的响应曲线,也不能仅凭频率接近就认定锁频。
快速网格和时间步尚未做完整收敛研究。隐式 Euler 会增加数值阻尼:默认输入 ζ=1% 时,仅结构自由衰减的离散等效阻尼比约为 3.5%。Sc 显示输入的物理质量阻尼参数,未把数值耗散混入其中。当前模型适合观察耦合机制与控制参数,不用于桥梁设计幅值预测。
求解方法与离散方程 · 独立长程及 Sc 核验 · 参数定义与来源
在源码目录运行:
python viv/ale/live_core_check.py
python viv/ale/live_qa/audit_live_frequency.py
python viv/ale/live_qa/audit_live_sweep.py
python viv/ale/live_qa/audit_scruton_branches.py
python viv/ale/live_qa/audit_live_evidence.py第三、第四项分别从冷启动连续升速、从同一成熟流场分出不同阻尼分支,耗时较长。第五项重新对刚生成的实际节点、P2 速度、P1 压力和结构时程做独立边积分、散度、网格和离散能量核对,并更新 live_qa/live-independent-summary.json;任何检查未通过会返回失败退出码。第三项遇到数值失败或未完成全部 5000 步,也会在保存诊断后返回失败退出码。
以上命令应依次运行;第四项需要第三项刚生成的同一成熟流场,最后一项需要前面的频率测试与三个计算结果。核验保存的数据不会被实时页面读取。核心与服务源文件分别为 live_core.py 和 live_server.py。