Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

Производные от суперпозиции функций.

Автор Марбол, февраля 9, 2012, 08:22

0 Пользователи и 1 гость просматривают эту тему.

Марбол

Что касается уровней вложенности, то для моей цели достаточно уметь вычислять производную однократного вложения функций, а дальнейшие вложения вычисляются путём рекурсии.

Марбол


Марбол

Цитата: Квас от февраля  9, 2012, 22:28
Цитата: Марбол от февраля  9, 2012, 22:24
А что, Мэпл выводит общие формулы заданных рядов?

Вряд ли. Но первые сколько угодно производных он бы посчитал и даже, вероятно, удалось бы в удобоваримом виде их представить.
Фактически, это то же, что расчёт степеней суммы на компьютере, вместо применения бинома Ньютона: мы получим быстрые, но непонятные ответы.
А кроме того, как я уже говорил, у меня самого есть символически дифференцирующая программа для данного случая, и из неё уже нетрудно сделать численно-дифференцирующую. Она оперирует переменными строкового типа (наборы символов), размер которых ограничен; поэтому после взятия 16-ой производной от суперпозиции происходит превышение размера, и ответ не выдаётся. Но этот момент легко обойти.

Марбол


Марбол

Цитата: Марбол от февраля  9, 2012, 23:49
7) Составим также на основе мезонов следующие величины. Отбросим младший член мезона: например,
μ4 = 6 α(3)u(1)u3 + 4 α(2)u(2)u2 [ + 1 α(1)u(3)u ]
получим здесь
(3)u(1)u2 + 4α(2)u(2)u1
Исходный мезон μ4 записан вначале с неправильными показателями степени, хотя дальше используется в правильном виде:
μ4 = 6 α(3)u(1)u2 + 4 α(2)u(2)u1 [ + 1 α(1)u(3)u0 ]

Марбол

Выскажу ещё наблюдение относительно коэффициентов в итоговых формулах.
Это коэффициенты имеют вид N/2. Для сравнения, запишем сначала величины AN, затем - DN и выделим коэффициенты, соответствующие друг другу.

Цитата: Марбол от февраля  9, 2012, 23:49
Например:
A0 = αu,
A1 = α'u2 + αu'
A2 = α''u3 + 2 α'u'u + αu''
A3 = α'''u4 + 3 α''u'u2 + 3 α'u''u + αu'''
A4 = α(4)u5 + 4 α(3)u(1)u3 + 6 α(2)u(2)u2 + 4 α(1)u(3)u + α(0)u(4)
A5 = α(5)u6 + 5 α(4)u(1)u4 + 10 α(3)u(2)u3 + 10 α(2)u(3)u2 + 5 α(1)u(4)u + α(0)u(5)
A6 = α(6)u7 + 6 α(5)u(1)u5 + 15 α(4)u(2)u4 + 20 α(3)u(3)u3 + 15 α(2)u(4)u2 + 6 α(1)u(5)u + α(0)u(6)
A7 = α(7)u8 + 7 α(6)u(1)u6 + 21 α(5)u(2)u5 + 35 α(4)u(3)u4 + 35 α(3)u(4)u3 + 21 α(2)u(5)u2 + 7 α(1)u(6)u + α(0)u(7)

D0h = αu
D1h = A1 + μ1u = A1
D2h = A2 + μ2u(0)
D3h = A3 + 6/2 μ2u(1) + μ3u(0)
D4h = A4 + 10/2 μ2u(2) + 10/2 μ3u(1) + μ4u(0)
D5h = A5 + 15/2 μ2u(3) + 20/2 μ3u(2) + 15/2 μ4u(1) + μ5u(0) + 15 σ3 u(1) 2
D6h = A6 + 21/2 μ2u(4) + 35/2 μ3u(3) + 35/2 μ4u(2) + 21/2 μ5u(1) + μ6u(0) + 105 σ4 u(1) 2.

Также можно заметить, что входящий в формулы производных остаток σ имеет порядок, на два меньший, чем порядок производной. Надо посмотреть, не появляются ли в следующих производных и остатки ещё меньших порядков.

Марбол

Здравствуйте!

Да, в последующих производных появляются и остатки меньих порядков, а также добавочные члены, структура которых мне пока непонятна.

arseniiv

Если вы сможете составить рекуррентные соотношения, можно будет попытаться вылезти в производящие функции и там всё разобрать.

arseniiv

Марбол, живём! Я вывел рекуррентное соотношение. Только там кучища переменных, да ещё и странное оно. Но можно пытаться.

Пусть [tex]A(n; m_1, \ldots, m_l; k) = \left( \left( f^{(n)} \circ g \right) {\prod_{i = 1}^{l} g^{(m_i)} } \right)^{(k)}[/tex].

Тогда имеем [tex]A(n; (m_i)_i; k + 1) = A(n + 1; (m_i)_i; k) +[/tex] некая суммочка, получите её сами просто [там поочерёдно добавляется 1 к каждому из [tex]m_i[/tex]]; больше ни от чего, кроме A, нет зависимостей.

А нам нужно найти [tex]A(0; ; k)[/tex].

Из приведённого мною соотношения и каких-нибудь начальных условий частных случаев для A от нулей-единиц можно бы теоретически сделать какие-то выражения о производящих функциях этого семейства последовательностей (с членами [tex]A(\ldots)[/tex]). Раскладывая функцию в ряд, мы найдём формулу для членов. Если найдём. Но тут беда такая, что это даже не двумерная последовательность, а какая-то страшномногомерная, ведь [tex]m_i[/tex] может быть 0 и более штук разных. Можно теперь брать частные случаи [tex]A(\ldots)[/tex] и называть отдельными именами, и переформулировать то соотношение выше в них: тогда проихводящих функций будет не одна, но можно будет что-то связать.

Поясню, что я имел в виду:

[tex]\begin{array}{l} A_0(n, k) = A(n;; k) \\ A_1(n, k, m_1) = A(n; m_1; k) \\ A_2(n, k, m_1, m_2) = A(n; m_1, m_2; k) \\ \cdots \end{array}[/tex]

Тут мы избавились от кортежа в списке параметров A.

Вообще говоря, с производящими функциями последовательностей, зависящего от нескольких чисел, я дела, в общем, не имел.

Пойду спать, завтра снова в университет...

Марбол

Цитата: arseniiv от февраля 12, 2012, 21:34
Марбол, живём! Я вывел рекуррентное соотношение. Только там кучища переменных, да ещё и странное оно. Но можно пытаться.

Пусть [tex]A(n; m_1, \ldots, m_l; k) = \left( \left( f^{(n)} \circ g \right) {\prod_{i = 1}^{l} g^{(m_i)} } \right)^{(k)}[/tex].
Спасибо! Будем мозговать дальше.

antbez

Зачем что-то выводить?! Такая же формула существует! Формула Фаа ди Бруно!
Quae medicamenta non sanant, ferrum sanat, quae ferrum non sanat, ignis sanat.

arseniiv

Интересно, как он её вывел. :o

Кстати, я немного не то написал, но там всё же можно выйти к производящим функциям, и выходят выражения ох непростые.

Марбол

Цитата: antbez от февраля 13, 2012, 11:43
Зачем что-то выводить?! Такая же формула существует! Формула Фаа ди Бруно!
Прекрасно!! Большое спасибо, Антон! Вы прямо упасли меня от недель тщетного корпения над ноутбуком.

Марбол

Цитата: arseniiv от февраля 13, 2012, 15:43
Интересно, как он её вывел. :o
Я пробовал сгруппировать слагаемые по степеням производных от вложенной функции [обозначил u(N) L = g(N-1) L(x)], а в формуле ди Бруно это сделано по порядкам производной от "внешней", влагающей функции [у меня α(M) = f(M-1)(g)] - что, в общем, надёжнее: ведь не всякое слагаемое содержит первые, но всякое содержит вторые из них.

Марбол

Для порядка, даю цитату из Википедии:
Цитата: Википедия: Формула Фаа ди Бруно
Формула Фаа ди Бруно была названа в честь итальянского математика и священника Франческо Фаа-ди-Бруно, благодаря которому она стала известна (примерно, в 1855 году), хотя в действительности первооткрывателем этой формулы является Луи Франсуа Антони Арбогаст, который более чем за 50 лет до Фаа ди Бруно сделал первые публикации[1] на эту тему.

Оба исследователя получили эту формулу, исследуя n-ую производную композиции двух функций.

Возможно, наиболее известна формула Фаа ди Бруно в следующем виде:

    [tex]{d^n \over dx^n} f(g(x))=\sum \frac{n!}{m_1!\,1!^{m_1}\,m_2!\,2!^{m_2}\,\cdots\,m_n!\,n!^{m_n}}\cdot f^{(m_1+\cdots+m_n)}(g(x))\cdot \prod_{j=1}^n\left(g^{(j)}(x)\right)^{m_j}[/tex],

где сумма по всем n-кортежам неотрицательных целых чисел (m1, ..., mn) удовлетворяет ограничению

    [tex]1\cdot m_1+2\cdot m_2+3\cdot m_3+\cdots+n\cdot m_n=n[/tex].

Иногда, чтобы лучше запомнить, формулу записывают таким образом, однако это снижает очевидность комбинаторной интерпретации:

    [tex]{d^n \over dx^n} f(g(x)) =\sum \frac{n!}{m_1!\,m_2!\,\cdots\,m_n!}\cdot f^{(m_1+\cdots+m_n)}(g(x))\cdot \prod_{j=1}^n\left(\frac{g^{(j)}(x)}{j!}\right)^{m_j}[/tex].

Используя это же выражение с теми же значениями m1 + m2 + ... + mn = k и заметив, что m j должен быть 0 при j > n − k + 1 можно прийти к несколько более простой формуле выраженной через полиномы Белла Bn,k(x1,...,xn−k+1):

    [tex]{d^n \over dx^n} f(g(x)) = \sum_{k=1}^n f^{(k)}(g(x))\cdot B_{n,k}\left(g'(x),g''(x),\dots,g^{(n-k+1)}(x)\right)[/tex]

Квас

Вот! За триста лет в элементарном анализе сделано всё что можно.
Пишите письма! :)


Марбол

Цитата: antbez от февраля 13, 2012, 11:43
Зачем что-то выводить?! Такая же формула существует! Формула Фаа ди Бруно!
Так ведь это само по себе интересно - изобретать велосипед! - Особенно, когда лежишь с красным горлом. И если бы я уже знал об этой формуле, то не стал бы программировать свой простенький анализатор формул; а теперь его можно будет усовершенствовать и затем "пристегнуть" к дальнейшему делу.

arseniiv

Пусть ваше (под)сознание как-нибудь приготовит ещё одну задачу! Быть может, там будет что-то ещё интересное, но не такое сложное. Люблю рыться в буквах.

Квас

Цитата: Марбол от февраля 13, 2012, 20:31
Но формула-то есть.

Мой изначальный тезис: формула существует ⇔ она уже известна.

Однако какие она может иметь приложения? :-\
Пишите письма! :)

arseniiv

Цитата: Квас от февраля 13, 2012, 21:08
Однако какие она может иметь приложения? :-\
:negozhe:

Конечно, никакие, если так оценить до [tex]x^2[/tex]. Дальше лень.

Марбол

Цитата: Квас от февраля 13, 2012, 21:08
Мой изначальный тезис: формула существует ⇔ она уже известна.
:negozhe:
Нет-нет, Ваш начальный тезис был: "Формулы нет в природе".  :-[ Но в этом ли дело!..  :???
:UU:
А применить её я хочу, именно, к вычислению Ν-ной производной от суперпозиции двух функций.

Квас

Цитата: Марбол от февраля 14, 2012, 06:07
Нет-нет, Ваш начальный тезис был: "Формулы нет в природе".

Да, действительно.

Впрочем, она выглядит настолько же полезной, как, например, формула Кардано: то есть абсолютно бесполезной, хотя и радующей своим существованием.

Цитата: Марбол от февраля 14, 2012, 06:07
А применить её я хочу, именно, к вычислению Ν-ной производной от суперпозиции двух функций.

Ну расскажите, если получится. Мне интересно, каким алгоритмом вы будете перебирать кортежи.
Пишите письма! :)


arseniiv

Можно отфильтровать из перебора всех кортежей.

Можно найти функцию, делающую из одного кортежа следующий.

Быстрый ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.

Имя:
Имейл:
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр