- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Генерация синуса через аппроксимацию рядом Тейлора
Модератор: Глоб.модераторы
-
- здесь недавно
- Сообщения: 4
- Зарегистрирован: 26 сен 2024, 05:47
- Имя: Антон Дмитриевич
- Страна: Россия
- город/регион: Челябинск
- Благодарил (а): 1 раз
Генерация синуса через аппроксимацию рядом Тейлора
Добрый день! Столкнулся с такой проблемой: хотел сгенерировать функцию синуса, но не с помощью встроенной функции, а при помощи разложения в ряд Тейлора в FB на SCL (-1)^(n) *( x^(2n+1))/(2n+1)!. При вычислении факториала больше (13!) в DB функционального блока появляются мусорные значения типа(-2_555_263_125_365_852, заполнение старших байтов?), предполагаю, что не хватает размерности для типа данных Lint . Вопрос состоит в следующем, можно ли реализовать выполнение данной задачи или в связи с ограничением на целочисленные значения (2^64) напрямую реализовать это не получится? (S7-1500)
-
- эксперт
- Сообщения: 3643
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 8 раз
- Поблагодарили: 286 раз
Генерация синуса через аппроксимацию рядом Тейлора
Готовая библиотека LGF от Сименса - там нет?
Отправлено спустя 3 минуты 17 секунд:
P.S. нету
Отправлено спустя 8 минут 32 секунды:
Считать надо хитро:
(-1)^(i) * (x^(2i+1))/(2i+1)! = (-1)^(i) * (x/1) * (x/2) * (x/3) * ... * (x/(2i+1))
Я здесь не считал никакой факториал, он не нужен.
Отправлено спустя 3 минуты 17 секунд:
P.S. нету
Отправлено спустя 8 минут 32 секунды:
Считать надо хитро:
(-1)^(i) * (x^(2i+1))/(2i+1)! = (-1)^(i) * (x/1) * (x/2) * (x/3) * ... * (x/(2i+1))
Я здесь не считал никакой факториал, он не нужен.
-
- здесь недавно
- Сообщения: 4
- Зарегистрирован: 26 сен 2024, 05:47
- Имя: Антон Дмитриевич
- Страна: Россия
- город/регион: Челябинск
- Благодарил (а): 1 раз
Генерация синуса через аппроксимацию рядом Тейлора
(x/(2i+1)) - это, полагаю последний член последовательности, (-1)^(i) * (x/1) * (x/2) * (x/3) - потому что тут в знаменателе идет чередование четностей,а тут вроде как только нечетные члены (x/(2i+1))? или я не понял?Считать надо хитро:
(-1)^(i) * (x^(2i+1))/(2i+1)! = (-1)^(i) * (x/1) * (x/2) * (x/3) * ... * (x/(2i+1))