低雷诺数涡激振动 CFD–SDOF 实算记录

本页数据来自本仓库实际运行的二维 D2Q9 BGK 流动求解器。气动力由圆柱壁面动量交换计算,并反馈质量–弹簧–阻尼结构;没有把正弦函数当作 CFD 升力,也没有把结构位移事后叠在固定圆柱流场上。

模型、网格和耦合

- 结构:m ÿ + c ẏ + k y = F_L(CFD);f_n=sqrt(k/m)/(2π),c=2ζm(2πf_n)。

- 本模块质量比明确采用 m*=m/(ρπD²/4)=10,区别于部分教材采用的 m/(ρD²)。这里 m 为结构本身单位跨长质量,未重复加入流体附加质量。

- 运动坐标 X=ξ, Y=η+y(t),全域网格随圆柱刚体平移,Jacobian恒为1;相对流速 w=u_lab−ẏ e_y。这是一种不变形的随体动网格;没有局部网格变形和重网格。

- 非惯性源 F_frame=−ρ ÿ e_y 用 Guo 源项。密度给出的压力保持物理压力,未用吸收惯性势的修正压力,所以壁面力不再补/减排开流体的惯性力。

- 入口实验室横速为0,因此相对入口横速为 −ẏ;出口密度1、速度非平衡外推。上下周期边界间距10D,严格表示同相运动的周期圆柱阵列,不能当成已验证的无限域单圆柱。

- 流体使用上一步壁面力驱动下一步结构,属于显式分区、一步力滞后。结构用隐式中点积分;其速度增量准确用于该步网格加速度。改变惯性源时显式转换分布函数半力约定,避免坐标变换的伪加速度。未声称强耦合迭代收敛。

- 流体为低马赫数弱可压近似,圆柱采用阶梯壁面链接反弹。D16 主组,计算域20D×10D,圆柱中心位于(4D,5.07D)。公开浮点原始 NPZ、参数JSON和日志可复查。

扫风速协议与单位

本组是各风速独立持速45个固有周期,初始结构静止、相同微小流场扰动。它不是一次连续加速风速扫描,不用于证明滞回或瞬时越共振响应。五个风速下保持黏度、结构质量、刚度及ζ=0.01不变,Re=20Ur;另外在Ur=5.5对照ζ=0.08与固定圆柱。

时间为 f_n t,位移为 y/D,频率为 f/f_n,流场涡量为 ωD/U。没有将任意格子单位硬解释成真实桥梁或真实空气中的SI工况。

实算结果

统计窗口最后20个固有周期;幅值为该窗口半峰峰值。频率列为Hann窗FFT主峰,分辨率约0.05 f_n。原始JSON另有过零频率,但非正弦升力可能一周期多次过零,不能把其原始过零频率当作主频验证;例如Ur5.5升力原始过零结果约1.336,而频谱主峰插值约1.001。固定体位移恒为0,所以不报告位移频率。

工况UrReζA/D 半峰峰fL/fnfy/fnCL rmsCD 均值
ur353.5700.010.00800.5490.5490.19211.6807
ur454.5900.010.09410.7990.7990.46811.6832
ur555.51100.010.37410.9990.9990.11402.0730
ur656.51300.010.07541.1991.1990.22641.5704
ur8081600.010.04561.5481.5480.36961.5988
damped555.51100.080.14360.9990.9990.33841.7886
fixed555.51100.010.00000.999—0.32291.6120

有限时间记录存在过渡过程。下表分别比较倒数第二个10周期与最后10周期的半峰峰值,不能仅靠末段图像宣布全部工况达到稳态。

工况前10周期 A/D后10周期 A/D独立差分运动方程RMS残差采样能量闭合误差
ur350.008010.007991.067%3.149%
ur450.093170.094090.613%1.317%
ur550.374010.374058.460%0.004%
ur650.075390.069641.435%1.784%
ur800.044630.044871.903%6.701%
damped550.143560.143111.770%0.020%
fixed550.000000.00000——

独立差分残差从导出位移中心差分求导,未使用保存的加速度自证。能量检查计算 ΔE − ∫F_L ẏdt + ∫c ẏ²dt,以各项绝对值之和归一化;稀疏采样、积分求积和显式力滞后都会留下有限误差。

独立审计 qa/fsi-main-data-audit.json 进一步区分了导数近似和耦合误差:Ur5.5共振附近惯性项与刚度项相抵,二阶差分小误差除以较小升力后得到约8.4%;改用四阶差分降至约1.19%,相对各力项RMS之和为约0.0158%。原始同刻升力的能量收支误差仍如上表保留。按该显式算法每步保持旧升力的规则,将等效作用力置于半个格子时间步之前,并独立样条重建积分,七组算法能量闭合误差均不超过约0.021%。这证明更新算法内部一致,不能消除其一阶力滞后带来的物理相位误差,也不能据此宣称强耦合精度或CFD网格收敛。

独立方法核验与网格敏感性

verify-fsi.py 单独检查恒正/负加速度及变加速度无圆柱场,验证实验室速度不随计算坐标产生伪运动;还直接调用生产结构更新,检查无阻尼能量守恒与自由衰减阻尼识别。机器可读结果在 qa/fsi-independent-method-checks.json,总报告JSON也内嵌同一证据。早期错误源时序和结构积分的拒收结果保留在 qa/fsi-independent-method-checks-rejected-initial.json,未用于网页。

同一 Re=110、Ur=5.5、质量比10、阻尼比0.01,均计算45个固有周期。采用相同入口格子速度,因此这是空间与时间一起细化的敏感性检查,不能证明正式网格收敛。

指标D16D20相对D20差异
amplitudeHalfPeakToPeak0.374100.410758.92%
yRms0.263130.287668.53%
CLrms0.114000.124128.15%
CDmean2.072962.098311.21%
fLiftOverFn0.998750.998750.00%
fYOverFn0.998750.998750.00%

流场与曲线同步、数据打包

每个工况最后6个固有周期取48个流场快照;每个快照同步保存精确同一步的时间、升力、阻力、位移、速度和加速度。显示流场时应读取对应 frames 状态;不能拿另一时间的结构波形配流场。画面以随体坐标保存,实验室显示需将所有网格与涡量加上同帧 y/D 平移,或明确显示随体视图。

fsi-data.js 是离线回放数据,并非浏览器即时CFD。涡量以 uint8 编码:ωD/U=(byte−128)×0.04,超出约±5.1的值饱和显示;量化前原始float32场在NPZ中。主曲线每0.025个固有周期采样,频谱仅打包到3 f_n。每个原始文件的SHA256写入数据metadata。

使用边界

可用于讲解涡脱落频率、固有频率、质量/刚度/阻尼、气动力—结构运动—流场反馈以及频率接近区的响应放大。有限域、阶梯壁面和较粗网格仍可能改变阻力、同步区范围及幅值;双网格对照只提供敏感性信息。不可用于实际桥梁的锁定风速、振幅、舒适度或安全验算,也不以本数据证明经典高雷诺数实验的分支结构。

方法来源

- Guo, Zheng & Shi (2002), Discrete lattice effects on the forcing term in the lattice Boltzmann method:Guo源项与宏观半力速度修正。

- Mishra et al. (2020), Transverse vortex-induced vibration of a circular cylinder…:随圆柱运动的不变形网格与非惯性加速度项。

- lbmpy force models documentation:源项的一阶/二阶矩与速度修正的独立说明。

- Guo, Zheng & Shi (2002), Non-equilibrium extrapolation method for velocity and pressure boundary conditions:非平衡外推入口/出口的基础方法;本实现另作变惯性源的半步约定转换。

这些文献支持方法和方程,不构成本实现已被文献标定的声明。