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
1683
москва
Можно получить уравнение для угла $\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
1683
москва
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  След.

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



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

Сейчас этот форум просматривают: QuantumCoder


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

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