Студопедия

КАТЕГОРИИ:

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


Короткі теоретичні відомості. Середовище програмування системи MATLAB призначено для розробки додатків, інтегрованих зі всіма пакетами розширення




Середовище програмування системи MATLAB призначено для розробки додатків, інтегрованих зі всіма пакетами розширення. В ній реалізовані всі принципи процедурного і об'єктно-орієнтованого програмування і включає компілятори з мов С+, FORTRAN, ADA.

Файли, що містять команди і оператори MATLAB, називаються М-файлами. Існують два типи М-файлів: М-сценарії і М-функції. Їх характеристики наведено у таблиці 1.1.

М-сценарій М-функція
Не має вхідних і вихідних аргументів Має вхідні і вихідні аргументи
Оперує з даними із робочої області За замовчуванням внутрішні змінні є локальними стосовно функції
Призначений для автоматизації по-слідовності кроків, які виконуються багаторазово Призначена для розширення можли-востей мови MATLAB (бібліотеки, функції, пакети прикладних програм)

 

М-сценарій:

SCRIPT Заголовок сценарію

Синтаксис:

Script

Команда «script» задає заголовок сценарію і записується в першому рядку. Сценарій (Script-файл) – це зовнішній файл, що містить послідовність команд, операторів і функцій системи MATLAB. Після введення у командному рядку імені такого файлу починається послідовна інтерпретація його операторів. За допомогою зміни заголовка сценарій може бути перетворений на процедуру-функцію.

Сценарій є найпростішим типом М-файла – він не має вхідних і вихідних аргументів. Сценарій дозволяє автоматизувати виконання послідовностей команд, які в іншому випадку повинні були б багато разів уводитися з командного рядка. Сценарії оперують даними з робочої області і можуть створювати нові дані для подальшої обробки в цьому файлі. Хоча М-сценарії не повертають вихідних аргументів, вони зберігають усі змінні, які використовуються в них, у робочу область; після виконання сценарія ці дані можуть бути використані для подальших обчислень.

Будь-який текст, якому передує символ «%», є коментарем, він може використовуватися у вигляді окремого рядка, або після будь-якої з команд.

Імена М-сценаріїв не дозволяється використовувати як операнди у виразах або як аргументи функцій.

М-функція

FUNCTION Заголовок процедури-функції

Синтаксис:

function[<список вихідних змінних>]=<ім’я функції>(<список вхідних змінних>)

Якщо перший рядок М-файла починається з визначення: function[<список вихідних змінних>] = < ім’я функції >(<список вхідних змінних>), то цей файл являє собою М-функцію. Ці файли розширюють можливості системи завдяки додаванню нових функцій, самостійно написаних користувачем мовою MATLAB. М-функція включає наступні компоненти:

Рядок визначення функції function f = fact (n)

Перший рядок коментаря % FACT Обчислення факторіала.

Коментар % fact (n) повертає n! – факторіал числа n.

% Обчислити fact (n) = prod (1:n)

Тіло функції f = prod (1:n)

Рядок визначення функції задає ім'я, кількість і порядок проходження вхідних і вихідних аргументів. Перший рядок коментаря визначає призначення функції. Вона виводиться на екран за допомогою команд «lookfor» або «help<ім’я каталогу>». Коментар виводиться на екран разом з першим рядком при використанні команди «help <ім’я функції>». Тіло функції – це програмний код, який реалізує обчислення і привласнює значення вихідним аргументам.

М-функції використовуються так само, як звичайні вбудовані функції системи MATLAB. Ім'я М-функції можна використовувати при записі арифметичних виразів. Нові функції додаються до словника системи MATLAB і стають доступними разом із вбудованими функціями. Ці функції мають вигляд текстових файлів з розширенням .m.

Функція в системі MATLAB не має ніяких відмінних ознак, і при зверненні до неї MATLAB просто шукає файл з відповідним ім'ям. Коли файл знайдений, він проходить процедуру компіляції, розміщується в оперативній пам'яті і лише після цього починає виконуватися. У цьому також відмінність функції від Script-файла, який виконується тільки в режимі інтерпретації. Для видалення з пам'яті відкомпільованої функції використовується команда «clear<ім’я функції>».

Якщо при виконанні функції увімкнений режим echo, то функція також буде виконуватися, в режимі інтерпретації і на термінал буде виводитися результат виконання кожного оператора.

М-файли можуть містити коди для більш ніж однієї функції. Перша функція у файлі – це основна функція, що викликається за іменем М-файлу. Інші функції всередині файла – це підфункції, які є видимими тільки для основної функції і інших підфункцій цього ж файла.

Кожна підфункція має свій власний заголовок. Підфункції йдуть одна за одною безперервно, можуть викликатися у будь-якому порядку, тоді як основна функція виконується першою. Коли виконується виклик функції з М-файла, то MATLAB передусім перевіряє, чи не є ця функція підфункцією.

Приклад. Знайти середнє значення елементів вектора.

Побудуємо функцію «average»:

% AVERAGE Середнє значення елементів вектора.

function y=average(x)

%Якщо вхідний аргумент не є вектором, генерується помилка.

[m,n]=size(x);

if(~((m==1)|(n==1))|(m==1&n==1))

error('Input must be a vector')

end

y=sum(x)/length(x); % Обчислення

Функція «average» має єдиний вхідний і єдиний вихідний аргументи. Для того щоб викликати функцію «average», уведемо наступні оператори:

z = 1:99;

average(z)

ans = 50

Супутні функції: MARGIN, NARGOUT, PCODE, VARARGIN, VARARGOUT WHAT.


Поделиться:

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





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