高中物理竞赛一道三角形物体运动的最优解

张开发
2026/4/13 6:23:23 15 分钟阅读

分享文章

高中物理竞赛一道三角形物体运动的最优解
Python代码import math g 9.8 l 1.0 # 水平长度 h 0.75 * l # 竖直高度 ratio h / l # 0.75 # 最短时间路径 (A-B-C) t_min_vertical math.sqrt(2 * h / g) t_min_horizontal l / math.sqrt(2 * g * h) T_min t_min_vertical t_min_horizontal print(f最短时间 T_min {T_min:.6f} s) # 最大时间理论值 (沿斜边极限) t_max_vertical t_min_vertical t_max_horizontal 2 * l / math.sqrt(2 * g * h) T_max_theory t_max_vertical t_max_horizontal print(f最长时间理论值 T_max {T_max_theory:.6f} s) print(f理论比值 T_max/T_min {T_max_theory / T_min:.6f} 7/5 1.4\n) # 不同分段数 N 的阶梯路径 (等比例 Δy (h/l) Δx) for N in [1, 2, 5, 10, 20, 50, 100, 200]: dx l / N dy ratio * dx # 每段竖直下降 # 累计下降和水平位置 S 0.0 # 累计下降 X 0.0 # 累计水平 T_h 0.0 for i in range(N): S dy # 第i段水平开始时的累计下降 v math.sqrt(2 * g * S) T_h dx / v T_total t_min_vertical T_h print(fN {N:3d}, T_total {T_total:.6f} s, 比值 {T_total / T_min:.6f})输出示例数值接近理论值最短时间 T_min 0.654654 s 最长时间理论值 T_max 0.916515 s 理论比值 T_max/T_min 1.400000 7/5 1.4 N 1, T_total 0.654654 s, 比值 1.000000 N 2, T_total 0.784198 s, 比值 1.197981 N 5, T_total 0.856766 s, 比值 1.308747 N 10, T_total 0.884284 s, 比值 1.350868 N 20, T_total 0.899579 s, 比值 1.374235 N 50, T_total 0.909485 s, 比值 1.389369 N 100, T_total 0.912985 s, 比值 1.394582 N 200, T_total 0.914746 s, 比值 1.397270

更多文章