Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Основы теории оценивания с приложениями к задачам обработки навигационной информации. Ч. 1 Введение в теорию оценивания

.pdf
Скачиваний:
117
Добавлен:
19.11.2023
Размер:
26.49 Mб
Скачать
(П1.1.56)

 

 

 

Т а б л и ц а П1Л.1

Некоторые полезные матричные соотношения

Соотношение

 

 

Примечание

(.ЛВ)Г =ВТАТ

(П1.1.51)

Л, B - произвольные матрицы согла­

сованной размерности

ТУ(АВС) = Тг(ВСА) = Тг(САВ)

А , 5, С - произвольные матрицы

 

(П 1.1.52)

согласованной размерности

 

 

 

//

 

А -

квадратная матрица,

Tr(A) = ' * T x i

(П1.1.53)

X,- -

собственные числа А

/=1

 

 

 

 

det(ÆB) = det(A) det (В)

(П1.1.54)

А, В - квадратные матрицы одинако­

 

 

вой размерности

det(/4) = J"J X;

(П 1.1.55)

А -

квадратная матрица,

Ху -

собственные числа А

 

 

/=1

(AB)~l = B~lA~x

[рч + Я г/Г,я]~' = P - PHT[ilPHT + fi)"'HP

 

 

(П1.1.57)

[p -1 + Л - 1 ]-1

=P - P (P + R )~1P

 

 

(П1.1.58)

[ P E + q b ] -

\ { E

*

, /

 

r ^

nq

+ r - J

 

 

(П1.1.59)

А, В - квадратные невырожденные матрицы одинаковой размерности

P , R - квадратные невырожденные матрицы размерности п и /и,

Н - шх л матрица

P , R - квадратные невырожденные матрицы одинаковой размерности

/ - я-мерная квадратная матрица, составленная из единиц; г 2, q 1 -

положительные величины

(A x)-A ,

(xTAT) - A T

 

 

 

 

dxT

dx

 

 

 

 

 

 

 

 

 

(П1.1.60)

А -

квадратная симметричная мат-

(x TAx) = 2Ax • —

(xTAx) = 2 x TA

 

рица,

 

dx

dxr

 

 

Л' = (л'1?...х л ) т -

п -мерный вектор

 

 

 

(П1.1.61)

 

 

 

 

 

 

 

Я2

 

 

(П 1.1.62)

 

 

 

 

(* тАт) = 2Л

 

 

 

 

 

дхдхт

 

 

 

А - квадратная симметричная

 

 

 

 

 

 

[ g T(*M g(*)] = 2

g

^ A g ( x ) ,

 

матрица,

 

5JC

 

or

 

g ( x )

= (g , (-Х,

),...g„, (Л-,

))т

в частности,

 

 

-

m-мерная вектор-функция,

 

|- [ 0 ' - Я»С)Т Л(у -

« 0 1 « 2 H TA{y - Hx)]

 

 

X , у - я- и т-мерный векторы,

dx

 

 

(П 1.1.63)

 

 

 

 

 

Н - шхн-матрица

 

 

 

 

 

 

 

 

 

 

 

 

Продолжение табл.

х1 A x - 2 x Tz = ( x - А )A (x-A ~lz ) - z TA~,z

А - квадратная невырожденная

 

 

 

(П1.1.64)

симметричная матрица,

 

 

 

 

JC, z

- л-мерные векторы

Г

р х

р х>'~\

 

с= р У

х р*У j

Задана р =

 

 

 

 

 

L o p * y

р у \

 

в = - Рх -

Рху[рУ)"‘Рух^ Рху(рУ )"'

Найти р ~ ] =

^

^

1.1.65)

 

 

 

[ в т

С ]

 

А = р * - Р х у ( р У у Р У* j 1

 

 

 

 

П1.2. Матричные операции в Matlab

В настоящем подразделе описаны основные приемы выполнения мат­ ричных операций с использованием Matlab [64].

Для задания матриц в рабочем поле Matlab необходимо в квадратных скобках перечислить построчно все ее элементы, разделяя их пробелами или запятыми, а строки точками с запятой. Элементами матриц могут служить арифметические выражения и сами матрицы. При этом пере­ менные арифметических выражений должны быть определены заранее. Примеры задания матриц приведены в табл. П1.2.1.

Т а б л и ц а П1.2.1

Примеры задания матриц в Matlab

Текст в рабочем поле

Результат

 

А =

А=[1 2;15 6]

1

2

 

15

6

а=2; b=3; с=0.5; d=1.2;

А =

5.0000

1.5000

A=[a+b c*b;d/a с]

0.6000

0.5000

 

Для обращения к конкретному элементу матрицы используется тра­ диционная форма записи А(2,1) - элемент, стоящий во второй строчке первого столбца. В качестве индексов могут быть использованы не толь­

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

Использование символа «двоеточие» позволяет «вырезать» из исход­ ной матрицы матрицу пониженной размерности. Так, операция А(1:3,2) определяет вектор столбец 1x3, сформированный из первых трех элемен­ тов второго столбца.

Ниже в табл. П1.2.2 приведены основные операции, которые могут быть выполнены над матрицами в Matlab.

Операции.

Функция

А+В

А-В АВ А\В

В/А

АЛЬ

sqrt(A)

ехр(А)

abs(A)

sin(A), cos(A) и т. д.

Т а б л и ц а П1.2.2

Элементарные операции и функции

Назначение

Сложение

Вычитание

Умножение

АВ ^- левое деление матриц

В 1А - правое деление матриц Возведение матрицы А в степень (матрица должна быть квадратной)

Вычисление квадратного корня из элементов матрицы А Вычисление значений экспоненты для элементов матрицы А

Вычисление значений модулей элементов матрицы А

Вычисление тригонометрических функций матрицы А

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

Операции над массивами - выполняются поэлементно.

Операции над матрицами - выполняются по правилам линейной ал­ гебры.

Операции сложения и вычитания над матрицами и массивами совпа­ дают.

Обозначения: .* ./ .Л - соответствуют поэлементным операциям ум­ ножения, деления и возведения в степень.

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

х =

 

0

0.2500

0.5000

-0.5000

-0.2500

-0.5000

-0.2500

0

0.2500

0.5000

-0.5000

-0.2500

0

0.2500

0.5000

-0.5000

-0.2500

0

0.2500

0.5000

-0.5000

-0.2500

0

0.2500

0.5000

Тогда х.*х

 

 

 

ans =

 

0

0.0625

0.2500

0.2500

0.0625

0.2500

0.0625

0

0.0625

0.2500

0.2500

0.0625

0

0.0625

0.2500

0.2500

0.0625

0

0.0625

0.2500

0.2500

0.0625

0

0.0625

0.2500

Такая же матрица может быть получена как х.Л2

ans =

0.0625

 

 

0.2500

0.2500

0

0.0625

0.2500

0.0625

0

0.0625

0.2500

0.2500

0.0625

0

0.0625

0.2500

0.2500

0.0625

0

0.0625

0.2500

0.2500

0.0625

0

0.0625

0.2500

В то же время х*х - есть результат перемножения двух квадратных матриц, т.е. ans =

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Операция хЛх - ошибочна.

При выполнении операций с матрицами их размерности должны быть согласованы.

Функции, у которых аргументами являются матрицы, порождают матрицу, полученную в результате вычисления функции для каждого элемента. Так, ехр(А) или sqrt(A) порождают матрицы с элементами exp(A(i,j) и sqrt(A(i,j). Некоторые функции, позволяющие средствами Matlab формировать и преобразовывать матрицы, описаны в табл. П1.2.3.

Формирование и преобразования матриц в Matlab

Функция

Назначение

Р‘

Транспонирование матрицы

ctranspose(P)

 

еуе(п)

Формирование единичной п хп мерной матрицы

eye(m,n)

Формирование единичной /?/ х п мерной матрицы

zeros(A)

Обнуление матрицы А

zeros(n)

Формирование п х п матрицы, составленной из нулей

zeros(n,m)

Формирование п х т матрицы, составленной из нулей

ones(n)

Формирование п х п матрицы, составленной из единиц

ones(m,n)

Формирование т х п матрицы, составленной из единиц

diag(P)

Формирование вектора, совпадающего с главной диагона­

 

лью

diag(v)

Формирование квадратной матрицы с вектором v на диа­

 

гонали

tril(P)

Сохранение нижней и верхней треугольной матриц, соот­

triu(P)

ветственно

det(P)

Вычисление определителя матрицы Р

trace(P)

Вычисление следа матрицы

inv(P)

Обращение матрицы

eig(P)

Вычисление собственных значений

 

Вычисление собственных значений и собственных векто­

[•Я, Л] = eig(P)

ров

А - диагональная матрица собственных значений

 

R - матрица нормированных собственных векторов, удов­

 

летворяющих уравнению PR = AR

expm(P)

Вычисление матричной экспоненты

sqrtm(P)

Вычисление одной из многих матриц, удовлетворяющих

р\/2р\/2 _ р

Заметим, что если ввести символьные переменные, то все введенные операции будут справедливы и для символьных матриц. Эти операции реализуются с использованием средств Matlab - Simbolic Math Toolbox. Для этого необходимо ввести символьные переменные. Так, например, символьные переменные D, t, w вводятся как syms D t w.

В табл. П1.2.4 приведены примеры работы с матрицами.

Примеры операций с матрицами

Текст в рабочем поле

Результат

 

 

 

А =

 

 

 

Р=[12;3 4]

 

1

2

 

 

 

3

4

 

 

 

С =

 

 

 

Р=[1 2;3 4]; С=Р*

 

1

3

 

 

 

2

4

 

 

 

С =

 

 

 

C=c(ranspose(P)

 

1

3

 

 

 

2

4

 

 

 

A =

 

 

 

 

 

1

0

0

0

0

A=eye(5)

0

1

0

0

0

0

0

1

0

0

 

0

0

0

1

0

 

0

0

0

0

1

 

1 =

 

 

 

 

I=ones(3)

1

1

1

 

 

1

1

1

 

 

 

1

1

1

 

 

 

X =

 

 

 

 

Р=[1 2;3 4]; X=diag(P)

1

 

 

 

 

4

 

 

 

 

Р=[1 2;3 4]; X=diag(P);

А =

 

 

 

 

1

О

 

 

 

A=diag(X)

О

4

 

 

 

 

ans =

 

 

 

 

1

0

0

0

 

A=ones(4); tril(A)

1

1

0

0

 

 

1

1

1

0

 

 

1

1

1

1

 

 

ans =

 

 

 

 

1

1

1

1

 

A=ones(4); triu(A)

0

1

1

1

 

 

0

0

1

1

 

 

0

0

0

1

 

Текст в рабочем поле

Р=[2.5 1.5;1.5 2.5];

det(P)

inv(P)

eig(P)

|R,L]=eig(P)

expin(P)

sqrtm(P)

Символьные операции над матицами

syms a b c d;P=[a b;b d]

r=det(P)

B=inv(P)

Продолжение табл.

Результат P =

2.5000 1.5000

1.5000 2.5000 ans =

4.0000 ans =

0.6250 -0.3750 -0.3750 0.6250

ans = 1 4

R =

0.7071 0.7071 -0.7071 0.7071

L =

l

0

 

0

4

 

ans =

 

 

28.6582

25.9399

25.9399

28.6582

ans =

 

 

1.5000

0.5000

0.5000

1.5

p = [a, b] [b, d] r =

a*d-bA2

B =

[ d/(a*d-bA2), -b/(a+d-bA2)] [ -b/(a*d-bA2), a/(a*d-bA2)l

Задачи к приложению П1

Задача 1. Даны матрицы А и В размерности 3 x 3 и 3 x 2 соответст­ венно, найти:

а) определитель det(A); б) след матрицы Тг(А);

в) матрицу С = Ат-В+В.

Задача 2. Дана матрица А размерности 2 x 2 , найти: а) характеристический многочлен матрицы А; б) собственные значения матрицы А; в) обратную матрицу А'1

Задача 3. Дана матрица А = О

а , наити матричную экспоненту е ,

О

О

используя ее представление в виде ряда.

Задача 4. Задана матрица А размерности 2 х 2 и столбец х соответ­ ствующей размерности, найти квадратичную форму у = хтАх для мат­

рицы А и вектора х и определить

оу

 

дхт

 

 

 

Задача 5. Заданы две блочные матрицы

 

’ /

Р~

 

!"S

r'S

./

п А

В

К = т С

D и

r S

S = L

к F

G

требуется задать число строк у блочных матриц L и М , так чтобы была справедлива операции перемножения блочных матриц, и привести выра­

жения для блоков матрицы N =KS и матрицы T = S TK T

Задача 6. Уметь выполнять операции 1-4, используя Matlab.

Контрольные вопросы

1.Дайте определение диагональной единичной, симметричной и транс­ понированной матрицам.

2.Поясните такие понятия, как определитель, след и алгебраическое дополнение матрицы.

3.Поясните правила сложения и умножения матриц, какие матрицы на­ зываются коммутативными.

4.Поясните, что получается при умножении строки на матрицу, матри­ цы на столбец, строки на столбец и столбца на строку. При каких ус­ ловиях эти операции правомочны?

5.Какая матрица называется невырожденной? Что такое ранг матрицы?

6.Приведите общее правило вычисления обратной матрицы. Какая мат­ рица называется ортогональной?

7.Что такое характеристическое уравнение, собственные числа и собст­ венные векторы?

8.Какие матрицы называются подобными.

9.Запишите правило вычисления транспонированной и обратной мат­ риц для произведения двух матриц.

10.Поясните процедуру сведения матрицы к диагональному виду.

11.Поясните, что такое квадратичная форма, в каком случае квадратич­ ная форма является положительно и неотрицательно определенными? В каком смысле следует понимать матричные неравенства?

12.Каким образом можно ввести функции от матриц?

13.Как вычисляется производная и интеграл от матрицы, зависящей от времени?

14.Поясните, как вычислить производную от скалярной и вектор функ­ ции по векторному аргументу.

15. Поясните, как вычислить производную скалярной функции

по

матрице (матричный градиент).

П2. ПОСТРОЕНИЕ ГРАФИКОВ В MATLAB

П2Л. Элементарная графика Matlab

В этом подразделе описаны основные приемы и примеры построения одномерных графиков с использованием Matlab. В табл. П2.1 приведено описание функций, полезных при построении одномерных графиков [64].

Т а б л и ц а П2.1

Функции, полезные при построении одномерных графиков

Функция

plot(y)

plot(x,y)

plot(x,y,LineSpec)

plot(x,y,LincSpec,xl ,y2, LincSpec2)

fplot(‘<iiMH функunn>\limits)

ezplot(‘f(x)\[xmin

xmax])

Subplot(m,n,p)

Subplot(mnp)

Subplot mnp

grid on grid off grid Title(e<TeKCT>’)

holdon

Назначение Строит график элементов одномерного массива у в зависимости от номера элемента

Строит график, для которого элементам одномерного массива л* (значениям аргументов) соответствуют элементы у

С помощью строковой переменной LineSрес, кото­ рая может включать до трех символов, определяют­ ся тип линий, тип маркера и цвет На одном графике строится несколько функций

Строит график одной переменной в заданном ин­ тервале limits=[xmin xmax], если аргумент limits=[xmin xmax ymin ушах], то принимается во внимание и заданный интервал по оси у.

Аргумент ‘<имя функцш1> ’ - это либо имя м-файла, либо функция вида ‘sin(xy

Строит график функции одной переменной, запи­ санной в в виде символьного выражения по прави­ лам языка, по умолчанию в пределах [-2 л,2л]

Производит разбивку графического окна на не­ сколько подокон, m - количество подокон по верти­ кали, п - по горизонтали, р - номер подокна. Эти же команды могут быть использованы для перехода от одного подокна к другому Наносит координатную сетку на текущие оси, уда­

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

Соседние файлы в папке книги