Любые (бесплатные) инструменты для вычисления разложения функции в ряд Тейлора?[закрыто]
-
23-09-2019 - |
Вопрос
После мучительных проб и ошибок я пришел к гротескной функции, которая ведет себя так, как я хочу:
(exp(- abs(6 * (x - 0.7)) ^ 2.5 ) + exp(- (x-1.7) ^ 8 ) * 1.2)/1.5785
Меня интересуют только значения для диапазона 0 <= x <= 1 и наклон при x = 1.В этом интервале 0 <= y < также = 1.
Существуют ли какие-либо бесплатные инструменты (веб-или MAC OS X), которые будут генерировать расширение серии Тейлора для этого?(Я нашел один, но он подавился такой сложной формулой и не поддерживает abs.)
Моя цель при создании расширения в ряд состоит в том, что оно может быть более эффективным для вычислений.(Эта функция будет вызываться сотни тысяч раз в Javascript, поэтому производительность является проблемой.)
С другой стороны, я мог бы взять образцы точек и выполнить подгонку кривой, если бы у меня был инструмент для подгонки кривой.(Увы, я не владею MS Excel.) Знаете какие-нибудь бесплатные инструменты для нелинейной подгонки кривых (веб-версии или MAC OS X)?
Решение
GNU Октава это бесплатный пакет, который, помимо прочего, имеет функцию полифит чтобы выполнить подгонку полиномиальной кривой методом наименьших квадратов.Я думаю, что этот (или какой-либо другой пакет с эквивалентной функцией), вероятно, лучше подходит для вашей проблемы, чем расширение ряда Тейлора.Этот член с абсолютным значением может затруднить поиск ряда Тейлора, который хорошо экстраполируется через точку при x = 0.7, где первая производная имеет разрыв.
Другие советы
Это библиотека C ++, которая позволяет вам писать выражения и переменные и вычислять не только значение, но и любую производную по порядку.Компилятор - это тот, кто генерирует код для производных.
Wolfram Alpha сделает это для вас символически бесплатно в Интернете.H/T @ExcessPhase за идею использования abs(x)=sqrt(x*x)
.