Страница 1 из 2

Найти все точки пересечений двух синусоид

Добавлено: Ср авг 01, 2012 3:24 pm
alexand-o
Добрый день!
Прошу помочь в написании программки по определению всех точек пересечений двух синусоид в определенном интервале. У меня ничего не получается! Очень нужно! Спасибо!

Условия:
первая синусоида с периодом 24 часа
вторая синусоида с периодом 365 дней
амплитуды одинаковые.

Необходимо найти все значения как по оси времени (х) так и по оси у.

Спасибо!

Re: Найти все точки пересечений двух синусоид

Добавлено: Ср авг 01, 2012 5:09 pm
VFO
alexand-o писал(а):Добрый день!
Прошу помочь в написании программки по определению всех точек пересечений двух синусоид в определенном интервале. У меня ничего не получается! Очень нужно! Спасибо!

Условия:
первая синусоида с периодом 24 часа
вторая синусоида с периодом 365 дней
амплитуды одинаковые.

Необходимо найти все значения как по оси времени (х) так и по оси у.

Спасибо!


Все решения:
Изображение

Добавлено: Ср авг 01, 2012 5:53 pm
alexand-o
Спасибо за готовое решение, но у меня ничего не получается!
Если можно, поясните, пожалуйста! и пришлите мне файл!

Спасибо!

Добавлено: Ср авг 01, 2012 6:01 pm
alexand-o
моя почта
alexand-o@mail.ru

Добавлено: Чт авг 02, 2012 1:59 pm
Vladimir__
alexand-o писал(а):...но у меня ничего не получается!...

А что именно не получается (при наборе программы со скриншота)?

Добавлено: Пт авг 03, 2012 11:45 am
alexand-o
после fulle я не могу поставить add line. может я пользуюсь старой версией маткада?

и что такое _n?

Спасибо!

Добавлено: Сб авг 04, 2012 2:52 pm
Vladimir__
alexand-o писал(а):после fulle я не могу поставить add line...

Модификатор "fully" используется в символьных вычислениях. В данном случае его необходимо набрать после символьного оператора "solve" (предварительно поставив запятую после него).

Изображение

и что такое _n?

"_n" принадлежит множеству целых чисел "Z". Обозначение "_n" (которое используется по умолчанию) можно заменить на другое используя специальный модификатор "using".


P.S. Файл для Mathcad 14/15: http://rghost.ru/private/39566044/eb5e0 ... 4d4148faf9

Добавлено: Вс авг 05, 2012 5:24 am
VFO
Fully работает только в последних версиях - 14, 15 и Prime 2.0

Добавлено: Вс авг 05, 2012 5:55 am
VFO
Vladimir__ писал(а):
alexand-o писал(а):после fulle я не могу поставить add line...

Модификатор "fully" используется в символьных вычислениях. В данном случае его необходимо набрать после символьного оператора "solve" (предварительно поставив запятую после него).

Изображение

и что такое _n?

"_n" принадлежит множеству целых чисел "Z". Обозначение "_n" (которое используется по умолчанию) можно заменить на другое используя специальный модификатор "using".


P.S. Файл для Mathcad 14/15: http://rghost.ru/private/39566044/eb5e0 ... 4d4148faf9

На множество Z можно опираться при программировании в Mathcad Prime - см. текст вокруг рис. 2 здесь http://twt.mpei.ac.ru/ochkov/Mathcad-15/Fish.pdf

Добавлено: Вс авг 05, 2012 9:06 pm
BAT
alexand-o писал(а):после fulle я не могу поставить add line. может я пользуюсь старой версией маткада? ...
В старых версиях Mathcad`a тоже можно получить решение. Правда, при этом, надо вспомнить формулы тригонометрии, но это думаю полезно, т.к. будет более понятно откуда же берутся решения в более новых версиях. Ниже показано решение в МС11 (и см. http://vyat.narod.ru/Mathcad/for_exponenta/sin_sin4.mcd ), которое после небольшой правки будет работать и в более старших версиях.
Изображение
PS: в решении приведены результаты для а=360, и а=365, т.к. у автора темы запрос был для а=365 дней.
PPS: и, конечно же, это работает в более новых версиях.

Добавлено: Пн авг 06, 2012 9:15 am
Vladimir__
VFO писал(а):...На множество Z можно опираться при программировании в Mathcad Prime - см. текст вокруг рис. 2 здесь http://twt.mpei.ac.ru/ochkov/Mathcad-15/Fish.pdf ...

Спасибо.

Добавлено: Пн авг 06, 2012 2:11 pm
Vladimir__
VFO писал(а):...здесь http://twt.mpei.ac.ru/ochkov/Mathcad-15/Fish.pdf

В статье (на странице 4) есть незаконченное предложение. Здесь:

Изображение

Добавлено: Вт авг 07, 2012 1:42 pm
VFO
Vladimir__ писал(а):
VFO писал(а):...здесь http://twt.mpei.ac.ru/ochkov/Mathcad-15/Fish.pdf

В статье (на странице 4) есть незаконченное предложение. Здесь:

Изображение

Спасибо, я исправил.
Буду рад услышать новые замечания и предложения по другим статьям, готовящимся к публикации - см. конец списка здесь http://twt.mpei.ac.ru/ochkov/work2.htm

А верно ли решение?

Добавлено: Пт авг 10, 2012 2:34 pm
alexand-o
Спасибо всем за участие в решении задачи!
Я разобрался в ваших решениях, но возник вопрос: Разность между двумя Корнями Х2-Х1 должна быть всегда положительной. и меняться в пределах от 0 до 24 часов

А в предложенном решении меняется такого не происходит.


Второй вопрос:
А решить уравнение аналогичное, но с другими параметрами реально?
У1(t)=Asin(at-f1)+C
y2(t)=Bsin(bt-f2)+D
где переменная только t - время

Re: А верно ли решение?

Добавлено: Пт авг 17, 2012 4:12 pm
BAT
alexand-o писал(а):Спасибо всем за участие в решении задачи!
Пожалуйста.
alexand-o писал(а):...Я разобрался в ваших решениях, но возник вопрос: Разность между двумя Корнями Х2-Х1 должна быть всегда положительной. и меняться в пределах от 0 до 24 часов
А в предложенном решении меняется такого не происходит.
Корни х1 и х2 надо совместить (например в одном векторе), а затем отсортировать по убыванию. Тогда можно будет увидеть (или получить) разность между последующим и предыдущим значениями xi.
alexand-o писал(а):Второй вопрос:
А решить уравнение аналогичное, но с другими параметрами реально?
У1(t)=Asin(at-f1)+C
y2(t)=Bsin(bt-f2)+D
где переменная только t - время
Конечно реально, но для этого надо использовать численные методы.