Студопедия

КАТЕГОРИИ:

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


Типи даних і об’єктно-орієнтований підхід




У системі MATLAB визначено шість базових типів даних, кожний з яких є тим або іншим видом масиву. Шість класів – double, sparse, uint8, char, cell і struct. Належність того або іншого об'єкта системи MATLAB до одного з класів може бути зображена наступною схемою (рисунок 2.1).

Найчастіше доводиться мати справу з двома з цих класів: масивом чисел подвоєної точності (double) і масивом символів (char). Це зумовлено тим, що обчислення виконуються з подвоєною точністю, і тому більшість функцій працюють з масивами чисел подвоєної точності, а також з рядками.

Рисунок 2.1 – Типи даних MATLAB

Інші класи призначені для таких спеціальних додатків, як робота з розрідженими матрицями (sparse), обробка зображень (uint8), робота з масивами великої розмірності (cell і struct).

Не можна задати тип змінної numeric або array. Ці типи називаються віртуальними і слугують тільки для того, щоб згрупувати змінні, які мають загальні атрибути.

Тип uint8 призначений для ефективного зберігання даних у пам'яті. До даних цього типу можна застосовувати тільки базові операції індексації і зміни розмірів, але не можна виконати ніякі математичні операції. Для цього такі масиви необхідно перетворити на тип double.

Мова MATLAB дозволяє створювати власні типи даних UserObject і працювати з ними за аналогією з вбудованими типами.

Кожному типу даних відповідають свої функції і оператори обробки, або, іншими словами, методи. В таблиці 2.1 наведені деякі з таких методів.

 

Таблиця 2.1 – Методи типів даних

Клас Метод
Масив Array Обчислення розміру (size), довжини (length), розмірності (ndims), об’єднання масивів ([a b]), транспонування (transposen), багатовимірна індексація (subsindex), пере визначення (reshape) і перестановка (permute) розмірності багатовимірного масиву
Масив комірок Cell Індексація з використанням фігурних дужок { ,…..., } і поділом елементів списку комами
Рядок Char Рядкові функції ( strcmp, lower ), автоматичне перетворення на тип double для застосування методів класу double.
Double Арифметичні й логічні операції, математичні функції, функції від матриць
Numeric Пошук (find), обробка комплексних чисел (real, imag), формування векторів, видалення рядків, стовпців, підблоків масиву, розширення скаляра
Sparse Операція над розрідженими матрицями
Масив записів Struct Доступ до вмісту поля .filed (роздільник елементів списку - кома)
Unit8 Операція збереження (найчастіше використовується із ППП Image Proccesing Toolbox)
UserObjekt Визначається користувачем

 


Поделиться:

Дата добавления: 2015-09-14; просмотров: 65; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты