簡體   English   中英

如何計算各個維度上的合成重力加速度?

[英]How to calculate resultant gravitational acceleration in separate dimensions?

例如,如果我想知道p中的合力,則不需要找到f1,f2和f3的大小和角度,也不需要使用任何sin()和cos(),我需要要做的是分別在x和y維度上添加力,以便找到合力f:

f.x=f1.x+f2.x+f3.x
f.y=f1.y+f2.y+f3.y

在此處輸入圖片說明

但是現在,我想在點p上找到合成的重力加速度:

在此處輸入圖片說明

我知道每個球的質量和位置,是否有任何方法類似於以上找到合力的方法,即僅使用對m1,x1,x2,m2的一些簡單操作即可計算出單獨的尺寸gx和gy中的合力g?

g.x=(some operations on m1,x1,y1,m2...)
g.y=(some operations on m1,x1,y1,m2...)

從字面上看,總力就是總力。 您可以計算由於每個對象而產生的重力,並將它們完全像以前一樣相加。 其中之一的重力是:

F = (G * mass1 * mass2) / (distance * distance)

https://en.wikipedia.org/wiki/Newton%27s_law_of_universal_gravitation

編輯:對我來說,我錯過了部分被問到的問題。 如上所述,一旦獲得力,就將其乘以朝向行星中心的方向向量。 Google歸一化向量,但基本上是:

Direction.X = (Planet.X - SpaceShip.X) / distanceToPlanet
and Y and Z
Force = GMm/rr * Direction

我了解您想計算經典力學中的引力場。

本文提供了一般公式,但您必須進行一些計算才能僅基於笛卡爾坐標和質量。

我們假設我們的模型是二維的。 經過一些無聊的計算之后,可以寫出在點P處產生的重力加速度:

  • mi球的質量我
  • (xi,yi)球i的位置
  • (xp,yp)點P的位置
  • G重力常數(6.674 e10−11 N.m2 / kg2)

這些公式使用簡單的運算,並且可以輕松地以c ++,python或java等語言實現。

注意:您必須遵守G單位,即以米為單位的坐標和以千克為單位的質量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM