Математический форум Math Help Planet
Обсуждение и решение задач по математике, физике, химии, экономике Теоретический раздел |
| Часовой пояс: UTC + 3 часа [ Летнее время ] |
новый онлайн-сервис число, сумма и дата прописью |
|
|
Часовой пояс: UTC + 3 часа [ Летнее время ] |
|
Страница 2 из 3 |
[ Сообщений: 21 ] | На страницу Пред. 1, 2, 3 След. |
|
| Автор | Сообщение | |
|---|---|---|
| erjoma |
|
|
|
[math]\left\{ \begin{array}{l}r = \frac{{ab - ab\cos \frac{{{t_{i + 1}} - {t_i}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_{i + 1}} + {t_i}}}{2} + {b^2}{{\cos }^2}\frac{{{t_{i + 1}} + {t_i}}}{2}} }},i = 1,2,..N - 1\\r = \frac{{ab - ab\cos \frac{{{t_N} - {t_1}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_N} + {t_1}}}{2} + {b^2}{{\cos }^2}\frac{{{t_N} + {t_1}}}{2}} }}\end{array} \right.[/math] |
||
| Вернуться к началу | ||
| Betelgeuse |
|
|
|
Avgust,
![]() я полагаю (хоть и не смогу этого доказать), что задача имеет решение при любых значениях эксцентриситета, и при любых N, не меньших единицы. (возможно, даже для нецелых N, но в это вдаваться сейчас точно не стоит, т.к. практическое значение имеют только целые N >= 3) P.S. Но даже если у вас есть идея решения, которое работает только для четных N, предложите его пожалуйста. |
||
| Вернуться к началу | ||
| Betelgeuse |
|
|
|
erjoma, спасибо за уравнения! пытаюсь понять как это использовать для решения задачи...
t(i) - это угловое направление на i-тую вершину многоугольника из центра эллипса? тогда, если записать систему для одной вершины, то получаем 2 уравнения с 5-ю неизвестными (r, t(1), t(i), t(i+1), t(N)). если же записать для каждой вершины - получаем, например для N = 15 - систему из 30-и уравнений с 16-ю неизвестными, верно? причем для каждого значения N должна быть составлена своя такая система. это возможно решить? и если да, то не будет ли решение таких систем гораздо более ресурсоёмким, чем даже чисто эмпирический перебор возможных значений h? |
||
| Вернуться к началу | ||
| erjoma |
|
|
|
Betelgeuse писал(а): t(i) - это угловое направление на i-тую вершину многоугольника из центра эллипса? Нет, т.к. параметр эллипса не является углом между радиусом вектором точки на эли псе и осью [math]Ox[/math] ![]() Betelgeuse писал(а): тогда, если записать систему для одной вершины, то получаем 2 уравнения с 5-ю неизвестными (r, t(1), t(i), t(i+1), t(N)).если же записать для каждой вершины - получаем, например для N = 15 - систему из 30-и уравнений с 16-ю неизвестными, верно?причем для каждого значения N должна быть составлена списалвоя такая система. Если [math]r[/math] считается неизвестным, то для каждого [math]N[/math] задача сводится к системе с [math]N-1[/math] уравнением с [math]N[/math] неизвестными. Систему я неправильно записал. Правильно так: [math]\left\{ \begin{array}{l}r = \frac{{ab - ab\cos \frac{{{t_{i + 1}} - {t_i}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_{i + 1}} + {t_i}}}{2} + {b^2}{{\cos }^2}\frac{{{t_{i + 1}} + {t_i}}}{2}} }},i = 1,2,..N - 1\\r = \frac{{ab + ab\cos \frac{{{t_N} - {t_1}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_N} + {t_1}}}{2} + {b^2}{{\cos }^2}\frac{{{t_N} + {t_1}}}{2}} }}\end{array} \right.[/math] Если [math]r[/math] неизвестно, то тогда [math]\left\{ {\begin{array}{*{20}{l}}{\frac{{ab - ab\cos \frac{{{t_{i + 1}} - {t_i}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_{i + 1}} + {t_i}}}{2} + {b^2}{{\cos }^2}\frac{{{t_{i + 1}} + {t_i}}}{2}} }} = \frac{{ab - ab\cos \frac{{{t_{i + 2}} - {t_{i + 1}}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_{i + 1}} + {t_{i + 2}}}}{2} + {b^2}{{\cos }^2}\frac{{{t_{i + 1}} + {t_{i + 2}}}}{2}} }},i = 1,2,..N - 2}\\{\frac{{ab + ab\cos \frac{{{t_N} - {t_1}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_N} + {t_1}}}{2} + {b^2}{{\cos }^2}\frac{{{t_N} + {t_1}}}{2}} }} = \frac{{ab - ab\cos \frac{{{t_N} - {t_{N - 1}}}}{2}}}{{\sqrt {{a^2}{{\sin }^2}\frac{{{t_N} + {t_{N - 1}}}}{2} + {b^2}{{\cos }^2}\frac{{{t_N} + {t_{N - 1}}}}{2}} }}}\end{array}} \right.[/math] P.S. [math]\begin{array}{l}0 \le {t_1} < {t_2} < {t_3} < ... < {t_N} < 2\pi \\\frac{{{t_{i + 1}} - {t_i}}}{2} \le \frac{\pi }{2},i = 1,2,..N - 1\\\frac{{{t_N} - {t_1}}}{2} > \frac{\pi }{2}\end{array}[/math] |
||
| Вернуться к началу | ||
| За это сообщение пользователю erjoma "Спасибо" сказали: Betelgeuse |
||
| erjoma |
|
|
![]() [math]\left\{ \begin{array}{l}{t_3} = \pi - {t_1}\\{t_4} = 3\pi - {t_5}\\\frac{{1 - \sin \left( {\frac{{{t_1}}}{2} + \frac{\pi }{4}} \right)}}{{\sqrt {\frac{{{{\cos }^2}\left( {\frac{{{t_1}}}{2} + \frac{\pi }{4}} \right)}}{{{a^2}}} + \frac{{{{\sin }^2}\left( {\frac{{{t_1}}}{2} + \frac{\pi }{4}} \right)}}{{{b^2}}}} }} = \frac{{1 + \cos \left( {\frac{{{t_5} - {t_1}}}{2}} \right)}}{{\sqrt {\frac{{{{\cos }^2}\left( {\frac{{{t_1} + {t_5}}}{2}} \right)}}{{{a^2}}} + \frac{{{{\sin }^2}\left( {\frac{{{t_1} + {t_5}}}{2}} \right)}}{{{b^2}}}} }}\\b\left( {1 + \sin {t_5}} \right) = \frac{{1 + \cos \left( {\frac{{{t_5} - {t_1}}}{2}} \right)}}{{\sqrt {\frac{{{{\cos }^2}\left( {\frac{{{t_1} + {t_5}}}{2}} \right)}}{{{a^2}}} + \frac{{{{\sin }^2}\left( {\frac{{{t_1} + {t_5}}}{2}} \right)}}{{{b^2}}}} }}\end{array} \right.[/math] |
||
| Вернуться к началу | ||
| erjoma |
|
|
![]() [math]\left\{ \begin{array}{l}{t_3} = \pi - {t_1}\\{t_4} = \pi + {t_1}\\{t_6} = 2\pi - {t_1}\\\frac{{1 - \sin \left( {\frac{{{t_1}}}{2} + \frac{\pi }{4}} \right)}}{{\sqrt {\frac{{{{\cos }^2}\left( {\frac{{{t_1}}}{2} + \frac{\pi }{4}} \right)}}{{{a^2}}} + \frac{{{{\sin }^2}\left( {\frac{{{t_1}}}{2} + \frac{\pi }{4}} \right)}}{{{b^2}}}} }} = a\left( {1 - \cos {t_1}} \right)\end{array} \right.[/math] |
||
| Вернуться к началу | ||
| Betelgeuse |
|
|
|
erjoma, спасибо за объяснение!
к сожалению, я вижу, что на практике этот подход к решению не очень хорош, так как компьютер решает уравнения очень медленно, по сути это эмпирический перебор вариантов значений неизвестных (к чему можно прийти и более простыми путями). К тому же допустимый диапазон N хочется довести хотя бы до 50. И для каждого значения N мне придётся записать отдельную систему... я вижу другой эмпирический подход к решению и попытаюсь его реализовать: 1. Очевидно, задача "в обратную сторону" решается гораздо проще. Т.е. для известного h найти количество N (пускай даже нецелое) отрезков (сторон многоугольника), которые уложатся в окружность. Простая задача на построение. Вот к ней и нужно перейти. Таким образом, сначала нужно найти некое первое приближение h (стоит еще подумать как это сделать поточнее - от этой точности зависит скорость получения ответа, но для начала подойдёт среднее h для "сплющенного" правильного N-угольника). 2. Затем нужно построить N точек. Для этого, я думаю, нужно получить формулу, по которой для известных параметров эллипса можно от произвольной точки на эллипсе отложить дугу известной высоты h (т.е. найти следующую точку). Вот здесь мне бы пригодилась ваша помощь! (И всех небезразличных ).Очень важно, что это произвольная точка, а не только pi/2, так как практическое значение имеет аппроксимация не только целого эллипса, но и его фрагмента (это еще означает, что лучше теперь перейти от понятия многоугольника к ломаной). Также и конечная точка (в которую должна "прийти" ломаная) в этом случае может быть произвольной. Конец N-ного сегмента ломаной либо "не дойдёт" до этой точки, либо "перейдёт", назовём это нестыковкой. 3. Оценка величины нестыковки, корректировка, исходя из этого, значения h, и возвращение к пункту 2. Если нестыковка меньше некой допустимой epsilon, считать задачу решенной. Таким образом, получим тоже подбор значения неизвестной, но только одной, а не нескольких десятков неизвестных. А это существенно. К тому же сразу получаем возможность решать задачу для любого фрагмента эллипса. Важный момент, или даже "слабое место", - это корректировка h в пункте 3. Я пока не знаю, как её произвести поточнее, чтоб обеспечить быструю сходимость. Буду признателен за любую помощь. |
||
| Вернуться к началу | ||
| Avgust |
|
|
|
В такой постановке задача чрезвычайно интересная. Но надо думать...
|
||
| Вернуться к началу | ||
| erjoma |
|
|
|
Betelgeuse писал(а): 2. Затем нужно построить N точек. Для этого, я думаю, нужно получить формулу, по которой для известных параметров эллипса можно от произвольной точки на эллипсе отложить дугу известной высоты h (т.е. найти следующую точку). Вот здесь мне бы пригодилась ваша помощь! (И всех небезразличных ).Очень важно, что это произвольная точка, а не только pi/2, так как практическое значение имеет аппроксимация не только целого эллипса, но и его фрагмента (это еще означает, что лучше теперь перейти от понятия многоугольника к ломаной). Также и конечная точка (в которую должна "прийти" ломаная) в этом случае может быть произвольной. Конец N-ного сегмента ломаной либо "не дойдёт" до этой точки, либо "перейдёт", назовём это нестыковкой. erjoma писал(а): Пусть точка [math](x_0,y_0)[/math] вершина искомого многоугольника, то уравнение его двух сторон, одним из концов которых является точка [math](x_0,y_0)[/math], можно будет найти, если уравнение [math]\frac{{b\sin t - {y_0} - \frac{{ar\sin t}}{{\sqrt {{a^2}{{\sin }^2}t + {b^2}{{\cos }^2}t} }}}}{{a\cos t - {x_0} - \frac{{br\cos t}}{{\sqrt {{a^2}{{\sin }^2}t + {b^2}{{\cos }^2}t} }}}} = - \frac{{b\cos t}}{{a\sin t}}[/math] разрешимо относительно [math]t[/math] Т.к. [math](x_0,y_0)[/math] лежит на элипсе, то ее координаты можно записать так [math]\left\{ \begin{array}{l}{x_0} = a\cos {t_0}\\{y_0} = b\sin {t_0}\end{array} \right.[/math], тогда уравнение [math]\frac{{b\sin t - {y_0} - \frac{{ar\sin t}}{{\sqrt {{a^2}{{\sin }^2}t + {b^2}{{\cos }^2}t} }}}}{{a\cos t - {x_0} - \frac{{br\cos t}}{{\sqrt {{a^2}{{\sin }^2}t + {b^2}{{\cos }^2}t} }}}} = - \frac{{b\cos t}}{{a\sin t}}[/math] можно привести к виду [math]1 - \cos \left( {t - {t_0}} \right) = r\sqrt {\frac{{{{\sin }^2}t}}{{{b^2}}} + \frac{{{{\cos }^2}t}}{{{a^2}}}}[/math]. Если [math]t_i[/math] корень поcледнего уравнения, то искомая точка [math]\left( {a\cos \left( {2{t_i} - {t_0}} \right),b\sin \left( {2{t_i} - {t_0}} \right)} \right)[/math] |
||
| Вернуться к началу | ||
| За это сообщение пользователю erjoma "Спасибо" сказали: Betelgeuse |
||
| Avgust |
|
|
|
Я бы попробовал решить эту задачу итерационным методом. Нужно только знать одну вещь: даны две любые точки на эллипсе и значение h - максимальное расстояние от дуги до хорды. Мне просто лень выводить, а вы уже с этим возились.
Зная эту зависимость, думаю, будет не очень сложно реализовать предложенный выше алгоритм. |
||
| Вернуться к началу | ||
|
На страницу Пред. 1, 2, 3 След. | [ Сообщений: 21 ] |
| Похожие темы | Автор | Ответы | Просмотры | Последнее сообщение |
|---|---|---|---|---|
|
Аппроксимация
в форуме Численные методы |
14 |
685 |
12 дек 2019, 05:55 |
|
|
Аппроксимация
в форуме Численные методы |
16 |
965 |
19 май 2016, 13:49 |
|
|
Аппроксимация
в форуме MathCad |
44 |
1147 |
21 апр 2022, 10:32 |
|
|
Аппроксимация
в форуме MathCad |
9 |
421 |
26 апр 2022, 19:50 |
|
|
Аппроксимация
в форуме Теория вероятностей |
249 |
3735 |
30 апр 2019, 11:04 |
|
| Аппроксимация функции | 17 |
597 |
11 ноя 2020, 02:07 |
|
|
Аппроксимация Паде
в форуме Численные методы |
1 |
1146 |
04 фев 2016, 19:09 |
|
| Сложная аппроксимация | 58 |
2845 |
11 фев 2015, 21:46 |
|
| Аппроксимация поверхности | 32 |
3280 |
20 фев 2015, 02:51 |
|
|
Аппроксимация Гаусса
в форуме Объявления участников Форума |
9 |
258 |
03 янв 2023, 23:54 |
Часовой пояс: UTC + 3 часа [ Летнее время ] |
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1 |
| Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения |