С помощью степенных рядов возможно интегрировать дифференциальные уравнения.
Рассмотрим линейное дифференциальное уравнение вида:
Если все коэффициенты и правая часть этого уравнения разлагаются в сходящиеся в некотором интервале степенные ряды, то существует решение этого уравнения в некоторой малой окрестности нулевой точки, удовлетворяющее начальным условиям.
Это решение можно представить степенным рядом:
Для нахождения решения остается определить неизвестные постоянные Ci.
Эта задача решается Методом сравнения неопределенных коэффициентов. Записанное выражение для искомой функции подставляем в исходное дифференциальное уравнение, выполняя при этом все необходимые действия со степенными рядами (дифференцирование, сложение, вычитание, умножение и пр.)
Затем приравниваем коэффициенты при одинаковых степенях Х в левой и правой частях уравнения. В результате с учетом начальных условий получим систему уравнений, из которой последовательно определяем коэффициенты Ci.
Отметим, что этот метод применим и к нелинейным дифференциальным уравнениям.
Пример. Найти решение уравнения C начальными условиями Y(0)=1, Y’(0)=0.
Решение уравнения будем искать в виде
Подставляем полученные выражения в исходное уравнение:
Отсюда получаем:
Получаем, подставив начальные условия в выражения для искомой функции и ее первой производной:
Окончательно получим:
Итого:
Существует и другой метод решения дифференциальных уравнений с помощью рядов. Он носит название Метод последовательного дифференцирования.
Рассмотрим тот же пример. Решение дифференциального уравнения будем искать в виде разложения неизвестной функции в ряд Маклорена.
Если заданные начальные условия Y(0)=1, Y’(0)=0 подставить в исходное дифференциальное уравнение, получим, что
Далее запишем дифференциальное уравнение в виде и будем последовательно дифференцировать его по Х.
После подстановки полученных значений получаем:
Видео:Дифференциальные уравнения | использование степенных рядовСкачать
Разложение решения уравнения в степенной ряд
Этот прием является особенно удобным в применении к линейным дифференциальным уравнениям. Проиллюстрируем его применение на примере уравнения второго порядка. Пусть дано дифференциальное уравнение второго порядка
Предположим, что коэффициенты и представляются в виде рядов, расположенных по целым положительным степеням , так что уравнение (1) можно переписать в виде
Решение этого уравнения будем искать также в виде степенного ряда
Подставляя это выражение и его производных в (2), получаем
Перемножая степенные ряды, собирая подобные члены и приравнивая нулю коэффициенты при всех степенях в левой части (4), получаем ряд уравнений:
Каждое последующее из уравнений (5) содержит одним искомым коэффициентом больше, чем предыдущее. Коэффициенты и остаются произвольными и играют роль произвольных постоянных. Первое из уравнений (5) дает , второе дает , третье — , и т.д. Вообще из (к + 1)-го уравнения можно определить , зная .
Практически удобно поступать следующим образом. Определим по описанной выше схеме два решения и , причем для выберем и , а для выберем и , что равносильно следующим начальными условиям:
Всякое решение уравнения (1) будет линейной комбинацией решений и .
Если начальные условия имеют вид , то очевидно,
Имеет место следующая теорема.
Теорема. Если ряды и сходятся при , то построенный указанным выше способом степенной ряд (3) будет также сходящимся при этих значениях и явится решением уравнения (1).
В частности, если и — многочлены от , то ряд (3) будет сходиться при любом значении .
Пример 1. Найти решения уравнения в виде степенного ряда.
Решение. Ищем в виде ряда , тогда
Подставляя и в (6), получаем
Приводя в (7) подобные члены и приравнивая нулю коэффициенты при всех степенях , получаем соотношения, из которых найдем коэффициенты
Положим для определенности, что . Тогда легко находим, что
Видео:Дифференциальное уравнение ведет к разложению в ряд Тейлора и сумме ряда?Скачать
Дифференциальных уравнений степенными рядами
Обращаем Ваше внимание, что в соответствии с Федеральным законом N 273-ФЗ «Об образовании в Российской Федерации» в организациях, осуществляющих образовательную деятельность, организовывается обучение и воспитание обучающихся с ОВЗ как совместно с другими обучающимися, так и в отдельных классах или группах.
При решении дифференциальных уравнений степенными рядами каждый полученный ряд является только элементом искомого решения, определенным в его области сходимости. Область сходимости степенного ряда есть круг, на границе которого должна находиться по крайней мере одна особая точка решения исходного дифференциального уравнения. Поэтому для того, чтобы распространить полученные результаты на всю комплексную область, прежде всего надо провести исследования поведения решений в окрестности полюса и существенно особой точки, которые на практике встречаются наиболее часто. Однако, этот процесс при реализации его в ручную довольно трудоемкий. В связи с этим появляется возможность запрограммировать данную задачу и сравнить полученный результат с уже проведенными вычислениями. Попытка именно этого и предпринята в данной дипломной работе.
1. Вводные замечания
1.1 Степенные ряды. Радиус сходимости
Наиболее простыми будут ряды, сходящиеся не только абсолютно, но и равномерно. К таким рядам относятся и степенные, чем и обусловлено то особо важное значение, которое они имеют в самых различных областях математики и ее приложениях.
Определение. Степенным рядом (точнее, целым степенным) называется бесконечный ряд вида
(1.1)
где с k и z 0 — заданные комплексные числа, не зависящие от z. Число z 0 для краткости называют центром ряда. В частности, может быть z 0 = 0.
Выясним прежде всего область сходимости степенного ряда, для чего докажем следующую теорему.
Первая теорема Абеля (1826).
Если степенной ряд
сходится в некоторой точке z=z 1 , то он сходится, и притом абсолютно и равномерно, во всяком круге с центром z 0 и радиусом 0 |, т.е. радиусом, меньшим, чем расстояние от z 1 до z 0 (рис. 1).
Переходя к доказательству теоремы, предположим, что z — произвольная точка круга | z — z 0 | р | z 1 — z 0 |, и представим n-й член ряда (1.1) в виде
Из сходимости ряда в точке z 1 , которая имеет место по условию теоремы, вытекает, что
для всех n, где М — некоторое положительное число. Кроме того, в силу нашего предположения
Следовательно, для всех n
откуда и вытекает по признаку Вейерштрасса абсолютная и равномерная сходимость ряда внутри круга | z — z 0 | р z 1 — z 0 |, так как члены рассматриваемого ряда по модулю меньше членов убывающей геометрической прогрессии, составленной из положительных чисел.
В частности, ряд сходится абсолютно (но, вообще говоря, не равномерно) во всех точках круга | z — z 0 | z 1 — z 0 |. Отсюда вытекает, что если степенной ряд расходится при некотором значений z = z 1 то он расходится и при всяком значении z, для которого
Теорема, сформулированная выдающимся норвежским математиком Нильсом Генриком Абелем (1802-1829), играет в теории степенных рядов исключительно важную роль, и, в частности, из этой теоремы следует, что степенной ряд сходится в некотором круге, радиус которого будем обозначать через R, причем ряд сходится
и равномерно сходится в любом круге
На самом же круге | z — z 0 | = R ряд может быть сходящимся или расходящимся, и установление этого факта требует дополнительных исследований, иногда очень сложных.
Радиус этого круга R называется радиусом сходимости степенного ряда, а сам круг — кругом его сходимости. Для определения радиуса сходимости R служит формула
(1.2)
где lim обозначает верхний предел.
Эта формула была получена Огюстом Луи Коши в 1821 г. и со всей строгостью доказана в 1893 г. Жаком Адамаром (1865-1963). Она называется формулой Коши — Адамара.
Радиус сходимости можно также определять по формуле, вытекающей из признака сходимости рядов Даламбера;
(1.3)
если только указанный предел существует.
В частности, R может равняться нулю (тогда сумма ряда сводится к его первому члену c 0 ) или бесконечности (тогда ряд сходится во всей комплексной плоскости z).
На основании теорем о сумме ряда и доказанной равномерной сходимости степенного ряда внутри его круга сходимости вытекают весьма важные свойства степенных рядов, которые мы сформулируем в виде следующих теорем.
Теорема 1. Сумма степенного ряда есть непрерывная функция от z внутри круга сходимости ряда.
Этот результат дополняется второй теоремой Абеля (1826): если степенной ряд сходится в точке z окружности | z — z 0 | = R, то его сумма s(z) есть функция, непрерывная в точке z 1 самой окружности вдоль радиуса, идущего из центра z 0 в точку z 1 .
А. Прингсхейм доказал, что при условиях этой теоремы s(z) непрерывна в точке z 1 вдоль любой линии, которая не касается окружности в точке z 1 .
Теорема 2. Степенной ряд внутри круга его сходимости можно почленно интегрировать, и сумма полученного ряда будет представлять собой интеграл от суммы данного ряда:
(1.4)
Теорема 3. Степенной ряд внутри круга его сходимости можно почленно дифференцировать, и его сумма будет представлять собой производную от суммы данного степенного ряда:
(1.5)
Для того чтобы последнее свойство имело место, надо еще доказать, что ряд, полученный по членным дифференцированием, имеет тот же радиус сходимости R (в силу чего он также будет равномерно сходящимся рядом).
Пусть z — некоторая точка внутри круга сходимости и R — число, удовлетворяющее неравенству | z — z 0 | R 1 R . Так как ряд
сходится абсолютно, то существует такое положительное число М, что
при всех значениях n .
Тогда для модуля общего члена ряда, полученного дифференцированием, имеем:
т.е. модули членов ряда (1.5) меньше соответствующих членов сходящегося по признаку Даламбера ряда. Следовательно, ряд (1.5) сходится абсолютно во всех точках внутри круга сходимости исходного степенного ряда
Если | z — z 0 | > R , то c n ( z — z 0 ) n , а благодаря этому и n c n ( z — z 0 ) n -1 не стремится к нулю и ряд расходится.
Таким образом, ряд (1.5) и ряд
имеют один и тот же круг сходимости.
Следствие 2 . Ряд
,
полученный почленным интегрированием степенного ряда
имеет тот же радиус сходимости R, что и исходный ряд.
Действительно, если бы это было не так, то, дифференцируя почленно ряд
,
мы бы получили исходный ряд
с радиусом сходимости R 1 R , что противоречит теореме 3.
Следует, однако, отметить, что из факта равенства радиусов сходимости данного степенного ряда и рядов, полученных почленным дифференцированием или интегрированием, нельзя сделать никаких выводов относительно характера сходимости этих рядов и на самой границе области сходимости, т.е. на самой окружности | z — z 0 | = R.
Так, например, ряд
расходится во всех точках границы | z | = 1, тогда как после интегрирования получается ряд
сходящийся при z = — 1. Действительно, при z = — 1 имеем:
радиус сходимости которого R= 1, абсолютно сходится во всех точках границы области сходимости | z | = 1, так как при | z |= 1
а ряд справа, как известно, сходящийся.
Продифференцировав же этот ряд, получим ряд
который на окружности | z | = 1 является расходящимся, по крайней мере в точке z = 1, как гармонический ряд
+ 1 / 2 + 1 / 3 + 1 / 4 + …
Приведенные примеры также хорошо иллюстрируют сказанное ранее о поведении ряда на самой границе области сходимости. А именно, на контуре сходимости ряд может быть всюду сходящимся (но отнюдь не обязательно абсолютно или равномерно сходящимся) или всюду расходящимся, или может сходиться только в отдельных точках и расходиться в других точках.
Следствие 2 . Степенной ряд
в круге его сходимости | z — z 0 | R можно дифференцировать (и интегрировать) произвольное число раз. В результате получим новые степенные ряды, которые будут иметь тот же самый радиус сходимости R, суммы которых будут равны последовательным производным (или интегралам от) суммы ряда s (z).
2. Ряды Лорана. Полюса и особые точки
Рассмотрим два ряда:
(2.1)
(2.2)
Область сходимости первого ряда (если она существует) определяется неравенством | z — a | r . Если существует область сходимости второго ряда, то она определяется неравенством |z — a |
полученного сложением рядов (2.1) и (2.2), областью сходимости служит кольцо r R , ограниченное концентрическими окружностями с центром в точке а и радиусами r и R (рис. 2).
Пусть (z) — однозначная и аналитическая функция в кольце r R . Эта функция в указанном кольце может быть представлена в виде суммы ряда:
(z)=
Ряд в правой части равенства называется рядом Лорана функции (z). Коэффициенты этого ряда можно вычислить по формуле:
Ряд (2.1) называется главной частью ряда Лорана, а ряд (2.2) — правильной частью ряда Лорана.
Если ряд Лорана содержит главную часть, то а называется изолированной особой точкой. Коэффициент А -1 называется вычетом функции (г) относительно изолированной особой точки z = a.
Особая точка называется устранимой, если функция (г) — аналитическая в окрестности z = а и ограничена по модулю в этой окрестности, т.е. существует конечный предел
.
Особая точка называется полюсом функции (г), если (г) — аналитическая функция вблизи z = а и стремится к бесконечности при z а.
Особая точка z = a называется существенно особой, если при z, близких к а, модуль | (z) | не остается ограниченным, но функция не стремится к при z а, предел не существует.
Изолированная особая точка является:
устранимой, если главная часть разложения в ряд Лорана отсутствует. Например, для функции точка z = 0 служит устранимой особой точкой, так как
полюсом n — го порядка, если главная часть содержит конечное число членов, т.е. имеет вид
Например, для функции точка z = 0 есть полюс первого порядка, так как
существенно особой, если главная часть содержит бесконечное число членов. Например, функция в точке z = 0 имеет существенно особую точку, так как
Между нулем и полюсом функции существует следующая связь. Если z = а — нуль кратности k функции (z), то z = а — полюс того же порядка функции 1/ (z); обратно, если z=b — полюс порядка k функции ( z ), то z = b — нулъ той же кратности функции 1/ (z).
Следует заметить, что если то z = а — полюс k-го порядка функции (z).
3. Интегрирование дифференциальных уравнений при помощи степенных рядов. Задача Коши
Рассмотрим задачу Коши для уравнения -го порядка, разрешенного относительно старшей производной
; j = 0, 1, 2,…, — 1. (3.2)
Будем искать формальное решение задачи (3.1) — (3.2) в виде степенного ряда
, (3.3)
так что в каждом конкретном случае необходимо дополнительно исследовать, может ли данная задача Коши быть решена при помощи ряда (3.3).
Обозначим k -ю степень ряда (3.3) соответственно
, k = 1, 2, 3,… (3.4)
и выведем рекуррентную формулу для вычисления введенных коэффициентов
Так как для произвольного k = l + m имеет место тождество,
,
то воспользовавшись формулой Коши для умножения степенных рядов
непосредственно получаем искомую рекуррентную формулу:
(3.5)
где l = 1, 2, 3,…; m = 1, 2, 3,…; n = 0, 1, 2, 3, …
В частности, при k = 1 ряд (1.4) тождественно совпадает с рядом (3.3), так что
; п =0.1, 2,…, (3.6)
и тогда при помощи формулы (3.5) легко определить коэффициенты а ( k ) n для произвольной целой степени ряда y k через коэффициенты исходного ряда (3.3).
Для удобства выкладок представим производные у’, у»,… в виде таких рядов
(3.7)
где введены обозначения
(3.8)
В таком случае и все степени от производных у’, у»,… легко выразить рядами
(3.9)
определим при помощи формулы (3.5), если в этой формуле a n заменим соответственно на
Если мы теперь подставим ряды (3.3), (3.4), (3.7), (3.9) в исходное уравнение (1.1) и приравняем коэффициенты при одинаковых степенях ( x — x 0 ) то после соответствующих упрощений, получим рекуррентную формулу вида:
(3.10)
где функция F полностью определяется заданной функцией (х, у, у’,…, y ( v -1) ), а первые v коэффициентов, согласно начальным условиям (3.2), будут такими:
(3.11)
В том случае, когда существует предел
радиус сходимости ряда (3.3) можно определить численно, если вычислить достаточное количество членов последовательности
(3.12)
до такого значения n включительно, начиная с которого будет иметь место равенство
(3.13)
с необходимой для данной задачи точностью.
В отдельных частных случаях радиус сходимости ряда (3.3) можно найти, исходя из самой рекуррентной формулы (3.10).
Рассматриваемый метод позволяет также построить аналитическое продолжение ряда (3.3) и выявить особые точки найденного решения. Для этого в любой точке х 1 , где [x 1 — x 0 ] R , вычисляем при помощи ряда (3.3) новые начальные значения
(3.14)
и, подставив их в ту же самую рекуррентную формулу (3.10), находим коэффициенты а* n нового ряда
который, согласно известной теореме об аналитическом продолжении решений дифференциального уравнения, и есть аналитическое продолжение ряда (3.13).
Особые точки решения находим как точки пересечения двух или трех окружностей сходимости соответствующих аналитических продолжений. Если найденная особая точка есть полюс, то его легко выделить, перестроив соответствующим образом ряд (3.13).
Все полученные результаты имеют место также и в комплексной области.
Для пояснения методики вычислений рассмотрим пример.
Пример. Решим с семью десятичными знаками на сегменте [-1; +1] задачу Коши для нелинейного уравнения третьего порядка:
y ’’’=2 y ’+ y 3 — ( x ); (х)= sh ( x ) (1/ x ). (3.16)
при следующих начальных условиях:
Решение. Подставив в исходное уравнение (3.16) ряды (3.13), (3.14), (3.17) при x 0 = 0, k = 3, в результате сравнения коэффициентов при х n имеем:
(3.18)
n есть коэффициенты ряда Маклорена для заданной функции
в данном случае
Заменив теперь по формуле (3.8)
и учтя, что согласно начальным условиям (3.17)
находим из (3.18) рекуррентную формулу (3.10) для уравнения (3.16);
(3.19)
Коэффициенты a * n вычисляем по формуле (1.8), а коэффициенты а n (3) — по формуле (1.5), в которой надо вначале положить l=m= 1, а затем l = 1, т = 2, в результате чего получим
Все вычисления (с одним запасным знаком) приведены в табл. 1, и окончательным решением будет ряд
Согласно (3.13), радиус сходимости полученного ряда
так что при п = 15 заданная точность для |x| 1 будет выполнена.
Методика вычислений по формулам (3.20) — (3.20′) очень проста.
По известным а 0 , а 1 , а 2 вычисляем а* 1 =а 1 и а* 2 =а 2 , а также а 0 (2) , а 1 (2) , а 2 (2) , после чего, перемножив столбец а n на столбец а n (2) , находим соответствующий коэффициент а n (3) .В результате получаем все необходимые данные для вычисления по рекуррентной формуле (1.19) а 3 и а 4 , что позволяет продолжить дальше этот процесс и определить любое количество коэффициентов а n искомого ряда (3.21).
Для удобства ориентировки каждый из сомножителей, который используется в данный момент, отмечаем какими-либо марками. Столбец а n (2) вычисляем, умножив столбец а n сам на себя. Например, n (2) = 1.00000000 * 0,25000000 + (1.00000000) 2 + 0,25000000 *1,00000000 = 1,50000000.
a n (3) = 1,00000000 * 1,50000000 + 1,00000000 * 2,00000000 + 0,25000000 * 1,00000000 = =3,75000000.
Ход дальнейших вычислений ясен из табл. 1, в которой все величины, необходимые для определения очередного а n +3, размещены в одной строке.
Для того чтобы точнее определить радиус сходимости R , вычисления надо вести с большим числом значащих цифр, и если мы это выполним, то получим, например,
a 12 =5,7341*10 -6 ; a 13 =1,8765*10 -6 ;… по которым в табл. 1 найдены соответствующие а n / a n +1
4 . Уравнение Риккати
Уравнение Риккати (1676-1754) — одно из простейших нелинейных дифференциальных уравнений первого порядка.
4.1 Общее дифференциальное уравнение Риккати
y’=P(x) y 2 + Q(x) y+R(x) (4.1)
за исключением некоторых частных случаев, не сводится к квадратурам и не может быть выражено в конечном виде через элементарные функции (Лиувилль).
Для четырех частных решений этого уравнения y 1 , y 2 , y 3 , y 4 двойное отношение постоянно:
Поэтому, если известны три частных решения y 1 , y 2 , y 3 , то получаем общее решение
с произвольной постоянной С. Если известны лишь два решения y 1 и y 2 , то будем иметь:
(4.3)
Располагая только одним известным частным решением y 1 , при помощи подстановки
уравнение Риккати можно привести к линейному уравнению:
y = — u ’/[ P ( x ) u ] (4.6)
уравнение (4.1) можно свести к однородному линейному уравнению второго порядка:
(4.7)
Если положить y =1/ z , (4.8)
то для z получим снова уравнение Риккати
z’= — [P(x) z 2 + Q(x) z+R(x)] (4.9)
нули которого будут являться полюсами исходного уравнения (4.1) и наоборот.
(4.10)
общее уравнение Риккати (4.1) можно привести к канонической форме:
(4.11)
, (4.12)
а функция (х) определяется из условия: P ’+2 P 2 + PQ =0
т.е. (4.13)
5. Исследование решений в окрестности полюса и существенно особой точки
лоран дифференциальный рикатти уравнение
При решении дифференциальных уравнений степенными рядами каждый полученный ряд является только элементом искомого решения, определенным в его области сходимости. Область сходимости степенного ряда есть круг, на границе которого должна находиться по крайней мере одна особая точка решения исходного дифференциального уравнения. Поэтому для того, чтобы распространить полученные результаты на всю комплексную область, нам прежде всего надо найти ‘методику исследования поведения решений в окрестности полюса и существенно особой точки, которые на практике встречаются наиболее часто. С этой целью обратимся к характерному примеру, рассматривая при этом искомую функцию = и +i v и аргумент z =x+iy как комплексные величины.
Пример . Определим все полюсы решения задачи Коши для уравнения Риккати
(5.1)
Решение . Представим исходное уравнение в виде:
(5.2)
Тогда для определения коэффициентов его решения
(5.3)
рекуррентная формула будет иметь следующий вид:
(5.4)
Значение коэффициентов n для заданной функции
находим, представив ее в виде ряда с тем же центром z 0 = 0.
При n= 0 мы должны положить
и тогда, согласно формулам (5.4), находим
Вычисление остальных коэффициентов a* n и a n до (n = 12 включительно) ясно из табл. 2, в которой приведены все необходимые данные. При этом вначале по известным уже а n вычисляем a n (2) =[ a n a n ] и
a * n +1 , после чего, разделив найденное a* n +1 на его номер, определяем a n +1
Проанализировав результаты, видим, что все нечетные коэффициенты
а все четные с ростом n стремятся к +1. Поэтому из решения (5.3) целесообразно вычесть ряд
/(1+ z )=1- z + z 2 — z 3 + …
в результате чего получим
(5.5)
где коэффициенты b п определяются по формуле
и их значения приведены в последней колонке табл. 2
(5.6)
Подставив это значение в (5.1), после несложных преобразований убеждаемся, что оно удовлетворяет и самому дифференциальному уравнению, и начальному условию (0)=3/2.
Таким образом, искомое решение имеет три полюса
благодаря чему радиус сходимости ряда (5.3) есть единица.
Формула (5.6), которую мы получили, исходя из ряда (5.3) полностью решает поставленную задачу. Однако просуммировать в явном виде полученный ряд удается лишь в простейших случаях, редко встречающихся на практике. Поэтому решим поставленную задачу, не прибегая к процессу суммирования ряда (5.3), а воспользовавшись его аналитическим продолжением и, кроме того, при помощи перехода к инверсной функции, что можно выполнить в случае любого получаемого ряда, суммируемого в явном виде или не суммируемого.
Ряд (5.3) является только элементом решения уравнения (5.1), определенным в круге с центром z 0 = 0 и проходящим через ближайшую к z 0 особую точку z= — 1. Но этот элемент мы можем аналитически продолжить на полную область его определения, которой чаще всего является вся комплексная область, за исключением сколь угодно малых окрестностей изолированных особых точек. (Могут встретиться и такие случаи, когда окружность сходимости исходного элемента состоит из всюду плотного множества особых точек, так что исходный ряд за нее нельзя аналитически продолжить, но мы такие исключительные случаи рассматривать не будем.)
Для того чтобы аналитически продолжить исходный элемент (5.3), необходимо только вычислить для нового центра z 0 значение функции 0 = ( z 0 ) и в случае необходимости перестроить рекуррентную формулу (5.4). В качестве нового центра z 0 можно, вообще говоря, взять любую точку комплексной плоскости, лежащую внутри круга сходимости исходного ряда (5.3). Однако не любой выбранный центр z 0 будет приводить к расширению круга сходимости исходного ряда, так что мы должны предварительно испытать ряд проб и найти такую последовательность центров z 0 ( I ) , z 0 ( II ) , z 0 ( III ) , которая ведет к поставленной цели.
В качестве первой пробы возьмём z 0 = z 0 (1) =+
Тогда, выполнив в уравнении (5.2) замену независимой переменной
z = t + z 0 (1) = t + ;
(5.7)
приходим к уравнению
2 ,
или после очевидных преобразований
, (5.8)
Следовательно, коэффициенты a n = a n * ряда I
(5.9)
будут определяться рекуррентной формулой
(5.10)
В табл. 3 по формулам (5.10) вычислены с семью десятичными знаками 17 коэффициентов а n = а n * ряда I. Значение a * 0 = 1,1111111…, без знания которого нельзя начать рекуррентный процесс (5.10), мы определили при помощи исходного ряда (5.3)
положив в нем z=z 0 ( I ) =1/2. При этом для обеспечения требуемой точности выполненное в табл. 2 вычисление коэффициентов а n надо продолжить до n = 24. Для контроля найденных коэффициентов a n * ряда I определяем ( t ) при t= — 0,5, т.е. при z = t + 0,5 =0, и в результате получаем
что в пределах точности вычислений полностью совпадает с исходным начальным значением (5.1)
Вычислив с помощью ряда I по тем же коэффициентам a n * значение ( t ) при t= + 0,5, т.е. при
Z = t + 0,5 =1, получаем новое начальное значение
определяющее собой ряд II с центром z 0 = z 0 ( II ) = + 1:
(5.11)
который является аналитическим продолжением ряда I (рис. 3). Рекуррентная формула для определения коэффициентов a n =a n ** ряда II будет иметь следующий вид:
(5.12)
Действительно, произведя в (5.1) подстановку
(5.12)
Первые 16 коэффициентов a n = a n ** ряда II вычислены в табл. 4, а для контроля этих вычислений умножим найденные а n ** на n для = — 0.5, т.е. для z = + 1 = 0.5, стоящие в тех же строках, и, просуммировав результаты, получаем
Что полностью совпадает с начальным значением ( z 0 ( I ) )= a 0 * =1,1111111 ряда I.
Вычислив аналогичным путем
мы можем использовать этот результат для построения ряда III. Однако сходимость ряда II значительно лучше сходимости ряда I, в чем легко убедиться, проанализировав быстроту убывания коэффициентов a n * и a n ** , а также сравнив результаты, полученные в табл. 3 для t = 1 и = 1 с соответствующими точными значениями. Поэтому мы можем с помощью ряда II вычислить (при п = 15 с пятью десятичными знаками) начальное значение
соответствующее центру z 0 = z 0 ( III ) = + 2, и построить затем ряд III, сходящийся еще быстрее.
Продолжая этот процесс, мы будем получать ряды, сходящиеся все быстрее и быстрее, так что, определив по формуле (3.12) § 3 радиусы сходимости для двух из них, найдем затем полюсы z = , как точки пересечения окружностей сходимостей этих рядов. Но это процесс довольно трудоемкий, а потому более целесообразно перейти к инверсной функции.
( 5.14)
нули которой будут являться полюсами исследуемой функции (и наоборот).
Переход к инверсной функции проще всего осуществить при помощи подстановки
(5.15)
Тогда из (5.1) получаем уравнение
или, умножив обе части на (1 + z ) 2 и поменяв знаки,
(5.16)
Решение этого уравнения ищем в виде ряда
(5.17)
и для коэффициентов n получаем рекуррентную формулу
(5.18)
0 =1/ a 0 =2/3; 0 =0; 1 =2; 2 =4; 3 =2; n =0 при n 4Нули функции находим, определяя корни уравнения по формуле Ньютона
(5.19) При этом производную (z) находим, пользуясь коэффициентами * n которые были уже вычислены в процессе определения коэффициентов n по формуле (5.18).
В табл. 5 вычислены первые 24 коэффициента n по которым затем, исходя из нулевого приближения z 0 (0) =-0,8, после двух уточнений по формуле Ньютона находим один из нулей z 2 (0) = — 1,00001 инверсной функции ( z ). Выполнив еще один шаг, получаем
z (0) = z 3 (0) = — 1,000000.
Следовательно, одним из полюсов исследуемой функции =1/ ( z ) будет точка z = — 1,000000.
Выделив этот полюс из исходного ряда (5.3), аналогичным путем определяем два других полюса, на чем и заканчиваем решение поставленной задачи.
Коэффициенты n для инверсной функции можно также непосредственно найти по коэффициентам исходного ряда (5.3), так как, согласно (5.14), имеем
(5.20)
Тогда, представив единицу в следующем виде:
при n 2
И воспользовавшись формулами:
где a n — коэффициенты исходного ряда (5.3).
Исследование решений дифференциальных уравнений в окрестности полюсов и особых точек
ФОРМА — ЗАСТАВКА Sub Command1_Click()SubSub Command2_Click(). Visible = False. Visible = TrueSubSub Ex_Click()SubSub Form_Load(). Visible = TrueSubSub prog_Click(). Visible = False. Visible = TrueSub
ФОРМА — ВВОД ЗНАЧЕНИЙ Sub Command1_Click()Text1 = «0» Or Text1 = «» Or Text2 = «» Or Text3 = «» Or Text4 = «» Or Text5 = «» Or Text6 = «» Then
Beep. Caption = «Введите все коэффициенты, первый не должен равняться 0»
ElseIf Text1 = «0» Or Text1 = «» Or Text2 = «» Or Text3 = «» Or Text4 = «» Or Text5 = «» Or Text6 = «» Then
Beep. Caption = «Введите все коэффициенты, первый не должен равняться 0»
Else= Text1= Text2= Text3= Text4= Text5= Text6= 0. Caption = «». Visible = False. Visible = TrueIfSub
ФОРМА — ИНФОРМАЦИЯnum As Integer
Dim num2 As Integernum1 As Integerds1 As Doubleds2 As DoubleSub Command1_Click(). Visible = False. Visible = TrueSubSub Command4_Click(). Visible = False. Visible = TrueSubSub Command5_Click(). Visible = False. Visible = TrueSubSub Form_Load(). Visible = True. Visible = Falsek1 = 0 Then k1 = 1. ColAlignment(0) = 3. ColAlignment(4) = 3. ColAlignment(1) = 3. ColAlignment(2) = 3. ColAlignment(3) = 3. ColWidth(0) = 500. ColWidth(4) = 1300. ColWidth(2) = 1300. ColWidth(3) = 1300. ColWidth(1) = 1300(-2) = 0(-1) = 0(0) = w0(0) = -1(-2) = 0(-1) = 0(0) = 0i% = 0 To 25i > 0 And i / 2 = Int (i / 2) Then ny(i) = 1 Else ny(i) = -1j% = 0 To i(i) = a2 (i) + a(j) * a (i — j)j(i + 1) = (k5 * a (i — 1) + (k4 * a2 (i — 1) + k3 * a2 (i — 2)) — k2 * at(i) + ny(i)) / k1(i + 1) = at (i + 1) / (i + 1)i / 2 = Int (i / 2) Then wan% = 1 Else wan = -1(i) = a(i) — wanii = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = a (i — 1). TextMatrix (i, 2) = a2 (i — 1). TextMatrix (i, 3) = at (i — 1). TextMatrix (i, 4) = ny (i — 1)iSubSub Command2_Click()SubSub HS1_Change()= HS1. Valuenum1 > num Theni = num + 1 To num1 + 1. TextMatrix (i, 0) = «». TextMatrix (i, 1) = «». TextMatrix (i, 2) = «». TextMatrix (i, 3) = «». TextMatrix (i, 4) = «»iIf. Caption = num. Caption = « Нажмите обновить >»= numSubSub Command3_Click(). Caption = «»(0) = w0i% = 0 To 50i > 0 And i / 2 = Int (i / 2) Then ny(i) = 1 Else ny(i) = -1(i) = 0j% = 0 To i(i) = a2 (i) + a(j) * a (i — j)j(i + 1) = (k5 * a (i — 1) + (k4 * a2 (i — 1) + k3 * a2 (i — 2)) — k2 * at(i) + ny(i)) / k1(i + 1) = at (i + 1) / (i + 1)i / 2 = Int (i / 2) Then wan% = 1 Else wan = -1(i) = a(i) — wanii = 0 To 25j = 1 To 10= Format (a(i) / a (i + j), «0.000»)= Format (a(i + j) / a (i + 2 * j), «0.000»)ds1 = «Нажмите »Sub
ФОРМА — ИНФОРМАЦИЯ О ПРОГРАММЕ
Private Sub Command1_Click(). Visible = True. Visible = FalseSubSub Form_Load(). Caption = «Данный программный продукт составил студент КнАГТУ группы 6ПМ-1 Давыдов Андрей Анатольевич. Программа позволяет решить дифференциальное уравнение, а также исследовать полученные полюса и особенно существенные точки»
ФОРМА — ВЫБОР МЕТОДА Sub Command1_Click()Option1. Value = True Then. Visible = True. Visible = FalseOption1. Value = True Then. Visible = True. Visible = FalseIfOption2. Value = True And Text1 «» Then. Visible = True= Text1= «». Value = True= «»= «»= «». Label6. Caption = z1. Visible = FalseOption2. Value = True And Text1 = «» Then
Beep= «Необходимо ввести z1»
ElseIfSubSub Option1_Click()= «»= «»= «»= «»SubSub Option2_Click()= « Введите значение z1= (
ФОРМА — ИССЛЕДОВАНИЕ ПОЛЮСОВ
Dim num As Integer
Dim num2 As Integernum15 As Integersum As Doubleds1 As Doubleds2 As Doubleds3 As DoubleSub Command3_Click()SubSub Command4_Click()Text1 = «» Then= « Необходимо ввести радиус »Text1 = «» Then
Beep= «Необходимо ввести радиус»
Else= Text1= «». Label3 = z1 — radius2. Label4 = z1 + radius2. Visible = False. Visible = TrueIfSubSub Command5_Click(). Visible = False. Visible = TrueSubSub Form_Load(). ColAlignment(0) = 3. ColAlignment(4) = 3. ColAlignment(1) = 3. ColAlignment(2) = 3. ColAlignment(3) = 3. ColWidth(0) = 300. ColWidth(4) = 1600. ColWidth(2) = 1300. ColWidth(3) = 1300. ColWidth(1) = 1300i% = 0 To 24n(i) = 1j% = 0 To ij = 0 Then z1n(i) = 1 Else z1n(i) = z1n(i) * z1j= sum + z1n(i) * a(i)i(-2) = 0(-1) = 0(0) = sum(0) = -2 + 1 / (1 + z1)(1) = — (1 / ((1 + z1) * (1 + z1)))(-2) = 0(-1) = 0(0) = 0i = 0 To 25i > 1 Then ny1 (i) = 0i > 1 Then ny1 (i) = — (1 / (1 + z1)) * ny1 (i — 1)(i) = 0j = 0 To i(i) = a21 (i) + a1 (j) * a1 (i — j)j(i + 1) = (k5 * a1 (i — 1) + k5 * z1 * a1 (i) + k3 * a21 (i — 2) + (2 * k3 * z1 + k4) * a21 (i — 1) + (k4 * z1 + k3 * z1 * z1) * a21 (i) — k1 * at1 (i) + ny1 (i)) / (k1 + k1 * z1)(i + 1) = at1 (i + 1) / (i + 1)n(i) = 1ii = 1 To num15 + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.0»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.0»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.0»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.0»)iSubSub Command1_Click(). Visible = False. Visible = TrueSubSub HS1_Change()= HS1. Valuenum15 > num Theni = num + 1 To num15 + 1. TextMatrix (i, 0) = «». TextMatrix (i, 1) = «». TextMatrix (i, 2) = «». TextMatrix (i, 3) = «». TextMatrix (i, 4) = «»iIf. Caption = num. Caption = « Нажмите обновить >»= numSubSub Command2_Click(). Caption = «»= 0i% = 0 To 24n(i) = 1j% = 0 To ij = 0 Then z1n(i) = 1 Else z1n(i) = z1n(i) * z1j= sum + z1n(i) * a(i)i(0) = sum(0) = -2 + 1 / (1 + z1)(1) = — (1 / ((1 + z1) * (1 + z1)))i% = 0 To 50i > 1 Then ny1 (i) = 0i > 1 Then ny1 (i) = — (1 / (1 + z1)) * ny1 (i — 1)(i) = 0j% = 0 To i(i) = a21 (i) + a1 (j) * a1 (i — j)j(i + 1) = (k5 * a1 (i — 1) + k5 * z1 * a1 (i) + k3 * a21 (i — 2) + (2 * k3 * z1 + k4) * a21 (i — 1) + (k4 * z1 + k3 * z1 * z1) * a21 (i) — k1 * at1 (i) + ny1 (i)) / (k1 + k1 * z1)(i + 1) = at1 (i + 1) / (i + 1)n(i) = 1j = 0 To ij = 0 Then z1n(i) = 1 Else z1n(i) = z1n(i) * z1ji. Caption = z1num2 = 0 Then num2 = 1Case num21i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.0»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.0»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.0»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.0»)i2i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.00»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.00»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.00»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.00»)i3i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.000»)i4i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.0000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.0000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.0000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.0000»)i5i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.00000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.00000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.00000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.00000»)i6i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.000000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.000000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.000000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.000000»)i7i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.0000000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.0000000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.0000000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.0000000»)i8i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.00000000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.00000000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.00000000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.00000000»)i9i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.000000000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.000000000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.000000000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.000000000»)i10i = 1 To num + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.0000000000»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.0000000000»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.0000000000»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.0000000000»)iSelectSubSub HS2_Change()= HS2. Value. Caption = num2. Caption = «Нажмите »Sub
ФОРМА — ВВОД ЗНАЧЕНИЯ z1Sub Command1_Click()Text1 = «» Then
Label 2. Caption = «Необходимо ввести значение z 2»
ElseIf Text1 = «» Then. Caption = «Необходимо ввести значение z 2»
Else= Text1= «». Label6 = z1. Label7 = z2. Visible = False. Visible = TrueIf Sub
ФОРМА — ИССЛЕДОВАНИЕ ПОЛЮСОВ 2
Dim num As Integer
Dim num2 As Integernum15 As Integersum As Doubleds1 As Doubleds2 As Doubleds3 As DoubleSub Command1_Click(). Visible = False. Visible = TrueSubSub Command3_Click()SubSub Command4_Click()
If Text1 = «» Then= «Необходимо ввести радиус»Text1 = «» Then= «Необходимо ввести радиус»
Beep= Text1= «»= (radius2 * radius2 — radius1 * radius1 — z1 * z1) / (-2 * z1)(radius1 * radius1 — x1 * x1)
Label10 = «Введеные радиусы не корректны»
ElseIf (radius1 * radius1 — x1 * x1) >= 0 Then= Sqr (radius1 * radius1 — x1 * x1)= (radius3 * radius3 — radius2 * radius2 — z2 * z2 + z1 * z1) / (2 * (z1 — z2))(radius2 * radius2 — (x2 + z1) * (x2 + z1))
Label10 = «Введеные радиусы не корректны»
ElseIf (radius2 * radius2 — (x2 + z1) * (x2 + z1)) >= 0 Then= Sqr (radius2 * radius2 — (x2 + z1) * (x2 + z1))y2 1 Then ny2 (i) = — (1 / (1 + z2)) * ny2 (i — 1)(i) = 0j = 0 To i(i) = a22 (i) + a12 (j) * a12 (i — j)j(i + 1) = (k5 * a12 (i — 1) + k5 * z2 * a12 (i) + k3 * a22 (i — 2) + (2 * k3 * z2 + k4) * a22 (i — 1) + (k4 * z2 + k3 * z2 * z2) * a22 (i) — k1 * at2 (i) + ny2 (i)) / (k1 + k1 * z2)(i + 1) = at2 (i + 1) / (i + 1)n(i) = 1ii = 1 To num15 + 1. TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a1 (i — 1), «0.0»). TextMatrix (i, 2) = Format (a21 (i — 1), «0.0»). TextMatrix (i, 3) = Format (at1 (i — 1), «0.0»). TextMatrix (i, 4) = Format (ny1 (i — 1), «0.0»). TextMatrix (i, 0) = i — 1. TextMatrix (i, 1) = Format (a12 (i — 1), «0.0»). TextMatrix (i, 2) = Format (a22 (i — 1), «0.0»). TextMatrix (i, 3) = Format (at2 (i — 1), «0.0»). TextMatrix (i, 4) = Format (ny2 (i — 1), «0.0»)iSubSub HS1_Change()= HS1. Valuenum15 > num Theni = num + 1 To num15 + 1. TextMatrix (i, 0) = «». TextMatrix (i, 1) = «». TextMatrix (i, 2) = «». TextMatrix (i, 3) = «». TextMatrix (i, 4) = «». TextMatrix (i, 0) = «». TextMatrix (i, 1) = «». TextMatrix (i, 2) = «». TextMatrix (i, 3) = «». TextMatrix (i, 4) = «» If
В результате выполнения дипломной работы были решены дифференциальные уравнения и исследованы полученные решения в окрестности полюсов двумя способами. Разработана методика исследования решений в комплексной области и представления результата в виде действительной и мнимой частей без относительной затраты времени и огромного объема вычислений. Приблизительно, производительность программы по скорости вычислений превышает в десятки тысяч раз. Программа выдает желаемое количество полученных коэффициентов (от 1 до 25) с желаемой точностью (от 1 до 10 знаков после запятой). В результате значительной доработки данной дипломной работы можно устранить необходимость ввода радиусов сходимости полученных рядов, но по предварительным расчетам необходимо будет вычислять до 300 коэффициентов исследуемого ряда, что в некоторых случаях будет приводить к переполнению переменных в коде программы.
Кудрявцев Л.Д. «Курс математического анализа» Т.1, М., ВШ., 1981 г. — 687 с.
Фильчаков П.Ф.» Численные и графические методы прикладной математики» Справочник, К., «Наукова думка», 1970 г. — 798 с.
Бронштейн И.Н., Семендяев К.А. Справочник по математике для инженеров и учащихся вузов. — 13-е изд., исправленное. — М. Наука, 1986 — 544 с.
Михаэль Райтингер, Геральд Муч. Visual Basic 6: полное руководство: пер. с нем. — К.: Издательская группа BHV, 2000. — 720 с.
Данилина Н.И., Дубровская Н.С. Численные методы. — М.: «Высшая школа», 1976 — 368 с.
Мышкис А.Д. Математика для ВТУЗов. Спец. Курсы. — М.:» Наука». 1971 — 632 с.
Данко П.Е., Попов А.Г. Теория функций комплексного переменного. — М.: «Высшая школа». 1986 — 415 с.
Фролов С.Н., Шостак Р.Я. Численные методы. — М.: «Высшая школа». 1972 — 472 с.
🎬 Видео
Частное решение ДУ, с помощью рядаСкачать
Решение дифференциальных уравнений с помощью степенных рядов -1Скачать
Решение дифференциальных уравнений с помощью степенных рядов -3Скачать
Применение степенных рядов к решению дифференциальных уравнений.Скачать
Решение дифференциальных уравнений с помощью степенных рядов -2Скачать
Математический анализ, 38 урок, Степенные рядыСкачать
301 Нахождение решения дифференци ального уравнения в виде степенного рядаСкачать
18+ Математика без Ху!ни. Дифференциальные уравнения.Скачать
9. Степенные ряды. Радиус сходимости. Область сходимости.Скачать
Примеры разложения в степенной рядСкачать
Область сходимости степенного рядаСкачать
Применение рядов к решению дифференциальных уравнений. Найти три первых отличных от нуля членаСкачать
Интегрирование при помощи степенных рядовСкачать
Математический анализ - Функциональные и степенные ряды (04.04.2020)Скачать
ТФКП. Почленное дифференцирование степенных рядов. Примеры решений типовых задачСкачать
Степенной ряд и радиус сходимости - от bezbotvyСкачать
Ряды степенные. Решение задачСкачать