- •Содержание 2
- •Введение. 136
- •2. Введение
- •1. Основные понятия
- •1.1 Моделирование. Основные понятия.
- •1.1.1 Системный анализ и моделирование
- •1.1.2 Концептуальные модели.
- •1.1.3 Термины и определения
- •1.1.4 Формализация и алгоритмизация процессов.
- •1.2 Математическое моделирование
- •1.2.1 Классификация математических моделей.
- •Классификация математических моделей на основе особенностей применяемого математического аппарата
- •1.2.2 Основной принцип классификации математических моделей
- •1.2.3 Программирование модели
- •1.2.4 Испытание модели
- •1.2.5 Исследование свойств имитационной модели.
- •Эксплуатация имитационной модели.
- •Анализ результатов моделирования.
- •1.3 Виды анализа и расчета электронных схем
- •1.4 Модели элементов и схем
- •2. Модели компонентов электронных схем
- •2.1 Классификация моделей
- •2.2 Интерполяция и аппроксимация функций при создании моделей
- •2.2.1 Интерполяция функций
- •2.2.2 Аппроксимация функций
- •2.3 Модели основных электронных компонентов
- •2.3.1 Базовый набор элементов моделей
- •2.3.2 1.1 Резистор
- •1. Пассивные компоненты и их модели
- •2.3.3 1.2 Конденсатор
- •2.3.4 Реальные конденсаторы
- •2.3.5 Катушка индуктивности и дроссель
- •2.3.6 Реальная индуктивность
- •2.3.7 Модели полупроводниковых приборов
- •2.4 Модели аналоговых компонентов программы Micro-Cap
- •2.4.1 Общие сведения о моделях компонентов
- •2.4.2 Пассивные компоненты
- •2.4.3 Резистор (Resistor)
- •Разброс сопротивления при использовании Monte-Carlo
- •3. Матрично-векторные параметры схем
- •3.1 Основные законы электрических цепей в матричном виде
- •3.2 Метод контурных токов
- •3.3 Метод узловых потенциалов
- •3.4 Метод обобщенных ветвей
- •3.5 Статический анализ линейных и нелинейных схем
- •3.6 Гибридный анализ электронных схем
- •4. Методы анализа переходных процессов
- •4.1 Введение
- •4.2 Литература
- •4.3 Основные задачи анализа переходных процессов
- •4.4 Анализ переходных процессов в линейных цепях
- •4.5 Анализ переходных процессов в нелинейных схемах и численные методы интегрирования нелинейных ду
- •4.5.1 Общие сведения о численных методах решения систем дифференциальных
- •4.5.7 Сведение расчета переходных процессов в электронных цепях к расчету цепей по постоянному току
- •4.6 Анализ переходных процессов в цепях с периодической
- •4.6.3 Дискретное преобразование Лапласа и его основные свойства
- •9. Теорема дифференцирования по параметру
- •10. Теорема интегрирования по параметру
- •11. Теорема об умножении изображений (теорема свертывания в вещественной области).
- •4.6.4 Решение линейных разностных уравнений
- •4.7 Параметрические цепи
3.5 Статический анализ линейных и нелинейных схем
3.5.1 Статический анализ линейных схем. Алгоритм исключения Гаусса
При описании линейных электронных схем методом узловых потенциалов, контурных токов, обобщенных ветвей, получены матричные уравнения вида:
U = Y• J ;
I = Z-1 • E
Для их решения требуется определить обратную матрицу и затем произвести ее умножение на вектор соответствующей размерности. Принципиальных трудностей эта задача не вызывает, однако техническая ее реализация требует значительных затрат машинного времени.
Гораздо более просто решается задача непосредственного решения системы n алгебраических уравнений вида:
ОпХ1 + Gu x2 + ... + ainXn = Ш a21X1 Л a22X2 л л a2nXn ~ M2
1
3
1
3
an i x i + an 2 x2 + - + a n n x n n
что эквивалентно матричному равенству:
100
0
(2)
0
(2)
U
32 U
42
0
(2)
0
(2)
A
• X = \i
Использование
правила Крамера для решения такой
системы уравнений приводит к необходимости
проведения
2(п+1)!
операций умножения. Более распространен
метод решения, называемый алгоритмом
исключения Гаусса.
Алгоритм
основан на идее исключения переменных
по одной до тех пор, пока в левой части
не останется одна переменная. Затем,
по найденному значению этой переменной
происходит определение всех остальных
неизвестных системы уравнений. Таким
образом, алгоритм исключения гаусса
состоит из двух шагов: шага исключения
и шага подстановки.
Рассмотрим
работу алгоритма для системы из 4-х
уравнений вида:
ВД
I
012
I
013
X Л
0Л14
Х4
—
I
л 2 2 Л 2 I
О23Х3
I Л24« Л4 Л
2
Л31Х1
I 032 ЛХ 2 I 033 ХХ3 I 034 ХХ 4 JX
3
Л41ХЛ1
л
4 2Х2
I 0
4 3Х3
I 04
4Х4
л 4
Умножим
первре уравнение на — и сложим со
вторым, включив результат в систему
ап
вместо
2-го уравнения. Очевидно, при этом
величина коэффициента при ч1 во втором
уравнении станет равной 0. Затем первое
уравнение умножается на коэффициент
— и
складывается
с третьим, и наконец, умножается на
коэффициент
0
0
и
складывается с
четвертым.
Преобразованная таким образом система
уравнений имеет вид:
0
ц
Х1
I
0Л12
Х2
I
0Л13
Х3
I 0Ц
Х4
022'
Х
2
+02
3'
Х3+024»
Х4
=
Л22>
Х2
+ <
Х3
+ < Х4
=
л 2
>
0
4 2
Х2
л'43
Х3
л'44
Х4 Мч
С
точки зрения матричных представлений,
указанные операции означают умножение
исходной матрицы A
на
матрицы S1,
S2, S3
вида:
в,
=
1
0
0
0
1
0
3
0
0
Проведем
дальнейшие преобразования, исключив
из третьего и 4-го уравнений коэффициент
при переменной Х2.
Для этого второе уравнение умножим
последовательно на коэффи-
циенты
и
сложим, соответственно, с третьим и
четвертым уравнением:
22
22
11
1
0
0
1
101
Исключим
переменную Хз из четвертого уравнения,
умножив третье на коэффициент
43
и сложив с четвертым. Получим систему:
a
(3)
a
(3)
ХЛ
I
А
2 I
А
2 I
aA4
X
4
22
Л
23
I
024
X4
a*-3
x +
a
лз)
x
33
3 34 4
■43
1
3 а ■ 4 4 1
4
И
1
Последнее
преобразование можно с точки зрения
матричного подхода представить
перемножением матрицы S1S2S3
A на
матрицы е4 и S5
вида:
2)
-
n
2
M
4
•
4
=
S5
=
42»
33
ад
1
0А12
Х2
1
013
Х2
1
014
X4
|АА
a
(2)
Х +
a2
Х
+
a
(2)
Х
*
2 2)
22
2 23 3 24 4
ГЛ3
Х +
a
(3)
Х
33
3 34 4
(4) ц
44)
a
44'
Х
4
Последняя
операция эквивалентна матричному
умножению на матрицу:
10
0 0
0 10 0
" 1(3
■f
Таким
образом после проведения указанных
преобразований, уравнение приведено
к ви-
ду, когда можно легко найти
значение переменной Х4.
Таким образои, матрица A
исходного
уравнения
трансформировалась в верхнюю треугольную
матрицу. Первый шаг алгоритма Га-
усса
— шаг исключения — окончен.
Найти
значение Х4
можно, умножив уравнение 4 на коэффициент
—. При этом:
a
44
)
Х4
—
a
(4)
a
44
Указанная
операция эквивалентна умножению
уравнения на матрицу вида:
0
102
0
0
-
a
S1
1
0 0 0
0
1
0 0
0
0 1 0
0
0
0
1
>(4)
Если
обозначить
S6-S5-S4-S3-S2-Si
A = U, то
имеем:
SUUx
a ii |
a 12 |
a 13 |
a |
x |
|
|
0 |
a (2) a 22 |
a (2) a 23 |
a |
x |
A 22) |
A 22) |
0 |
0 |
a (3) a 33 |
a |
x |
A 3 3) |
A 3 3 ) |
|
|
|
|
|
A 44) |
|
0 |
0 |
0 |
|
x |
|
Последнее матричное уравнение умножим на матрицы е7-и s2:
в7 =
1 0 0 0
0 1 0 0
0 0 1 0
( 3) 34
1 0 0
0
0 1
0
0
0 1
" 3 3 0
0 0
0
1
После первой операции умножения обратится в 0 коэффициент a3(4), т.к. он сложится со взаимно противоположным. После второго умножения коэффициент ae(3) станет равным 0 Указанные операции приведут к результату:
S 2Л7 S1UX -
Умножим последнее уравнение на две матрицы типа s: sg-и S9 и на матрицу S3
|
|
|
|
|
X1 |
|
Ц 1 |
" 1 1 |
■ 1 2 |
■ 1 3 |
■ 1 4 |
|
|
||
0 |
.(2) |
■ (2) |
■ (2) |
|
|
|
|
22 |
23 |
24 |
|
x 2 |
|
|
|
0 |
0 |
1 |
0 |
|
x 3 |
|
|
0 |
0 |
0 |
1 |
|
x 4 |
|
|
K9 =
a22)
о
S з =
1(2" 22 о
Получим:
a
0
1
о
0
103
1 1 |
of 12 |
a 13 |
" 1 4 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
|
X1 |
|
M1 |
|
x 2 |
|
м27) |
|
X 3 |
|
m36) |
|
X 4 |
|
m 45) |
Наконец, умножим последнее уравнение на матрицы ею, 8ц, si2, S4, получим:
= 10
0 0 1 0 0 1 0 0
- аь
0 0 1
Л n —
-a i 2 1 0 0 1 0 0
— 0 0 0
a
S 4 :
1
0
0 0
1 |
0 |
0 |
0 |
|
X1 |
|
8 Ml |
0 |
1 |
0 |
0 |
|
X 2 |
|
М27) |
0 |
0 |
1 |
0 |
|
X 3 |
|
M36) |
0 |
0 |
0 |
1 |
|
X 4 |
|
m45) |
S 4Л12Л11Л10 S 3S9S8 S 2Л7 S1UX
Таким образом, вектор искомых переменных будет равен столбцу коэффициентов. Решение уравнений, таким образом, проведено, причем, как показывает анализ, оно требует прове-
n3 „
дения — операции перемножения.
Необходимо учесть, что все указанные рассуждения справедливы в случае, когда элементы матрицы, на которые производится деление отличны от 0. В противном случае для проведения решения осуществляется перестановка строк матрицы.
3.5.2 Статический анализ нелинейных схем. Методы решения
нелинейных уравнений
Метод деления отрезка пополам
Предположим
нам задано нелинейное уравнение вида
Р(х)
= 0
и некоторый отрезок [хь
Х2],
Причем на краях интервала значения
функции принимают противоположные
знаки, т.е. f(x1
)-f(x2)<0.
Таким образом, на отрезке [хь
Х2]
функция f(x)
имеетхотя
бы один корень. Будем искать этот корень
следующим способом. Проанализируем
значение функции f(x)
в
точке
хл
=
X1
л
X2
—
середина интервала [Х1,
Х2].
Выберем теперь для анализа один из
интер- 2
валов [хь хз] или [хз, Х2], а именно тот на котором f(x1 )-f(x3)<0 или f(x3)fx2)<0. Полученный отрезок вновь делится пополам и т.д. до тех пор, пока искомый корень не будет найден с заданной точностью, т.е. пока интервал [Х1, Х2] не сократится до заданной изначально величины s. Указанный метод дихотомии (деления отрезка пополам) имеет ряд преимуществ:
• Он всегда сходится, т.е. корень всегда можно отыскать за определенное количество приближений;
a
104
Для
его реализации не требуется вычисление
производной функции, что значительно
уп-
рощает реализацию метода.
Однако
метод деления отрезка пополам имеет и
значительные
недостатки:
Медленную
сходимость, т.к. на каждом шаге приближения
отрезок неопределенности оты-
скания
корня сужается всего в 2 раза. Поэтому
для получения 3-х значащих цифр
корня
требуется 10 итераций.
Не
распространяется на системы нелинейных
уравнений.
Для
начала работы метода требуется знать
начальный участок приближения, на
котором
находится предполагаемое
значение корня. Однако для электронных
схем указанная трудность
в значительной
степени устраняется тем, что диапазон
напряжений в схеме заключен между
значениями
напряжений источников питания схемы.
Поэтому интервал [xi,
x2],
если
перемен-
ной x
является
напряжение, всегда известен.
Метод
простых итераций
Запишем
нелинейное уравнение
F(x)
=
0 в
несколько ином виде cp(x)=x.
Ука-
занное
преобразование можно произвести,
приняв,
например, cp(x)=F(x)+x.
Будем
ис-
кать корень x*
путем
последовательных при-
ближений xn+i
=ф(хп).
Геометрическая ин-
терпретация
метода достаточно прозрачна
рис.
3.21.
Рассмотрим
вопрос
об устойчивости метода. Например, в
случае нелинейной за-
висимости ф(х)
вида рис. 3.22. метод, очевидно, расходится.
Пока-
жем условия, которые определяют
область сходимости метода.
Таким
образом, если ф (1 )| > 1 во всем интервале
вблизи кор-
ня, где выбрано начальное
приближение, то каждая следующая точ-
ка
будет все больше удаляться от предыдущей.
Если ф (1 )| < 1, то отрезки xn+1
увеличения
числа n
будут
уменьшаться, т.е. метод будет сходиться.
Метод
хорд и секущих
Рассмотрим
функцию f(x)
и
выберем 2
приближения xo
и
xA.
Будем
искать следую-
щее приближение из
значений функции на
предыдущих двух
по формуле:
Геометрическая
интерпретация метода
достаточна
ясна (рис. 3.23).
Достоинством
метода является то, что
для его
реализации не требуется знать или
вычислять производную функции, однако
недостат-
ком является необходимость
определения двух начальных приближений
для реализации ме-
Ри°
321
xn
+ 1
ф(
Хп)-Ф(х*}
= (xn
-
x*
)-ф'(£)
Xn
по
мере
xn+1
f
(x
n
}
(x
n -
x
n
-
1 )
f
( x
n }
-
f (xn
-
1 }
Рис.
3.23
x
n
105
тода.
К недостаткам можно отнести также и
то, что формула для вычисления последующего
приближения в некоторой степени
напоминает формулу численного
дифференцирования, поэтому при
приближении к корню, когда f
(Xn)-
f (x
n_i)
мало,
возможно возникновение ошибок
округления, в результате чего метод
может выдавать ошибки расчета типа
деления на нуль, что приводит к останову
программы. Для устранения этого
недостатка оценивают получаемую
погрешность и останавливают расчет,
если она становится соизмеримой с
точностью представления чисел в ЭВМ.
Метод
Ньютона-Рафсона
Рассмотрим
уравнение f
(X)
=
0. Предположим, что функция бесконечно
дифференци-
*
руема
вблизи корня X . Предположим далее, что
имеем некоторое приближение X
n
на
n-ом
шаге расчета, причем xn
—
не корень уравнения, т.е. f
(xn)
ф
0. Функцию f(x)
можно
разложить в ряд Тейлора вблизи точки
xt
в
виде:
d
f (x) id
2
f(x)
f
(Xn+j) =
f
(x„> 4
. (Xn
+ 1
Xn) A
* (x
-
xn
)2 +
x=x
„
1
d
2f
(Х)
2!
dx'
Последнеее
соотношение определяет итерационную
формулу
Ньютона-Рафсона для одного нелинейного
урав-
нения. Геометрическая
интерпретация метода достаточно
проста
(рис. 3.24).
Рис.
324 Метод
обеспечивает сходимость в случае, если
на-
чальное
приближение выбрано достаточно близко
к корню. Однако, если начальное
приближе-
ние выбрано неудачно, то
метод может расходиться или циклиться
(рис. 3.25). При выборе на-
чального
приближения в точке
хо1
метод сходится к корню xi
,
при начальном приближении
хо4
— расходится, при начальном приближении
хо2,
хо3
— зацикливается.
f
(x) =
f
(Xn) 4
dx
(Х
-
xn
)•
2!
dx2
x
- xn )2 +
Предположим,
что следующий шаг решения xn+i.
Тогда,
если разность (xn+i-xn)
невелика,
можно записать:
d
f (Х)
dx
Если
пренебречь степенями (xn+i-xn)
выше
первой, то последнее выражение
преобразуется к виду:
f
(
X n
+
j
)
« f
(Xn) 4
d
f (
x
)
dx
(Xn
+ i
X
n )
Т.к.
следующее приближение выбирается таким
образом, чтобы обеспечить равенство:
f
(xn+i)
=
0, с учетом последнего приближенного
равенства получим:
|
|
' d f (x) |
л |
X n + 1 |
_ X n |
V dx |
*= J |
-i
f ( Xn )
(
х = х
Х = Х
и
п
106
ox dx"
X _Xn
x=xn X
_Xn
Рис.
3.25
Очевидно,
может быть написана программа,
автоматически определяющая признаки
расходимости метода, что позволяет
корректировать процессы выбора
начального приближения до тех пор, пока
метод не начнет сходиться.
Скорость
сходимости метода Ньютона-Рафсона
оценивается величиной
£n
=
x*
-
xn
на
j-ой
итерации. Можно показать, что для метода
справедливо: £j+i
<
^sj.
Если
Ъ,п
<< 1, то ме-
тод сходится очень
быстро. Для сравнения скажем, что в
методе простых итераций
£j+i
<
k£j,
т.е.
он сходится намного медленней.
ПРИМЕР. о_
f
и
л E
1
I
=
I
e
Фт
-1 R
V
У U
=
фг
In
L
+
V
1
0
U
=
E
-
IR
_
E
-
U
I
_
R
f
E"IR
\ E
-
U
I
_
I
e Фт
- 1 ; U
_
фт In f
1
— такая форма записи
Рис.
3.26
V
у
V
Io
R
нелинейного
уравнения подходит для решения численным
методом простых итерации.
Метод
Ньютона-Рафсонадля системы уравнений
Метод
Ньютона-Рафсона можно распространить
на систему m
нелинейных
уравнений
вида:
f
(x1,
x2,...
xm
)_
0
i
= 1,2,...m
Предположим,
имеется n-oe
приближение
xn
_(xA,xj,...xm).
Разложим
функцию нескольких переменных в ряд
Тейлора в окрестности точки Xn
_
( x
1
n
,
x
m )
:
ft
(x1,
x
2,...xm
)_
ft
{xl, x2,...xm) +
f
(x1
-
XI
)
+
i_1,
2,
...m
или:
F(Xn
+1)
_ F{Xn)+
J{Xn
X л
-
Xn)
x
m )
+ вторы£!степени
Далее
следуют члены более высокого порядка
малости, т.е. разности [xk
-
xkn)
более
высоких степеней, умноженные на частные
производные более высоких порядков.
Если при-
107
m
(Xn
+ 1
_X11
)
'
. (Xn2+1
- Xn2 ) +
4
ax2
X=Xn
j
= 1, 2,
...m
Указанная
система уравнений может быть записана
иначе путем перенесения
i
.
нять,
что на
(n+1)
итерации
значение аргумента Xn+i
=(xn+i,xV..x"+i),
а
сама функция
F(Xn+i)
равна
0 (т.е. найден корень уравнения), то
получим:
f,
X , xi...
xm)
+ f
dx"
fo
-
x")
« 0
X=Xn
fY|/
x1n,
Х n
x nm'в
правую часть
J(Xn
)
• (X n
+1
- Xn
)
= - F
(Xn )
Здесь
J
(X
n)
— матрица Якоби функции f
(
f
dx1
J
fXn 1 =
f
dx1
j
f L
dx2
f
dx
2
)
! в т о
df
dx"
dx"
С
dx1
С
dx2
dx"
X=X
А
вектора Xn+i,
Xn,
F(Xn)
имеют
вид:
X
n+1
,,2
n+1
X
=
Х
п
n
f1
X
)
F
1 ='
}m
(
n
)
Последнее
соотношение переписывается также в
виде:
X
n +
Xn
-fJX„)YF(X„)
Что
и дает итерационную формулу метода
Ньютона-Рафсона для системы нелинейных
уравнений. Метод Ньютона-Рафсона
является наиболее общим методом решения
систем нелинейных уравнений, одной
из проблем реализации метода является
необходимость вычисления и оценки
на каждом шаге частных производных
функции многих переменных.
ПРИМЕР.
En
Ic
=
f
{Ucu
'U3u).
Еп
-uebvc~RfU3H1
,UCH1)
иси2
Uвых
~
изи2
П
R1
•
С И
С И 2
V
• иЗИ1
= RVJU3H1"W1)
У
изи2
= R 2f
(иЗИ2' U
СИ 2 )
■
U
e
П
RH
108
ч
к е
n
x
m
x
x
cm
И
С И 1
с
R
2
Рис.
3.27