2014 dxdy logo

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

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


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 11:34 


13/06/19
13
Здравствуйте, уважаемые пользователи форума. Есть одна задачка, но сам я затрудняюсь в решении, надеюсь, вам она будет интересна.

Имеется ломаная (незамкнутая), состоящая из трёх отрезков. Даны координаты на плоскости начала и конца ломаной и длины этих отрезков. Нужно найти координаты двух промежуточных изломов, если известно что угол между первым и вторым отрезком соотносится с углом между вторым и третьим как некоторая величина (тоже дана).

Можно попробовать её переформулировать так: в произвольном четырёхугольнике известны длины двух сторон, обоих диагоналей и соотношение двух противолежащих углов, построить этот четырёхугольник.

Если представить себе неподвижными начало и конец ломаной, то промежуточные точки должны находиться на окружностях с таковыми центрами радиусами в длину отрезков. Обозначим точки как A, B, C, D. Тогда можно составить систему из 4-х уравнений:

$(x(A)-x(B))^2+(y(A)-y(B))^2=|AB|^2$
$(x(D)-x(C))^2+(y(D)-y(C))^2=|CD|^2$
$(x(B)-x(C))^2+(y(B)-y(C))^2=|BC|^2$
$ABC=c\cdot BCD$,
где x и y - координаты соответствующих точек, |XX| - длина отрезка, c - соотношение углов.

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


Можно, допустим, для простоты положить точку B в начало координат, а C - справа на ось Ox. Тогда уравнения можно собрать в кучу примерно так:

$\arcsin(x(B)/AB)=c\cdot \arcsin(x(C)/CD)$
$\sqrt{x(B)+(BC-x(C))^2+(y(B)+y(C))^2}=d$,
где d - расстояние между A и D.

Дальше уже с трудом представляю, что с этим делать и как решать.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 12:21 
Заслуженный участник


26/05/14
981
Попробуйте решить случай $c = 1$.
Кажется, проще будет искать не координаты $x, y$ а углы $\alpha, \beta$.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 12:52 


13/06/19
13
Разумеется, уже чего только не пробовал. Даже попытался смоделировать программно, какие значения должны быть. Вот, к примеру, зависимость координаты x крайних точек от длины диагонали при длинах всех отрезков = 3 и с = 1 (ось x - длина диагонали, у противоположной точки x такой же, но с минусом):
Изображение

Нечто арккосинусоподобное, но аппроксимации вроде как не поддающееся.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 13:01 
Заслуженный участник


26/05/14
981
Если $\alpha = \beta$, то что можно сказать про отрезки $AB$ и $CD$?

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 13:12 


13/06/19
13
А вот то же самое для угла:
Изображение

Цитата:
Если $\alpha = \beta$, то что можно сказать про отрезки $AB$ и $CD$?

Да, в общем-то, без учёта координат A и D - ничего. Разве что если мы полагаем ихние длины равными, то ломаная будет симметричной.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 13:43 
Заслуженный участник


26/05/14
981
Если $\alpha = \beta$, что можно сказать про углы $\angle BAD$ и $\angle CDA$?

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 13:57 
Заслуженный участник


03/01/09
1682
москва
Можно получить уравнение для угла $\beta $, которое придется решать численно, а затем построить 4 угольник.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 14:44 


13/06/19
13
slavav в сообщении #1399111 писал(а):
Если $\alpha = \beta$, что можно сказать про углы $\angle BAD$ и $\angle CDA$?

А что про них говорить-то, ежели мы не знаем координаты точек B и С? То же, что и про отрезки: если углы альфа и бета равны и равны длины крайних плеч ломаной, то и эти углы равны, а AD пересекает ВС по центру.

Кстати, если рассматривать задачу геометрически, то да, имеем дело с таким вот 4-угольником:
Изображение

Цитата:
Можно получить уравнение для угла $\beta $, которое придется решать численно, а затем построить 4 угольник.

Что имеете в виду? Если положить BC на Ox, то оба угла очевидным образом выражаются через арксинус одного отношения (длины отрезка к иксу). Через длины отрезков - даже не знаю, как.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 15:15 
Заслуженный участник


26/05/14
981
Хорошо. Добавлю что равенство плеч не нужно. $\alpha = \beta \Rightarrow \angle BAD = \angle CDA$. Теперь выразите длину $BC$ как функцию $\angle BAD$.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 16:07 
Заслуженный участник


03/01/09
1682
москва
mihiv в сообщении #1399115 писал(а):
Можно получить уравнение для $\beta $

Сумма и модули трех векторов известны. $(\mathbf{p}+\mathbf{q}+\mathbf{r})^2=\mathbf{d}^2$, углы между векторами $p,q,r $ выражаются через $\beta $.

 i  Pphantom:
Что-то вы с набором формул сделали очень этакое. Поправил.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 16:23 


13/06/19
13
Цитата:
Добавлю что равенство плеч не нужно. $\alpha = \beta \Rightarrow \angle BAD = \angle CDA$. Теперь выразите длину $BC$ как функцию $\angle BAD$.

Так в случае отсутствия равенства плеч и зависимости такой, как я понимаю, нету:
Изображение

А если есть равенство, то и диагональ пополам делится, тут проще:
$(BC/2) ^ 2 = AB^2 + (d/2)^2 - 2\cdot AB\cdot (d/2)^2 \cdot \cos \angle BAD$

-- 13.06.2019, 15:27 --

Цитата:
Сумма и модули трех векторов известны.

Ну хорошо, выразим мы это векторами. Но конечном счёте всё просто сведётся к той системе из 4-х уравнений в первом сообщении, если не ошибаюсь.


* обоих диагоналей
обеих, т. е.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 17:13 


18/05/15
680
Может, чисто аналитически сработает? Скажем пусть $r_1 = \vec{AB}, r_2 =\vec{BC}, r_3 =\vec{CD}, r_4 =\vec{AD}$. Тогда $ r_1 + r_2 + r_3=r_4,$ и следовательно $(r_1,r_i) + (r_2,r_i) + (r_3,r_i) = (r_4,r_i), i=1,..,4$. Есть четыре уравнения. Если еще учесть, что $$r_2 = \frac{|r_2|}{|r_1|}T_{\pi-\alpha}r_1, \quad r_3 = \frac{|r_3|}{|r_2|}T_{\beta-\pi}r_2,$$ то может и хватит? Здесь $T_\alpha$ - оператор поворота вектора на угол $\alpha$.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 17:51 
Заслуженный участник


26/05/14
981
Rusich в сообщении #1399138 писал(а):
А если есть равенство, то и диагональ пополам делится, тут проще:
$(BC/2) ^ 2 = AB^2 + (d/2)^2 - 2\cdot AB\cdot (d/2)^2 \cdot \cos \angle BAD$


Расстояние между параллельными прямыми $AB$ и $CD$ равно одновременно $\left\lvert AD \right\rvert \cos \angle BAD$ и $\left\lvert BC \right\rvert \cos \alpha$.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 20:10 
Аватара пользователя


26/05/12
1534
приходит весна?
Я бы решал эту задачу так. Поместил бы точку B в начало координат, отрезок BC направил бы вдоль положительного направления оси Ox, задался бы неизвестным значением угла $\alpha$. Теперь легко находятся угол $\beta$, координаты точек A и D и расстояние AD, которое дано. Получилась система относительно угла $\alpha$. Находим его численно (так как при произвольном значении коэффициента c уравнение является трансцендентным). Дальше останется только повернуть и сместить всю фигуру, чтобы точки A и D совпали с заданными в условии координатами.

 Профиль  
                  
 
 Re: Построить ломаную (задача о кошачьей ноге)
Сообщение13.06.2019, 22:04 


13/06/19
13
slavav в сообщении #1399147 писал(а):
Расстояние между параллельными прямыми $AB$ и $CD$ равно одновременно $\left\lvert AD \right\rvert \cos \angle BAD$ и $\left\lvert BC \right\rvert \cos \alpha$.

Ну да, с этим случаем ещё можно попытаться что-то вывести, но всё ж это лишь один частный случай. А как это обобщить?

ihq.pl в сообщении #1399141 писал(а):
Скажем пусть $r_1 = \vec{AB}, r_2 =\vec{BC}, r_3 =\vec{CD}, r_4 =\vec{AD}$. Тогда $ r_1 + r_2 + r_3=r_4,$ и следовательно $(r_1,r_i) + (r_2,r_i) + (r_3,r_i) = (r_4,r_i), i=1,..,4$. Есть четыре уравнения. Если еще учесть, что $$r_2 = \frac{|r_2|}{|r_1|}T_{\pi-\alpha}r_1, \quad r_3 = \frac{|r_3|}{|r_2|}T_{\beta-\pi}r_2,$$ то может и хватит?

Да, хватит, чтобы описать систему, что эквивалентно тем четырём уравнениям:

Rusich в сообщении #1399075 писал(а):
$(x(A)-x(B))^2+(y(A)-y(B))^2=|AB|^2$
$(x(D)-x(C))^2+(y(D)-y(C))^2=|CD|^2$
$(x(B)-x(C))^2+(y(B)-y(C))^2=|BC|^2$
$ABC=c\cdot BCD$

Этого достаточно, чтобы проверить, верно ли построена ломаная, но не построить её.

B@R5uk в сообщении #1399163 писал(а):
Поместил бы точку B в начало координат, отрезок BC направил бы вдоль положительного направления оси Ox, задался бы неизвестным значением угла $\alpha$. Теперь легко находятся угол $\beta$, координаты точек A и D и расстояние AD, которое дано. Получилась система относительно угла $\alpha$.

Так это тоже сделано, систему можно свести таким образом к двум уравнениям:

Rusich в сообщении #1399075 писал(а):
$\arcsin(x(B)/AB)=c\cdot \arcsin(x(C)/CD)$
$\sqrt{x(B)+(BC-x(C))^2+(y(B)+y(C))^2}=d$


А дальше что, методом подбора значения? Мне почему-то думается, что тут есть более элегантное решение. С таким же успехом можно просто "в лоб" вращать две точки вокруг других двух и измерять угол.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group