找到多个速度平均值的公式?

时间:2014-03-02 07:01:52

标签: physics

我需要在给定多个2D速度(速度和方向)的情况下找到平均值 编辑: 2D速度。几个例子:

示例1
速度1是90°,速度为10像素或每秒单位 速度2为270°,速度为5像素或每秒单位。

平均速度为90°,5像素或每秒单位。

示例2
速度1为0°,速度为10像素或每秒单位
速度2是180°,速度为10像素或每秒单位
速度3以8像素或每秒单位的速度为90°

平均速度为90°,8像素或每秒单位

示例3
速度1为0°,10像素或每秒单位 速度2在10像素或每秒单位时为90°

平均速度为45°,14.142像素或每秒单位

我使用的是JavaScript,但它主要是一个与语言无关的问题,如果需要,我可以将其转换为JavaScript。

5 个答案:

答案 0 :(得分:1)

如果你要使用一堆角度,我只计算每个速度,

vx = v * cos(theta), vy = v * sin(theta)

然后将x速度和y速度分别作为矢量分量求和,除以速度总数,

sum(vx)/ total v,sum(vy)/ total v

然后最终用最终的vx和vy计算最终的速度和方向。速度的大小可以通过毕达哥拉斯定理的简单应用找到,然后最终角度应该是tan-1(y / x)。


每个例子#3

vx = 10 * cos(90)+ 10 * cos(0)= 10, vy = 10 * sin(90)+ 10 * sin(0)= 10

因此,tan-1(10/10)= tan-1(1)= 45

然后最终幅度为sqrt(10 ^ 2 + 10 ^ 2)= 14.142

答案 1 :(得分:1)

这些是向量,您应该使用向量添加来添加它们。所以正确和向上是正面的,而左和右是负面的。 添加从左到右的向量(x轴)。

实施例1 = -10 + 5 = -5

示例2 = -8 = -8

示例3 = 10 = 10.(90度通常是向右90度)

同样地添加你的起伏,你得到这些速度,左边的左边到右边的括号,你的右上角。 (-5,0)

( - 8,0)

(10,10)

这些向量包含绘制对象运动所需的所有信息,您无需计算角度来绘制对象的运动。如果由于某种原因你宁愿使用速度(类似于速度,但不同)和角度,那么你必须首先计算上面的矢量,然后使用毕达哥拉斯定理找到速度和简单的三角学来获得角度。像这样:

    var speed = Math.sqrt(x * x + y * y);
    var tangeant = y / x;
    var angleRadians = Math.atan(tangeant);
    var angleDegrees = angleRadians * (180 / Math.PI);

我会警告你,你应该和知道三角学的人交谈并测试一下。这样的工作可能存在误导性的错误。

答案 2 :(得分:0)

要获得平均值: 添加每个速度,然后除以速度数。

10mph + 20mph / 2 = 15
12mph + 14mph + 13mph + 16mph / 4 = 14 (13,75)

答案 3 :(得分:0)

从您的示例中,您似乎想要添加二维向量,而不是平均值。

E.g。示例2可以表示为

(0,10)+(0,-10)+( - 8,0)=( - 8,0)

然后速度等于矢量的长度:

SQRT(X ^ 2 + Y ^ 2)

答案 4 :(得分:0)

这不是平均值,因为它只是基本的矢量添加。你找到了多个“像素矢量”并将它们加在一起。如果你有一个向右2像素的速度向量,1向上,你将它添加到左边3像素和左下3像素的速度矢量,你将得到一个左边1像素的速度矢量,1下来的速度矢量。

因此速度由

定义

pij =像素上升或( - )下降

pii =右边的像素或( - )左边的

speedi = pii1 + pii2 = 2-3 = -1(剩下1个像素)

speedj = pij1 + pij2 = 1-2 = -1(向下1个像素)

从那里,您需要确定哪些方向是正面的,哪些是负面的。我建议左边是负数,下面是负数(如数学图表)。

矢量的角度是arctan(speedj / speedi)

arctan(-1 / -1)= 45度