2015-08-26 4 views
2

la question est simple objet se déplace de est-ouest avec une vitesse de v1 et un autre de sud-nord avec une vitesse v2. J'ai juste besoin de l'algorithme (formule) pour calculer la plus petite distance entre eux afin que je puisse écrire un programme pour cela. J'ai une distance entre eux et le point de rencontre de leurs chemins ils sont d1 et d2.comment calculer la distance la plus courte entre deux objets en mouvement

+1

La distance la plus courte entre deux objets est une ligne droite. En voyageant perpendiculairement l'un à l'autre, cette ligne devrait être l'hypoténuse du triangle formé en joignant les points. – ChiefTwoPencils

+0

Ya mais son évolution au fil du temps et j'ai besoin de la plus courte entre eux. – user3452098

+0

Donc c'est v constant pour les deux objets non ou accélération constante et vous connaissez le temps écoulé? – ChiefTwoPencils

Répondre

1

En supposant que vous demandiez un espace de 2 jours, à t=0, laissez les points de départ être (d1,0) and (0,d2) sur les axes de coordonnées. Nous pouvons supposer cela parce qu'un objet se déplace toujours horizontalement (direction E-W, le long de l'axe X) et verticalement (direction S-N, le long de l'axe Y). Maintenant, après un certain temps t, leurs positions seront, (d1-t*v1) et (0,d2-t*v2). (Relation vitesse-distance-temps).

Maintenant, la distance entre eux à ce moment-t sera,

D = d^2 = (d1-t*v1)^2 + (d2-t*v2)^2 

Ainsi, en différenciant les deux côtés WRT t,

dD/dt = 2(-v1)(d1-t*v1) + 2(-v2)(d2-t*v2) ....(1) 

Pour D à être minimum, dD/dt = 0 et deuxième différentiel doit être positif. Maintenant, deuxième différentiel:

d2D/dt2 = 2*v1^2 + 2*v2^2 which is positive for all real v1/v2. So, if `dD/dt = 0`, distance will be minimum. 


Ainsi, assimilant (1) = 0, nous obtenons donc

t = (d1v1 + d2v2)/(v1^2 + v2^2) 

, obtenir sqrt(D) à t = --above value-- et qui sera votre réponse. PS: posez ce type de questions sur les mathématiques stackexchange.

+0

Merci pour votre explication – user3452098

+0

Si cela répond à votre problème, acceptez la réponse.Il y a trop de réponses non acceptées sur stackoverflow qui font perdre du temps aux utilisateurs qui tentent de leur répondre. :) – vish4071

+0

déjà fait, je sais que même beaucoup de mes réponses n'ont jamais été exceptées mais sont partis avec des remerciements. – user3452098