Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИИ ИНСТИТУТ.doc
Скачиваний:
16
Добавлен:
19.09.2019
Размер:
4.71 Mб
Скачать

Параметры kj, k2, кз

Параметры S, b, p, U0.

Тангенциальная аппроксимация

где M = Is • 1 + th S-{U3U - wS )

I

кл' i л k ' i л k

Рис. 4.46

I с = M

• 1 - e M

f - k U „ , - S \

ЛЛ

J)

Параметры аппроксимации: Is, Us, S, k.

Для аппроксимации всех перечисленных нелинейностей требуется определить несколько коэффициентов, которые обычно определяются на практике методом выбранных точек. Для его использования выбирают исходя из физических соображений рабочий участок вольт- амперной или иной характеристики нелинейного элемента и на нем — ряд точек, через кото­рые будет проходить аппроксимирующая кривая. В число этих точек, как правило, входят точки, соответствующие границам рабочего интервала и характерные точки ВАХ.

Число точек равно числу неизвестных коэффициентов аппроксимации. Далее в аппрок­симирующее выражение подставляются значения функции в указанных точках и решается сис­тема уравнений относительно требуемых коэффициентов. Такой метод весьма прост, однако он гарантирует совпадение аппроксимирующей функции с реальной только в выбранных точ­ках. Общая погрешность метода непредсказуема. Поэтому он применяется в случаях, когда общий вид аппроксимирующей характеристики и аппроксимируемой функции достоверно из­вестен.

Рассмотрим, например выражение для спада емкости электролитического конденсатора от частоты и определение коэффициентов аппроксимации:

С

С = / \а 1 +

Vf0 J

Предположим, что нам известна номинальная емкость конденсатора с0. Тогда из Tpex коэффициентов аппроксимации остается найти только 2. Берем частоты аппроксимации fj и f2. Емкости, соответствующие этим частотам cj и с2 соответственно. Составляем систему уравнений:

u

178

/ 2

£ ,

/ 2

V £ 0 У

л Г 0 Г2

С

/ Л

V f 2 у

dx

dt

Q =

Cn

Сг =

1 +

1+ ' /

.s l а

' £ л

Выразим из нее соотношения V £° у и v £оу ' /Va С - с

Поделим почленно оба выражения. Получим:

'S / \ а

fo - С-1 ) • С 2

V f 0 У " ( О , л 2 )

Логарифмируя обе части выражения и проведя элементарные преобразования полу-

чаем:

ln

а =

( с р С 1 ) • С 2

.(О, - Сл )• Q

ln

Выразим далее частоту/о через, например, Ci и /1. Получим

С - С . Q .

Рассмотрим методы расчета переходных процессов в нелинейных цепях. Аналитические методы расчета основаны на замене нелинейной характеристики аналитическим выражением с приемлемой точностью. Ряд подобных аппроксимаций уже рассмотрен, хотя практическое их использование в ряде случаев затруднительно вследствие сложности полученных функций. Для грубых прикидочных расчетов зачастую применяют метод линеаризации одной прямой.

4.5.1 Общие сведения о численных методах решения систем дифференциальных

уравнений 1-го порядка

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

= F (x, t, v)

или в неявной форме:

с

л

V 0 У

V 0 У

С 1

V ' 0 У

/ 1

/ 0

179

A dx ±л dx n x, — , t, V — = 0 \ dt dt

Здесь x — вектор переменных состояния, t — время, V — вектор независимых источни­ков.

Анализ показывает, что решение дифференциального уравнения существует и является единственным, если правая часть дифференциального уравнения непрерывна в рассматри­ваемой области изменения аргумента и удовлетворяет условию Липшица:

гп

f л t , V)- f t. v )\< N -X I Xk ~Цк

k= 1

Здесь ц — вектор, принадлежащий указанной области изменения переменных, N — некоторая положительная константа, m — порядок системы.

Для реальных электронных схем условие существования и единственности решения задачи Коши выполняется всегда.

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

При этом интервал интегрирования разбивается на ряд интервалов точками t0=0, t1, t2,...tn=T. Таким образом, непрерывный интервал 0...Тзаменяется дискретным множеством точек tk. Расстояние между точками есть величина шага интегрирования h = tk+1-tk.

Очередной (k+1) шаг интегрирования есть вычисление вектора x(tk+1), причем при условии, что x(t1), x(t2), ... x(tk) уже вычислены в результате предшествующих шагов. Фор­мулы для нахождения x(tk+1) получаются в результате замены производных в уравнении Коши на отношение конечных приращений:

dx, X- x • dt tk+1 - tk

Таким образом, фактически, исходные дифференциальные уравнения заменяются ко­нечно-разностными уравнениями. При соответствующих допущениях в выборе шага интегри­рования, численное решение конечно-разностных уравнений будет достаточно точно совпа­дать с решением соответствующих дифференциальных уравнений. Итерационные формулы для решения дифференциальных уравнений получают, разлагая в ряд Тейлора функции и отбрасывая соответствующее число членов разложения. В зависимости от количества остав­ленных членов говорят о методах 1-го, 2-го и т.д. порядка.

Существуют две группы методов численного решения задачи Коши:

  1. Одношаговые методы, в которых для нахождения последующей точки на кривой x(t) используется информация лишь об одном предыдущем шаге;

  2. Многошаговые методы, в которых для отыскания последующей точки требуется ин­формация о нескольких предыдущих точках расчета.

4.5.2 Одношаговые методы

Простейшим из одношаговых методов решения дифференциальных уравнений 1-го по­рядка является метод Эйлера (метод Рунге-Кутта первого порядка). Напомним, что зада­чей является решение дифференциального уравнения вида:

180

dx

dt

Таким образом, итерационная формула для нахо- ждения xk + 1 готова. Ошибка, полученная в результате итерации, очевидно, пропорциональна h2. Геометриче- ская интерпретация метода состоит в следующем (рис.

4.47).

Замена реальной кривой x(t) на отрезки прямых, соответствующих касательным в точках tk, даст при- ближенное значение искомойфункции xk + 1. Т.к. ошибка

Рио 44 7

. метода относительно велика, то для ее устранения

обычно выбирают меньший шаг h, но в целом метод имеет ограниченное применение, несмот- ря на свою простоту.

Модифицированный метод Эйлера

Для уменьшения погрешности за счет замены функции x(t) отрезками касательных, при- меняют модифицированный метод Эйлера. Суть его сводится к тому, что значение произ- водной F(x,t,v) на интервале tk...tk+1 заменяют полусуммой производных в начале и конце интервала: F(xk,tk,v); F(x3k+1,tk+1 ,v). При этом значение переменной xsk + : в конце интервала вычисляют используя предварительно, например, метод Эйлера. Алгоритм работы модифици- рованного метода Эйлера таков:

    1. Определяют xak+1-xk + h-F(Xk,tk,v)

    2. Затем вычисляют уточненное значение вектора переменных xM3k+1 по формуле:

xkM+3 - x +1 \ f x , tk, v)+ F x + 1, f -1, v)]

= F (x, t, v)

с начальными условиями x°-x(t°).

Разложим функцию x(t) в окрестности точки tk в ряд Тейлора и найдем ее значение в

точке х (tk+h):

x (tk + h )- x [tk) + h • x{tk) + 1 h2 • x \tk)+... + —hx(n} [t) +...

n! L '

Если h мало, то члены, содержащие степени h выше первой будем считать малыми и пренебрежем ими. Получим:

x(tk+1 )- x{tk )+ h • F (x(tk ), tk, v )

xk+1 - xk + h • F[xk,tk, v)

x

к+1

x

Г'1

xk

/

i

t

о

tk tk+i

h

Можно показать, что модифицированный метод Эйлера является фактически методом второго порядка (Рунге-Кутта). Разложим x(t) в ряд Тейлора в окрестности точки tk и вы­числим значение x(tk+h):

x t + h)- x(tk) + h^ F(xk,tk,v) + 1 • h2 • F (xk,tk,v)+...

Оставим три члена разложения и заменим производную F'(xk,tk,v) конечной разностью

первого порядка:

или

181


Рис. 4.48

Как показано на примере метода Эйлера и модифицированного метода Эйлера, исполь­зование нескольких членов разложения x(t) в ряде Тейлора существенно уменьшает погреш­ность интегрирования дифференциальных уравнений. Для использования n членов разложе- ниянеобходимо, очевидно, иметь представления (n-1) производнойфункции F(x,t,v) ввиде конечных разностей, а для этого, в свою очередь, необходимо знание первой и более высоких производных в промежуточных точках интервала tk...tk+1. С ростом порядка вычислений, очевидно, число дополнительных вычислений на каждом шаге интегрирования возрастает. Существует несколько способов выбора внутренних точек для вычисления приближенных значений высших производных, поэтому методы Рунге-Кутта объединяют целое семейство методов. Наиболее распространен метод Рунге-Кутта четвертого порядка, в котором исполь­зуются все члены разложения, включая члены, содержащие h4. Расчеты производятся по формулам:

= xk + - •[k + 2 • k2 + 2 • k3 + k4 ]

6

4 **,tk,V)=

F (x*+1, tk + h, v ) - F (xk, tk. v ) h

Подставляя ее значение в формулу для x(tk+h), получим:

x(tk + h )= x(tk)+- h -[F (x*+1,tk+1, v) + F(x , t , V

Для определения x.3k+1, как и было сказа- но выше, используется простой метод Эйлера. Модифицированный метод Эйлера гарантирует наличие ошибки не более h3. Однако такое по-

)]

ХМЭ

вышение точности достигается путем увеличения

k+1

вычислительных затрат за счет вычисления x3 и функции F(x3k+1,tk+1,v). Геометрическая ин- терпретация метода имеет вид рис. 4.48.

Методы Рунге-Кутта

t

0

,.k+1 ' pk

k1 = h • F \xk, tk, v ) k2 = h • F(xk + 0,5 • k1, tk + 0,5 • h, v) k3 = h • F (. + 0,5 • k2, tk + 0,5 • h, v) k 4 = h • F (: k + k3, tk + h, v)

Более высокая точность метода Рунге-Кутта позволяет увеличивать шаг интегрирования, что в целом дает лучшую точность расчетов при заданной погрешности. В ряде случаев шаг интегрирования делают переменным. С точки зрения алгоритма интегрирования это не при­водит к каким-либо противоречиям. Погрешность вычислений оценивают путем интегрирования дифференциальных уравнений с шагом h и, затем 2h. Если x1 — значение вектора x, полу­ченного при шаге h, a x2 — значение при шаге 2h, то получаемая погрешность оценивается нормой вектора \\x 1 (tk) - x2(tk)\. Если норма вектора больше s — заданной погрешности, то шаг уменьшают вдвое, если она меньше s/6, то шаг увеличивают вдвое. Если норма находит­ся в интервале s/6 ... s, то величину шага оставляют прежней.

182

Р0„ ,, tk )-

1 k — второго порядка

-. л PAti, tj, tk)-p{tj, tk, tt)

P{t1, tj, tk, t j — — третьего порядка и т.д.

Следует отметить, что контроль точности требует проведения дополнительных вычис­лений, что увеличивает затраты машинного времени.

ЗАМЕЧАНИЕ. Необходимо отметить, что одношаговые методы требуют для вычисления последующего значения функции знание лишь одной предыдущей точки разложения. Это обеспечивает методам дополнительную простоту, и, главное, позволяет без особых трудностей изменять шаг расчета в соответствии с величиной оцененной погрешности.

4.5.3 Многошаговые методы численного интегрирования Д/У

При использовании многошаговых методов для вычисления значения xk+1 используется информация о нескольких вычисленных предварительно значениях x(tk), x(tk-1), x(tk-p). Вспомним постановку задачи интегрирования: требуется вычислить функцию x(t) при задан­ном дифференциальном уравнении вида:

d - F(x. t, v)

Многошаговые методы используют различные способы интерполяции функции x(t) или заданной в аналитическом или табличном виде производной F(x,t,v).

Предположим, что найдено точное решение дифференциального уравнения, т.е. неко­торая функция f(t)-x(t), удовлетворяющая уравнению, т.е. обращающая его втождество:

d - F(f (t), t, v)

При этом, очевидно, что правая часть уравнения есть функция только времени, кото­рую обозначим через O(t), т.е.

dx{t)

- <*t)

dt

Заменим функцию O(t) некоторым интерполяционным многочленом, например в виде степенного ряда P(t) в окрестности точки tk. Используем для формирования интерполирующе­го полинома схему Ньютона с произвольно расположенными узлами.

Пусть интерполирующий полином P(t) имеет степень n с узлами интерполяции to, t1, ..., ti, ..., tj, ..., tn. В узлах полином равен интерполируемой функции Ф (tk), т.е. Ф (tk) - P(t\) для всех k - 0, 1, ..., п. Введем понятие разделенной разности первого порядка в виде:

р(>,)-р{М

. tj )-

<i - <j

По аналогии определим разделенные разности более высоких порядков:

t I A

- l

183

Pit, to )= Л I t m t -10

Pt, 1 t. )= )-P(' 0.Л)

t Л и т.д.

Тогда, выразив из первого соотношения P(t), из второго — P(t,tci) и т.д., получим:

P(t) = P(i0)+P(t, to)-(t-to)

Pft P P(t ^

<t i

Физический смысл разделенных разностей эквивалентен приближенному значению про­изводных функции P(t) в точке и. Предположим далее, что точка и подвижна, а отсчет времени производим от некоторой точки t0, тогда:

ft Pft ,N

( , 'o ) = P('o. 4) + ( ■ - t) • (t

i)

Т.к. функция P(t) есть многочлен степени n, то можно показать, что первая разделенная разность есть многочлен (П-1 )-0v\ степени, вторая, соответственно, — степени (П-2) и т.д. Таким образом, n-ая разделенная разность есть полином нулевой степени, a (n+1) — нуль. Таким образом, цепочка разделенных разностей ограничена, при этом можно осуществить по­следовательную подстановку значений разделенных разностей более высоких порядков в функцию P(t), что приведет к выражению:

P ( ' ) = P('o ) + ( I - 'o )• '1 ) + ( I - 'o № - '1 )• P ('o' A f2 )+ "» + (t - 'o )(t - '1 Xt - tn-i )• P('o, Л - Л n )

Таким образом, многочлен P(t) выражается через совокупность разделенных разностей в узлах t0, t1...tn. Величины разделенных разностей можно вычислить пореккурентным соот­ношениям, приведенным выше. Необходимо отметить, что, т.к. разделенные разности вычис­ляются по значениям полинома в узлах интерполяции, то они могут быть вычислены и через значения функции O(t) в точках t0, 11...tn.

Вернемся вновь к решению дифференциального уравнения вида:

М ) = 0 ( t ) dt w

Представим O(t) интерполяционным полиномом степени P(t) в окрестности точки tn. Будем считать, что значения O(t) в точках tn, tn -1, tn-2, tn-3 известны. Тогда

# ) = #n ) + (t - tn }• . tn-1 ) + (t - tn Л - t n -1 }• #n . t n-1. t n-2 ) +

+ (t - tn Xt - tn-1 )(t - tn_2 ) • <$>{tn , tn_1, tn_2, )

Ограничимся записанными членами, т.к. они определяют четвертый порядок точности приближения. В соответствии с видом дифференциального уравнения, величина x(tn+1) опре­деляется в виде:

tn+l

x(tn+1 ) = x(tn)+ j® с )dt

n

Подставим 0(t) в последнеевыражение и проинтегрируем его от tn до tn+1.

184

J(t - tn Ж л , tn 1 )dt

tn

Представим:

t—j,

•П+1 'n+1r 1

\{t - tn Xt - tn-1 )®('n , tn-1, tn-2 )dt = J l(t - tn )2 + hn_1 (t - tn )J- 4>{tn , tn-1, 'n-2 )dt

xtal ) = xn + i = xn +

'n+1

) d t + j f r - t n Ж Л . tn-1 )dt + jfr-tn)(t-tn-1 Жл ,'n-1.tn-2)d' +

+ J (t - tn Ut - tn_1 )(t - tn_2 )0(tn , tn 1, tn_2 , tn_3 )dt

tn

Будем обозначать h n = tn +1 - tn. Рассмотрим каждый интеграл вотдельности:

•П+1

jo(tn d = o ( t „ ) . hn

(t - tn

h:

n , tn-1 ) = ~T

, tn-1 )

(tzt n l + h ('-K):

2

# n . 'n-1. 'n-2 )

hn j h2n hn-

# n . t n -1. 'п- 2 ) =

h 2 6

.(2hn + 3hnhn_1 )-0(tn , tn_1, tn_2 )

Аналогично можно показать, что:

n+1

J (t - tn Xt - tn-1 )(t - tn-2 Ж Л , tn-1, tn-2 , tn-3 d

12

• (3hn2 + 8hnhn_1 + 4hnhn_2 + 6hn2_1 + 6hn_1hn_2 )• 0(tn, tn_1, tn_2, л з)

Таким образом, получаем формулу для нахождения n + 1 точки с помощью многошаго­вого метода Адамса 4-го порядка:

xn + 1 -x„+ hn < t n )+ -0 (tn, tn_1)+ л ( 2 h n + 3hn_1 )-0(tn, tn_1, tn_2) +

2 6

h 2 2

+ t^.(3h2 + 8hnhn 1 + 4hnhn 2 + 6hn21 + 6hI1 h 2 W tV,t„ t„ t„ з)

12 V n n n-1 n n-2 n-1 n-1 n-2/ V n' n—1? n —2? n-3/

Таким образом, для решения дифференциального уравнения численным методом Адам­са необходимо знать величины разделенных разностей вплоть до 3-его порядка, т.е. необхо­димо предварительное определение 4-х точек, в которых функция O(t) известна. Таким обра­зом, для реализации метода Адамса необходимо предварительно вычислить значения, хотя бы приближенные в точках tn, tn-1, tn-2, tn-3.

К

185

Это можно осуществить, например, предварительно проинтегрировав дифференциаль­ное уравнение каким-либо одношаговым методом, например, Рунге-Кутта или Эйлера. Фор­мулы, полученные для произвольного расположения узлов интерполяции, достаточно гро­моздки.

Более часто используют формулы для равноотстоящих значений моментов времени 'n, при этом разделенные разности заменяют конечными по формуле:

АрФ = p \Mt .,t 1, ,t )

n f£ \ rf ' n -1 ' ' n - p /

При этом

5 3

xn+1= n + Ьфп + 2 ДФ + h3 - а2ф„п + 8 h4а3Фп

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

Метод Адамса

Система дифференциальных уравнений, записанных в форме Коши в явном виде:

dx = F (x, t, v) dt

где x — вектор переменных состояния, т.е. искомые функции времени. Предположим, что найдено точное решение дифференциального уравнения, т.е. некоторая функция f(t) = x(t), удовлетворяющая уравнению, т.е. обращающая его в тождество:

ddx=F (f (t \ t, v) .

При этом, очевидно, что правая часть уравнения есть функция только времени, кото­рую обозначим через O(t), т.е.:

(dx = *<t)

Заменим функцию O(t) некоторым интерполяционным многочленом P(t). Пусть извест­ны значения функции O(t) в моменты времени tn, tn-1, tn-1, tn-3. В этом случае (согласно тео­реме о существовании и единственности интерполяционного полинома) можно построить по­лином 3-ей степени, значения которого в узлах tn, tn-1, tn-1, tn-3 совпадают со значением Q(t). Используем для формирования интерполирующего полинома схему Ньютона с произвольно расположенными узлами. Введем понятие разделенных разностей для подвижного узла ин­терполяции, который обозначим через t: p (t)_ p (t )

AP(t) = Л — разделенная разность 1-го порядка (полином 2-ой степени)

t - 1n

Pit)-Pjtn ) _ P {tn )-p('n -1)

„2> /ч API ')-AP(t) f^T Г-1 > .

A Pi') = —л л = n nn =1 разделенная разность 2-го

' - 'n 1 ' - 'n 1

порядка (полином 1-ой степени)

186

П+1 tn+1

= J A2 P(tn Xt - tn )2 dt + j A2P(tn Xt - tn K - d t = A2P(tn) 3 + h ^ ^ 1

A^Pit) AP2 (t )

A3P{t) = _ _ _ разделенная разность 3-го порядка (полином нулевой

t - U

степени).

Тогда, выразив из первого соотношения P(t), из второго _ AP(t), из третьего _ A2P(t), получим:

P{t ) = P{tn )+AP(t\t - tn)

AP(t) = A2P{t )(t - tn_1 )+AP(tn)

A2P{t) = A3Pfo ft - tn-2 ) + A2PЛ) Последовательной подстановкой определим P(t):

P(t) = P(tn) + [A2P(t)(t - tn_1)+AP(tn )](t - tn) =

= P (t n )+AP (tn Xt - tn)+ [a3 P (tn )(t - tn _ 2)+A2P (t n )]• (t- tn \t - tn _1) =

= P(t„)+AP(tn Xt - tn)+A2P(tn Xt - tn Xt - tn_ 1 )+A3P(tn Xt - tn Xt - tn_ 1 Xt - tn_2)

Данный интерполяционный многочлен определяет 4-ый порядок точности приближения. В соответствии с видом дифференциального уравнения решение в n + 1 точке определяется точным соотношением:

x(tn+1 )= x(tn)+ J®(t )dt tn

При замене O(t) интерполяционным полиномом по формуле, приведенной выше:

tn+1 *n+1 *n+1

Х 1) = xn+1 = xn + J P i '„ )dt + J AP (' n )(t - 1 „ )dt + J A2 P(tn )(t - 'n )(t - 'n_1 )dt +

+ J A3 P (tn tn )(t - лп. 1 Xt - tn-2 )

Будем искать каждый интеграл в отдельности. При этом примем, что hn=tn+1 - tn

hn-1 tn 'п-1 , hn-2 tn-1 tn-2:

(n+1

JP{tn )dt = P{tn )hn

h ■

\лp{tn Xt - tn )dt = AP{tn) 2:

П+1 tn+1

J A2P(tn )(t - tn Xt - tn 1 )dt = J A2P(tn )(t - tn Xt - tn + hn_1 )dt =

•П

tn

tn

tn

tn

'n

187

JA3 P(tn )(' - tn X* - tn_1 )(' - 'n-2 )dt =A3 Pfo )• 1 2 [3hn2 + 8hnhn_1 + 4hA_2 + 6hn^_1 + 6hn_1hn_2 ]

tn

Формулы, полученные для произвольного расположения узлов интерполяции, достаточ­но громоздки. Более часто используют формулы для равноотстоящих значений моментов времени tn, при этом разделенные разности заменяют конечными по формуле:

АрРп = pWP{tn)

При этом

h2 5 3

хи+] = г + h Pn '-2 — AP . +|П— h -A2Pn + 8 h4 -A3Pn

n+1 n n^nlZ nO n

4.5.4 Методы прогноза и коррекции

В методах прогноза и коррекции для вычисления положения новой точки xk+1 использует­ся информация о ранее полученных точках, однако для увеличения скорости сходимости метода после предварительного определения положения новой точки xk+1 осуществляется коррекция результата. Для этого применяются две формулы — прогноза и коррекции. Принци­пиально алгоритмы всех методов прогноза и коррекции одинаковы, отличия состоят лишь в формулах, по которым вычисляется прогнозируемое и корректируемое значения нового при­ближения.

Рассмотрим алгоритмы методов.

  1. По какому-либо из одношаговых методов определяется достаточное количество точек "разгонки" метода, т.е. приближенного значения xk, Xk.1> xk-2,..., xk-p и т.д., в зависимости от порядка применяемого метода.

  2. По формуле прогноза определяют значение xk+1 np=x(tk+1).

  3. По исходному уравнению определяют величину производной F(tk+1, xk+"p, v).

  4. Проводят одну или несколько (j) итераций с целью уточнения xk+1Kop, при этом оце­нивается норма вектора производных (точнее их разности) и сравнивается с заданным зара­нее приближением, т.е. величиной погрешности s:

F {tk + 1 , , v)-F( t k x л , v|<8

  1. Когда значение производной вычислено с достаточной точностью, его используют для вычисления точного значения xk+1Kop.

  2. Осуществляют переход к новому значению времени tk+2.

Простейшим из методов прогноза и коррекции является модифицированный метод Эйле­ра, в котором прогноз осуществляется в соответствии с одношаговым методом Эйлера, а кор­рекция — по модифицированному методу Эйлера в виде:

Ч + 1 = x k + hF (x k , f k >v)

x -

= =xXK++2h •- № kkt kv V)+I FxgtfF, t,k+1, V)J

Необходимоотметить, что в этом случае полученная точка xk+11,Kop тоженеявляет- ся достаточно точной, т.к. нет гарантий того, что полусумма производных достаточно близко аппроксимирует реальный ход кривой. Применим теперь итерационную процедуру вида:

188


J+1Kop _ и.кор <

xk+ 1 xk+ 1 - 1 .

Если погрешность уменьшается с ростом количества итераций, то можно утверждать, что процесс сойдется и будет достигнута большая точность вычисления xk+i.

Будем опускать обозначение кор., т.к. ясно, что в дальнейшем пойдет речь о формуле коррекции, т.к. прогноз выполнен один раз. Оценим условия сходимости итераций:

x'J+l.KOP х- ,kop h г / ч , М h

k+i k+i = 2 • i [F \{x '. h :v /) + F (xk+lrHkk-l-.i'v )/j -- 2 • [F (xxk. \ v ) +F (xk;1. Ц + 1. v)] =

h r F x л л '-i M h dF

= | ?F (xk+i. tk+i. v) + F (xk;i. tk+i. v ) ] = h • |F • [xk+i - xk;1 ]

xJ+i - x J ^h М - \ х J -J_i1 хk + i x Ak + i - 2 M х х

h 2 h3

+ hFi x k. f k.v) + ■

Л

tk k+1

-hF ( x k .tk . ' )+—2 • F ' (X k . gk .' ) + — • F ( x k .42.' )

где

h 2 h з

x к T P

xk + | \ F x, tk, v ) + F i, tk + i , v) ]

Будем применять ее несколько раз, каждый раз оценивая погрешность:

где берем в средней точке xk+i, xk;i.

dx

Будем предполагать, что производная функции < M, т.е. ограничена, тогда:

dx

i +i

-г h Ml , л

Тогда, очевидно, если —< i, то разница между значениями x в процессе коррекции

будет уменьшаться с ростом числа коррекций и можно ожидать, что при большом j она станет меньше s.

Т.е. если h<2/M, то процесс будет сходиться, причем тем быстрей, чем меньше h.

Рассмотрим вопрос о величине ошибки, возникающей при использовании методов про­гноза-коррекции.

x(t)= xk +(t - tk )• F(xk,tk,v)+* F \ x k , t k g v . f\xk,tk,v) + ...

+ h«F i x k. f k.v ) + —2 • F (x k. f k.v )+ — g F (xk. v )

где h -1 - tk

h3

Xk+1 - Xk-1 = 2h •ixk.'k.v)+ — • F"(xk. s.v)

6

где h -1 - h+1

89

Первые два слагаемых представляют собой собственно формулу прогноза, а третье сла­гаемое — ошибка метода. Итерационная формула коррекции:

= xk + А • [F ( x ■ f k • v ) + F (xk+1, fk+1. v)]

Аналогично предыдущему можно показать, что ошибка равна:

- у • F " ( x k , Л ,v)

Таким образом после проведения j +1 итерации коррекции суммарная максимальная ошибка составляет:

у - F { x k , V ) + у • F ( x k , Л, V )=- xk+1 + xk + !

Если предположить, что 3-й производные близки к постоянству:

F" {xk, t, v )= const

то:

x j ; - - * + 1 - h3 • А • F (xk, А v)

12 - где tM <0<tk+i

Т.к. погрешность формул коррекции s« h_. F" (xk,ц,v), то, очевидно, ее можно вы­числить, зная xk+1 и xk+/+1:

5

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

Аналогичные выкладки можно сделать и для методов более высоких порядков. Эта оценка на каждом шаге, подобно методам многошаговым, дает возможность строить програм­мы с изменяемым шагом. Впрочем, при "разгонке" метода (см. формулы прогноза), можно оценить F', и следовательно M и выбрать T&2/M. Тогда, если после первой коррекции ошибки (xk+/+1 - xk+1)<s/5, можно взять удвоенный шаг равный 2h. Если ошибка больше 5s, необходимо шаг уменьшить в два раза. И, наконец, в третьем случае h=const.

Вопрос устойчивости метода

Устойчивость — способность устранять положение ошибки.

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

h

= xk + 7 [ F ( x k , t k , v ) + F ( C А I k , v ) ]

Т.е. метод сошелся к некоторой точке xk+1c°, которая, возможно, и не равна точному зна­чению xk+1, для которого

xj + 1 - x

190

яИяИНИеусгойчивым, то -kji k+— растет с ростом к.

xk+i

Можно доказать (или показать), что методы прогноза-коррекции 2-го порядка являются по крайней мере относительно устойчивыми для любых реально используемых в электронике нелинейных функций F, т.е. его использование не приводит к расходимости.

Одним из распространенных методов прогноза и коррекции является методХемминга.

ЗАМЕЧАНИЕ. Методы прогноза и коррекции оказываются более устойчивыми при ин- тегрировании сложных зависимостей, особенно с большим разбросом постоянных времени параметров схем. В некоторых случаях методы прогноза и коррекции требуют меньших за- трат времени и объема памяти для реализации программы.

4.5.5 Неявные методы решения Д/У

Существенные преимущества при расчете реальных электронных схем имеют неявные методы численного интегрирования, которые позволяют облегчить решение задачи решения д/у при значительном разбросе постоянных времени, что характерно для большинства электронных схем.

Рассмотрим выражение для (k+i) — ойточкимодифицированного методаЭйлера:

x r + 1 = x k +h - Ил>xk> v)+f (t"xk + i,v)]+ek

При этом можно говорить об относительной и абсолютной устойчивости метода в смыс-

x x"

ле: если xk+i-xk+im уменьшается до нуля при любом k и -k±i — остается постоянным

xk + i

для любого к.

«k + i = xk +2-(F(xk, fk>v)+F (xk + i>t k +1 ))

Здесь в методе Эйлера значение Xk+i в правой части вычислялось, например, простым методом Эйлера, а затем по нему уточнялось значение xk+i в левой части. Подойдем к ре­шению задачи с несколько других позиций. Рассмотрим полученное выражение как алгебраи­ческое уравнение относительно xk+i и будем его решать, например методом Ньютона или методом последовательных приближений. Тогда, через определенное количество итераций можно получить точное значение xk+i.

Можно предложить неявный метод 2-го порядка (двухшаговый), выраженный итерацион­ной формулой Шихмана:

__ 1 4 2 f, ч

xk+1 _ з xk-1 + з ' xk + з ' h ' F vxk+1, tk+1,v /

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

191

Сравнение методов

Достоинства

Недостатки

1. Метод Рунге-Кутта

Можно помнить? решения можно изменять шаг

необходимо произвести ряд вычисле­ний во внутренних точках

трудно оценить погрешность

2. Многошаговые

Гораздо более высокая точность (меньшая ошибка на каждом шаге)

Трудно изменять шаг необходима "разгонка" метода

3. Прогноза и коррекции

Хорошо оценивается ошибка и дела­ется вывод об уменьшении шага

Требуется "разгонка" при изменении шага требует приме­нения метода Рунге-Кутта

4. Неявные

Можно решать системы жестких урав­нений

хорошая сходимость (устойчивость) метода;

легко изменять шаг;

осуществляется переход к решению алгебраических уравнений

Требуется "разгонка"

4.5.6 Специальные алгоритмы анализа переходных процессов

в нелинейных схемах

Нелинейная схема содержит хотя бы один нелинейный элемент.

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

При расчете переходных процессов удается воспользоваться лишь законами Кирхгофа, при этом вольтамперные характеристики нелинейных элементов могут быть заданы либо в графической, либо в табличной форме, или описаны аналитическим выражением. При этом предполагается, что нелинейный элемент является безынерционным, или его можно предста­вить безинерционным нелинейным звеном совместно с инерционной линейной частью. Методы анализа переходных процессов в нелинейных схемах классифицируются:

  • по способу решения нелинейных дифференциальных уравнений на графоаналитические и численные;

  • по характеру величины, для которой производится расчет - на методы для мгновенных значений, методы для огибающих первых гармоник, методы для медленно меняющихся амплитуд.

192

Дифференциальные уравнения для нелинейных схем составляются по законам Кирхго- фа. Представляется удобным составлять дифференциальные уравнения для каждого реактив- ного элемента - индуктивности или емкости в следующем виде:

«du fi , diT

IC = C — u, = L

C dt • L dt

если они линеины, и в виде:

C

dQ dV

u

dt dt

если последние нелинейны.

При этом система дифференциальных уравнений для схемы n-oro порядка преобразует- ся к виду:

dd - f1 (л , У 2, -У п л)

Ф 2 dt

f2 (У1, У 2 5 - У п > ')

£Уп

dt fn (У 15 У2'-У, „ t)

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

Нахождение переходного процесса есть решение задачи Коши, которая формулируется следующим образом: требуется найти решение системы n дифференциальных уравнений пер­вого порядка на заданном интервале времени (to...tk), если известны значения всех перемен­ных в одной точке, как правило, это точка — начало интервала интегрирования. Значения функций в начале интервала определяются, как несложно догадаться, из независимых началь­ных условий.

Основные виды нелинейностей, характерных для электронной техники, были рассмотре­ны в разделе i настоящего конспекта, касающегося моделей компонентов электронных схем. Численные методы решения систем линейных и нелинейных дифференциальных уравнений рассматривались в соответствующем разделе курса математическое моделирование. Графоа­налитические методы при современном уровне развития пакетов программ схемотехнического анализа не являются актуальными.

Нас будут интересовать лишь методы, позволяющие в той или иной степени облегчить решение системы нелинейных дифференциальных уравнений, а именно:

  • либо упростить алгоритм решения, сведя задачу на каждом шаге к анализу по постоянному току, что позволяет использовать ранее рассмотренный математический аппарат матрич­ных методов;

  • либо пренебречь при анализе быстрыми процессами (с малыми постоянными времени), происходящими при коммутации ключевых элементов, и выявлять лишь динамику посто­янной составляющей интересующей переменной состояния, усредняя значения производ­ных переменных состояния за интервалы проводимости ключевого элемента (при этом не­избежна потеря информации о поведении переменной состояния внутри каждого интерва­ла коммутации). Такой метод (усреднения в пространстве состояний) применяется для

93