|
||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Матриці
Всі змінні в середовищі MATLAB являють собою матриці (або масиви). Так, скаляр (число) в MATLAB є масивом розмірності 1х1, вектор – матрицею з одним рядком або одним стовпчиком. Матриці можна вводити безпосередньо, наприклад, у командному рядку. Для цього необхідно вказати ім’я матриці, після якого поставити оператор присвоювання та в квадратних дужках послідовно перерахувати всі її елементи. Елементи одного рядка відділяються пробілом або комою, а рядки – крапкою з комою (;). Приклад В.3. >> A=[1 2 3; 4 5 6; 7 8 9] A = 1 2 3 4 5 6 7 8 9 Альтернативний спосіб введення матриці полягає в натисканні клавіші <Enter> (або сполучення клавіш <Shift> + <Enter>) наприкінці кожного рядка. Безпосереднє введення векторів здійснюється так само, як і введення матриць. При цьому елементи вектор-рядків перераховуються в квадратних дужках через пробіл або кому, а вектор-стовпчиків – через крапку з комою. Приклад В.4. >> x=[3 1 2 9] x = 3 1 2 9 >> y=[15;10] y = В MATLAB передбачений більш простий спосіб створення векторів або матриць, кожний елемент яких відрізняється від попереднього на одну і ту саму величину (або крок). Для введення таких векторів або матриць призначений оператор: (двокрапка), за допомогою якого можна задавати діапазон значень. Команду для створення вектор-рядка, всі елементи якого відрізняються один від одного на постійний крок, можна умовно записати: >> ім’я вектора=[початкове значення:крок:кінцеве значення] Якщо крок дорівнює 1, то його можна не вказувати, і дана команда приймає вигляд: >> ім’я вектора=[початкове значення:кінцеве значення] Приклад В.5. Створимо вектор-рядок з використанням оператору двокрапки: >> z=0:0.2:1 z = 0 0.2000 0.4000 0.6000 0.8000 1.0000 Крок може бути і від’ємним числом, наприклад, в результаті виконання команди >> u=[10:-2:1]; буде створений вектор . Даний приклад демонструє ще одну особливість автоматичного створення векторів з використанням двокрапки – сума передостаннього елемента та кроку необов’язково повинна дорівнювати кінцевому значенню. В такому випадку останній елемент вектора приймає значення, що входить у визначений користувачем діапазон. Відмітимо, що з використанням оператора: можна автоматично створювати не лише вектори, а й матриці. Так, команда >> B=[1:2:7; 8, 2:4; 12:-1:9; 14, 13, 16, 15] призводить до створення наступної матриці B = 1 3 5 7 8 2 3 4 12 11 10 9 14 13 16 15 Крім поелементного введення, можна автоматично створювати матриці спеціального вигляду за допомогою вбудованих функцій. В табл. В.2 наведені деякі з них. Таблиця В.2 Функції формування спеціальних матриць
Приклад В.6. Створимо нульову матрицю розміром 2х4: >> C=zeros(2,4) C = 0 0 0 0 0 0 0 0 Перелічені в табл. В.2 функції можна застосовувати також і для створення векторів, оскільки вектор є матрицею, у якої одна з розмірностей дорівнює одиниці. Наприклад, щоб автоматично створити вектор-рядок з п’ятьма одиничними елементами достатньо в командному рядку записати >> v=ones(1,5) v = 1 1 1 1 1 Звернення до елементів векторів і матриць здійснюється за допомогою індексів. Індекси вказуються в круглих дужках після імені матриці або вектора і являють собою порядковий номер елемента (у випадку векторів) або номер рядка та стовпчика, в яких розташований елемент (у випадку матриць), до якого необхідно отримати доступ. В MATLAB нумерація елементів розпочинається з одиниці, відповідно індекси повинні бути більше або дорівнювати одиниці. Наприклад, для звернення до третього елемента деякого вектора x, необхідно записати x(3), а запис A(2,3) означає елемент, що знаходиться на перетині другого рядка та третього стовпчика матриці A. Звертатись до елементів матриць можна, використовуючи всього один індекс. В цьому випадку матриця розглядається як один вектор-стовпчик, сформований послідовно зі стовпчиків початкової матриці. Наприклад, отримати значення елементу, що знаходиться у другому рядку та третьому стовпчику матриці A, можна за допомогою команд A(2,3) або A(8). В загальному випадку команду для доступу до елемента вектора можна подати у вигляді: >> ім’я вектора(порядковий номер елемента) Загальний вигляд звернення до елемента матриці наступний: >> ім’я матриці(номер рядка,номер стовпчика) Щоб замінити значення елемента вже створеної матриці на інше, треба вказати ім’я матриці, індекси елемента в круглих дужках, оператор присвоювання та нове значення елемента. Так, команда >> A(3,1)=cos(pi); змінює значення елемента, який знаходиться на перетині третього рядка та першого стовпчика матриці A з прикладу В.3 на . Останній приклад свідчить також про те, що елементами матриць і векторів можуть бути не тільки числа, а й значення математичних функцій. При зверненні та присвоєнні деяких значень елементам матриць (векторів), в якості індексів можна використовувати вектори, діапазони або оператор:. Наприклад, за допомогою виразу A(1:2,1:3) можна виділити підматрицю, що складається з елементів перших двох рядків та перших трьох стовпчиків матриці A з прикладу В.3: >> A(1:2,1:3) ans = 1 2 3 4 5 6 Якщо при зверненні до елементів матриці замість одного з індексів вказано оператор:, то це означає що треба виділити весь рядок або стовпчик. Так, запис A(3,:)означає третій рядок матриці A: >> A(3,:) ans = 7 8 9 Ще один спосіб виділення підматриць полягає у використанні векторів в якості індексів. Наприклад, щоб отримати значення елементів матриці A, що розташовані в другому рядку, в першому і третьому стовпчику, можна записати: >> A(2,[1 3]) ans = 4 6 Об’єднання матриць (векторів) з однаковою кількістю рядків “по горизонталі” відбувається так: [A B C]; “по вертикалі” – [A; B; C] (матриці A, B і C повинні мати однакову кількість стовпчиків). Зауважимо, що команди об’єднання матриць (векторів) можуть містити довільну кількість імен матриць (векторів). Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.) |