Формування векторів і матриць 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Формування векторів і матриць



Кращий спосіб почати роботу з MatLab - це навчитися поводитися з матрицями. У MatLab матриця - це прямокутний масив чисел. Особливе значення надається матрицям 1x1, які є скалярами, і матрицям, що мають один стовпець або один рядок, - векторам. MatLab використовує різні способи для зберігання чисельних і не чисельних даних, проте спочатку краще всього розглядати усі дані як матриці. MatLab організований так, щоб усі операції в нім були як можна природнішими. Тоді як різні програмні мови працюють з числами як елементами мови, MatLab дозволяє вам швидко і легко оперувати з цілими матриці.

Особливості завдання векторів і матриць

MatLab - система, спеціально призначена для проведення складних обчислень з векторами, матрицями і масивами. При цьому вона за замовчанням припускає, що кожна задана змінна - це вектор, матриця або масив. Усе визначається конкретним значенням змінної.

Введення матриць

Вводити матриці в MatLab можна декількома способами:

· вводити повний список елементів

· завантажувати матриці із зовнішніх файлів

· генерувати матриці, використовуючи вбудовані функції

· створювати матриці за допомогою ваших власних функцій в М-файлах

Введення вектор-рядка здійснюється в квадратних дужках, проте на відміну від вектор-стовбця елементи слід розділяти пропусками або комами. Операції складання, віднімання і обчислення елементарних функцій від вектор-рядків проводяться так само, як і з вектор-стовбцями, в результаті виходить вектор-рядок того ж розміру, що і початкові.

З'ясуйте, в яких масивах зберігаються вектор-рядки. Для цього можна використати вікно Workspace або функції ndims, size і команду whos:

Отже, вектор-рядки si, s2, s3 і s4 містяться в двовимірних масивах розмірності один на чотири. Для визначення довжини вектор-столбцов або вектор-рядків служить вбудована функція length:

За умовчанням усі числа (елементи масивів) зберігаються з подвійною точністю (double) і займають 8 байтів. Великі масиви вимагають для зберігання значних об’ємів пам’яті. Для зменшення об'єму займаної масивами пам'яті можна застосовувати інші способи зберігання елементів масиву: single для дійсних чисел, що вимагають для розміщення 4 байти, і int8, inti6, int32 - для цілих чисел, що займають 1, 2 або 4 байти відповідно. Використання таких даних значно економить пам’ять і не впливає на функціональні можливості пакету MatLab.

Для зміни точності представлення чисел призначені однойменні з типом (Class) цих функцій single, int 8, int l6, int 32:

Якщо тепер подивитися розподіл пам'яті під масиви, то легко помітити істотну різницю у відведеній для зберігання пам'яті:

Для масивів великої розмірності економія пам'яті може бути істотною. Виконання арифметичних операцій з дійсними числами різного типу допустиме і дає результат з найменшою точністю - single:

Спроба виконати арифметичні операції над цілими числами різних типів призводить до помилки:

Більше того, при перетворенні цілого числа, коли для точного представлення бракує пам'яті, що відводиться, виходить максимальне число для цього типу (тобто. невірний результат) без попередження про це:

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

З декількох вектор-столбцов можна скласти один, використовуючи квадратні дужки і розділяючи початкові вектор-столбцы крапкою з комою:

Для зчеплення вектор-рядків також застосовуються квадратні дужки, але зчіплювані вектор-рядки відділяються пропусками або комами:

Запам'ятовувати правила зчеплення вектор-рядків і вектор-столбцов не вимагається, досить подивитися на вектор-рядок v як на блоковий рядок. Елементи цього блокового рядка, т. е. вектор-рядки vl і v2, розділені пропуском відповідно до правила набору вектор-рядків. Аналогічне міркування вірно і для зчеплення вектор-столбцов.

Для перегляду і зміни значень елементів масивів зручно використати редактор масивів (Array Editor). Двічі клацніть мишею по імені масиву v у вікні Workspace або натисніть кнопку Open Selection на панелі інструментів вікна Workspace при положенні курсора на імені масиву - відкриється вікно редактора масивів з вмістом вектор-рядка v. Ім'я масиву, що переглядається, вказане в рядку заголовка вікна.

Подвійне клацання мишею по осередку або натиснення клавіші <F2> (як і в таблицах MS Excel) дозволяє редагувати вміст відповідного елементу масиву. Переконайтеся в цьому, змінюючи значення елементів і виводячи масив в командне вікно. При заповненні порожніх клітин змінюються розміри масиву так, що він залишається прямокутним найменшій розмірності і містить усі певні елементи. При цьому не визначені користувачем елементи набувають нульового значення. Для зменшення розмірів слід використати елемент управління Delete (у контекстному або віконному меню або на панелі інструментів), а не Cut, який призводить лише до обнулення елементів Подвійне клацання мишею по осередку або натиснення клавіші <F2> (як і втаблицах MS Excel) дозволяє редагувати вміст відповідного елементу масиву. Переконайтеся в цьому, змінюючи значення елементів і виводячи масив в командне вікно. При заповненні порожніх клітин змінюються розміри масиву так, що він залишається прямокутним найменшій розмірності і містить усі певні елементи. При цьому не визначені користувачем елементи набувають нульового значення. Для зменшення розмірів слід використати елемент управління Delete (у контекстному або віконному меню або на панелі інструментів), а не Cut, який призводить лише до обнулення елементів масиву.

Для роботи з даними редактор масивів MatLab надає можливості, аналогічні MS Excel. Збільште довжину вектор-рядка v до 10, для чого виділите перші п'ять її елементів, скопіюйте їх за допомогою спливаючого меню, зробіть поточним шостий осередок і використайте вставку (Paste) для дублювання перших п'яти елементів вектор-рядка.

Перевірте за допомогою командного вікна чи змінився вектор у.

Редактор масивів дозволяє переглядати значення декількох змінних. Подвійне клацання по рядку з vi у вікні Workspace призводить до появи нового вікна в редакторові масивів. Кожне з вікон можна зробити активним за допомогою відповідної вкладки внизу вікна редактора або вибравши його назву в меню Window. Кнопки в правій частині панелі інструментів відповідають різним способам розташування таблиць з вмістом масивів у вікні редактора Array Editor. Також редактор масивів виявляється дуже корисним при відладці власних програм.



Поделиться:


Последнее изменение этой страницы: 2016-04-19; просмотров: 272; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.125.2 (0.006 с.)