From 2689acd03167fed4c03959fd72fd6cc3ef959649 Mon Sep 17 00:00:00 2001 From: march3 Date: Sat, 29 Mar 2025 21:16:14 +0800 Subject: [PATCH] =?UTF-8?q?Python=E8=B6=85=E4=BA=BA-=E5=AE=87=E5=AE=99?= =?UTF-8?q?=E6=A8=A1=E6=8B=9F=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- simulators/mpl/mpl_2d_simulator_arrow.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/simulators/mpl/mpl_2d_simulator_arrow.py b/simulators/mpl/mpl_2d_simulator_arrow.py index 205756d..613386a 100644 --- a/simulators/mpl/mpl_2d_simulator_arrow.py +++ b/simulators/mpl/mpl_2d_simulator_arrow.py @@ -118,9 +118,12 @@ def 场景2(): pA, pB = [pxA, pyA], [pxB, pyB] vxA, vxB = 0, 0 + # https://latex.codecogs.com/svg.image?\frac{G.mA.mB}{(r1+r2)^{2}}%20=%20mA.\frac{vA^{2}}{r1}=%20mB.\frac{vB^{2}}{r1} # 万有引力常量 *mA * mB/ math.pow(r1+r2,2) = mA*math.pow(vyA,2)/r1 + # https://latex.codecogs.com/svg.image?vyA%20=%20\sqrt{\frac{G.mA.mB}{(r1+r2)^{2}}*\frac{r1}{mA}} vyA = -math.sqrt((万有引力常量 * mA * mB) / math.pow(r1 + r2, 2) * r1 / mA) # 万有引力常量 *mA * mB/ math.pow(r1+r2,2) = mB*math.pow(vyB,2)/r2 + # https://latex.codecogs.com/svg.image?vyB%20=%20\sqrt{\frac{G.mA.mB}{(r1+r2)^{2}}*\frac{r2}{mB}} vyB = math.sqrt((万有引力常量 * mA * mB) / math.pow(r1 + r2, 2) * r2 / mB) vA, vB = [vxA, vyA], [vxB, vyB] 星球列表 = [ @@ -228,11 +231,12 @@ def 更新(帧): # 更新速度文本 速度文本列表[i].set_position((x + 偏移量_x - 2, y + 偏移量_y + 3)) - 速度文本列表[i].set_text(f"v:{星球.速度[0]:+.2f},{星球.速度[1]:+.2f}(m/s)") - + # 速度文本列表[i].set_text(f"v:{星球.速度[0]:+.2f},{星球.速度[1]:+.2f}(m/s)") + 速度文本列表[i].set_text(f"v:{np.linalg.norm(星球.速度):.2f}(m/s)") # 更新加速度文本 加速度文本列表[i].set_position((x + 偏移量_x - 2, y + 偏移量_y + 5)) - 加速度文本列表[i].set_text(f"a:{星球.加速度[0]:+.2f},{星球.加速度[1]:+.2f}(m/s²)") + # 加速度文本列表[i].set_text(f"a:{星球.加速度[0]:+.2f},{星球.加速度[1]:+.2f}(m/s²)") + 加速度文本列表[i].set_text(f"a:{np.linalg.norm(星球.加速度):.2f}(m/s²)") return 点列表 + 轨迹列表 + 名称列表 + 速度线列表 + 加速度线列表 + 速度文本列表 + 加速度文本列表 -- GitLab