АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Матриці «спеціального» вигляду

Читайте также:
  1. Звернення до елементів матриці та операції з ними

Існує декілька матриць «спеціального» вигляду для полегшення вводу інформації.

1. «zeros» – матриця, заповнена нулями. Можна створювати квадратну матрицю (у цьому випадку у дужках записується лише одне число – розмір квадратної матриці) або матрицю довільного розміру (у дужках вказується кількість рядків і через кому кількість стовпців), наприклад

>> A=zeros(3)

A =

0 0 0

0 0 0

0 0 0

 

 

>> B=zeros(2,3)

B =

0 0 0

0 0 0

2. «eye» – одинична матриця (квадратна матриця з одиницями по головній діагоналі), наприклад

 

 

>> A=eye(4)

A =

1 0 0 0

0 1 0 0

0 0 1 0

0 0 0 1

3. «ones» – матриця, що складається з усіх одиниць. Створюється так само, як і матриця із нулями, наприклад

>> A=ones(4)

A =

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

>> B=ones(2,3)

B =

1 1 1

1 1 1

4. «rand» – матриця, що заповнюється випадковими десятковими числами, наприклад

>> A=rand(4)

A =

0.8147 0.6324 0.9575 0.9572

0.9058 0.0975 0.9649 0.4854

0.1270 0.2785 0.1576 0.8003

0.9134 0.5469 0.9706 0.1419

>> B=rand(2,3)

B =

0.4218 0.7922 0.6557

0.9157 0.9595 0.0357

5. «diag» – матриця із заданими елементами по діагоналі та іншими нульовими елементами. Для створення цієї матриці необхідно попередньо задати вектор-діагональ, наприклад

>> d=[1 2 3 4];

>> A=diag(d)

 

A =

1 0 0 0

0 2 0 0

0 0 3 0

0 0 0 4

У якості діагоналей також можна використовувати матрицю «ones» та множити її на будь-яке число, наприклад

 

>> A=5*diag(ones(1,4))

A =

5 0 0 0

0 5 0 0

0 0 5 0

0 0 0 5

Також можна рухати діагоналі паралельно головній, заповнюючи її елементами. Для цього у команді «diag» потрібно ставить кому і написати на скільки діагоналей угору або униз буде відбуватися зміщення (для зміщення униз потрібно перед числом ставити мінус). Треба також пам’ятати, що зі зміщенням униз або угору діагоналі змінюють свою розмірність. За допомогою команди «diag» можна також додавати або віднімати діагоналі від існуючих матриць, наприклад

>> A=-2*eye(4)+4*diag(ones(1,3),1)

A =

-2 4 0 0

0 -2 4 0

0 0 -2 4

0 0 0 -2

Для більш детального приклада, розглядається наступна матриця

.

Спочатку потрібно створити діагональну матрицю, помножену на 2, потім зсунути одну діагональ угору, створену з одиниць і помножену на 3, та дві униз (одну з одиниць, помножену на -1, іншу на 4). Це виконується за допомогою наступної послідовності команд

>>A=2*eye(5)

A =

2 0 0 0 0

0 2 0 0 0

0 0 2 0 0

0 0 0 2 0

0 0 0 0 2

 

>>A=2*eye(5)+3*diag(ones(1,4),1)

A =

2 3 0 0 0

0 2 3 0 0

0 0 2 3 0

0 0 0 2 3

0 0 0 0 2

>>A=2*eye(5)+3*diag(ones(1,4),1)-1*diag(ones(1,4),-1)

A =

2 3 0 0 0

-1 2 3 0 0

0 -1 2 3 0

0 0 -1 2 3

0 0 0 -1 2

>>A=2*eye(5)+3*diag(ones(1,4),1)-1*diag(ones(1,4),-)+4*diag(ones(1,3),-2)

A =

2 3 0 0 0

-1 2 3 0 0

4 -1 2 3 0

0 4 -1 2 3

0 0 4 -1 2

6. «tril» та «triu» – команди створення трикутників під та над головною діагоналлю відповідно. Синтаксис запису такий як і в команді «diag». Трикутники можна також рухати униз та угору і множити на числа, наприклад

>> A=triu(ones(4,4),1)

A =

0 1 1 1

0 0 1 1

0 0 0 1

0 0 0 0

>> B=tril(ones(4,4),-1)

B =

0 0 0 0

1 0 0 0

1 1 0 0

1 1 1 0

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)