2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Расстояние между двумя прямыми через точку
Сообщение08.03.2013, 15:17 
Размышляя над алгоритмом поиска прямого пути в графах, наткнулся на следующую подзадачу:

На плоскости есть две прямые a, b и точка C. Через эту точку проходит третья прямая c и пересекает первые две. Таким образом получаем две точки пересечения. Вычисляем расстояние между ними. Вращая прямую с вокруг точки, получаем различные расстояния. Короче говоря, надо найти такой угол прямой с, чтобы расстояние было наименьшим.

Вот картинка:
Изображение

Я пытался решить аналитически. Посчитал, что точка пересечения первых двух прямых лежит в начале координат, затем вывел функцию расстояния от угла наклона прямой с. Взял производную, но она получилась громоздкая, поэтому я оставил это дело. Численно задача довольно быстро решается, но хотелось бы все же узнать, можно ли решить аналитически.

 
 
 
 Re: Расстояние между двумя прямыми через точку
Сообщение08.03.2013, 16:10 
По моему вопрос стоит так: какой перпендикуляр меньше $c \perp b$ или $c \perp a$

 
 
 
 Re: Расстояние между двумя прямыми через точку
Сообщение08.03.2013, 16:20 
markell в сообщении #692642 писал(а):
Взял производную, но она получилась громоздкая, поэтому я оставил это дело.
Уравнение 4-й степени относительно искомого наклона прямой. Раскладывается на линейное и кубическое. Линейное соответствует очевидному минимуму --- искомая прямая проходит через точку пересечения двух данных прямых, мимнимум равен нулю. А аналитически, конечно, можно --- кубическое уравнение решается "аналитически" же.

 
 
 
 Re: Расстояние между двумя прямыми через точку
Сообщение08.03.2013, 16:29 
Keter в сообщении #692659 писал(а):
По моему вопрос стоит так: какой перпендикуляр меньше $c \perp b$ или $c \perp a$

Было бы все так просто... Пусть, например, точка С лежит посередине (расстояние от нее до обеих прямых одинаковое). Тогда достаточно очевидно, что кратчайшее растояние будет в том случае, если прямая с образует равные углы с прямыми а и b. Перпендикуляром здесь не будет пахнуть. Вот если точка С лежит на одной из прямых, тогда да.

Хотя я, кажется, смог-таки вывести формулу. Рассмотрел отрезок прямой с как сторону треугольника, построил функцию его длины (минимум которой и нужно найти), используя школьную теорему синусов. Нашел производную, приравнял к нулю и внезапно получил уравнение третьей степени от тангенса угла наклона прямой с. Сравнил это аналитическое решение с полученным ранее численным решением - совпало.

 
 
 
 Re: Расстояние между двумя прямыми через точку
Сообщение08.03.2013, 17:30 
Аватара пользователя
 i  markell, пишите формулы ТеХом. Инструкции по оформлению формул здесь или здесь (или в этом видеоролике).
В случае неправильного оформления формул тема будет перемещена в Карантин.

 
 
 
 Re: Расстояние между двумя прямыми через точку
Сообщение08.03.2013, 22:04 
Должен быть равнобедренный треугольник. Точка $C$ лежит на основании треугольника.

 
 
 
 Re: Расстояние между двумя прямыми через точку
Сообщение08.03.2013, 22:21 
Нет же:
markell в сообщении #692664 писал(а):
Перпендикуляром здесь не будет пахнуть. Вот если точка С лежит на одной из прямых, тогда да.

Этот частный случай вместе с наблюдением, что углы в зависимоси от положения точки меняются непрерывно, говорит против такой гипотезы.

 
 
 
 Re: Расстояние между двумя прямыми через точку
Сообщение09.03.2013, 09:21 
mihiv в сообщении #692808 писал(а):
Должен быть равнобедренный треугольник.

Ошибка.

 
 
 [ Сообщений: 8 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group