
Matlab_L1.pptx
- Количество слайдов: 27
Обработка числовой информации с помощью матричной лаборатории MATLAB
Знакомство с MATLAB. Интерфейс Matlab.
Матричная лаборатория • MATLAB - (сокращение от англ. «Matrix Laboratory» ) одна из старейших, тщательно проработанных и проверенных временем систем автоматизации математических и научнотехнических расчетов, построенная на расширенном представлении и применении матричных операций. • Mat. Lab предлагает мощный C-подобный язык, прекрасную графику и большое число различных библиотек (toolbox).
Матричная лаборатория MATLAB реализует три важные концепции программирования: • процедурное модульное программирование, основанное на создании модулей – процедур и функций; • объектно-ориентированное программирование, особенно ценное в реализации графических средств системы; • визуально-ориентированное программирование, направленное на созданиесредств графического интерфейса пользователя GUI (Graphics User Interface).
Матричная лаборатория • Язык программирования MATLAB относится к классу интерпретаторов. Это значит, что любая команда системы распознается (интерпретируется) по ее имени (идентификатору) и немедленно исполняется в командной строке, что обеспечивает легкую проверку по частям любого программного кода. • Важными достоинствами системы являются ее открытость и расширяемость. Большинство команд и функций системы реализованы в виде m-файлов текстового формата (с расширением. m) и файлов на языке C/C++, причем все файлы доступны для модификации. Пользователь так же может самостоятельно создавать необходимые библиотеки функций.
Окно истории команд Рабочее пространство Окно «Текущая директория» Меню Интерфейс MATLAB Командное окно Панель инструментов
Интерфейс MATLAB 1. Command Window (командное окно ). В этом окне вводятся команды и отображаются результаты их выполнения. 2. Command History (окно истории команд). В этом окне отображаются все команды, которые запускали на исполнение вводом в командном окне. 3. Workspace (рабочее пространство). В этом окне отображаются все переменные, которые использует система в данный момент. 4. Current Directory (текущая директория). Отображает текущую директорию. В этой директории система Mat. Lab ищет файлы данных, которые Вы пытаетесь открыть и M-файлы, имена которых Вы набираете. Она также ищет их во всех каталогах, перечисленных в списке, доступном через меню File / Set Path…
Вычисление в Mat. Lab можно производить следующими способами: • ввод команд в командном окне – командный режим • выполнения файла-сценария (скрипта) • выполнение файла-функции
Работа в командном режиме При работе в командном режиме все команды вводятся по очереди после символа “>>”. Результат выполнения отображается в командном окне и в рабочем пространстве.
Работа в командном режиме • При работе с MATLAB в командном режиме действует простейший строчный редактор. Таблица 1. Команды строчного редактора Комбинация клав. Назначение → или Ctrl+b Перемещение курсора вправо на один символ ← или Ctrl+f Перемещение курсора влево на один символ Ctrl+→ или Ctrl+r Перемещение курсора вправо на одно слово Ctrl+← или Ctrl+l Перемещение курсора влево на одно слово Home или Ctrl+a Перемещение курсора в начало строки End или Ctrl+e Перемещение курсора в конец строки ↑ и ↓ или Ctrl+p и Ctrl+n Перелистывание предыдущих команд вверх или вниз для подстановки в строку ввода
Работа в командном режиме Таблица 1. Продолжение Комбинация клав. Назначение Del или Ctrl+d ← или Ctrl+h Ctrl+k Esc Ins Pg. Up Pg. Dn Стирание символа справа от курсора Стирание символа слева от курсора Стирание до конца строки Очистка строки ввода Включение/выключение режима вставки Перелистывание страниц сессии вверх Перелистывание страниц сессии вниз
Команды управления окном Таблица 2. Команды управления окном Команда clc, home Описание очищает экран и размещает курсор в левом верхнем углу пустого экрана echo включает режим вывода на экран <file_name> on текста Script -файла (файласценария) echo выключает режим вывода на экран <file_name> off текста Script-файла; echo меняет режим вывода на <file_name> противоположный
Команды управления окном Таблица 2. Продолжение Команда Описание echo on all включает режим вывода на экран текста всех M-файлов echo off all отключает режим вывода на экран текста всех M-файлов more on включает режим постраничного вывода (полезен при просмотре больших M-файлов) more off отключает режим постраничного вывода (в этом случае для просмотра больших файлов надо пользоваться линейкой прокрутки).
Mat. Lab в роли мощного научного калькулятора • Интерпретирующий язык программирования системы MATLAB создан таким образом, что любые вычисления можно выполнять в режиме прямых вычислений, то есть без подготовки программы пользователем. При этом MATLAB выполняет функции суперкалькулятора и работает в режиме командной строки. • Работа с системой носит диалоговый характер и происходит по правилу «задал вопрос – получил ответ» . Пользователь набирает на клавиатуре вычисляемое выражение, редактирует его (если нужно) в командной строке и завершает ввод на жатием клавиши ENTER.
Mat. Lab в роли мощного научного калькулятора • Пример.
Mat. Lab в роли мощного научного калькулятора Из приведенного примера можно сделать следующие выводы: • для указания ввода исходных данных используется символ >>; • для блокировки вывода результата вычислений некоторого выражения после него надо установить знак «; » (точка с запятой). Но при этом результаты вычислений будут находится в рабочем пространстве; • если не указана переменная для значения результата вычислений, то MATLAB назначает такую переменную с именем ans; • результат вычислений выводится в строках вывода (без знака >>) • аргументы функций располагаются в круглых скобках.
Работа с редактором/отладчиком M-файлов Любая последовательность команд может быть оформлена в виде M-файлов. Для профессиональной подготовки, редактирования и отладки таких файлов служит специальный редактор системы Mat. Lab. Вызов редактора происходит с помощью команды File->New-> Blank M-File Либо сочетанием клавиш : Ctrl+N
Работа с редактором/отладчиком m-файлов Окно редактора M-файла
Работа с редактором/отладчиком m-файлов Сохранить М-файл можно либо с помощью пункта меню File->Save (Save As), либо с помощью панели инструментов, либо сочетанием клавиш Ctrl+S. • Строки программы в редакторе нумеруются в последовательном порядке. • Редактор является многооконным. Окно каждой программы оформляется как вкладка.
Работа с редактором/отладчиком m-файлов Редактор/отладчик М-файлов выполняет синтаксический контроль программного кода по мере ввода текста. При этом используются следующие цветовые выделения: • ключевые слова языка программирования – синий цвет; • операторы, константы и переменные – черный цвет; • комментарии после знака % – зеленый цвет; • символьные переменные (в апострофах) – зеленый цвет; • синтаксические ошибки – красный цвет. Не все ошибки диагностируются. Ошибки, связанные с неверным применением операторов или функций, не способнаружить ни одна система программирования. Устранение такого рода ошибок (их называют семантическими) – дело пользователя, отлаживающего свои алгоритмы и программы.
Работа с редактором/отладчиком m-файлов Запуск М-файлов на исполнение происходит с помощью пункта меню Debug-> Run, или кнопки Run на панели инструментов, или нажав клавишу F 5. Основным приемом отладки М-файлов является установка контрольных точек остановки (Breakpoints). Они устанавливаются(и сбрасываются) с помощью кнопок Set/Clear Breakpoints. Сброс всех контрольных точек обеспечивается кнопкой Clear All Breakpoints.
Работа с редактором/отладчиком m-файлов При остановке в контрольной точке можно провести: • контроль значений переменных; • выполнение шага трассировки Step; • пошаговое выполнение без захода в вызываемые Мфайлы Step Out; • пошаговое выполнение с заходом в вызываемые Мфайлы Step In; • запустить продолжение исполнения программы Continue; • выход из режима отладки Exit Debug Mode.
Работа с редактором/отладчиком m-файлов Из-за ошибок или из-за сложности решаемой задачи Mat. Lab «зацикливается» и перестает выдавать результаты либо непрерывно их выдает. Для прерывания вычислений в таких случаях необходимо нажать сочетание клавиш Ctrl+C (Ctrl+Break). Для завершения работы с системой можно использовать команды quit, exit или комбинацию клавиш Ctrl+Q.
Операции с рабочим пространством Дефрагментация рабочей области. По мере задания переменных и стирания других рабочая область перестает быть непрерывной и начинает содержать «дыры» и всякий «мусор» . Это может привести к ухудшению работы системы или к нехватки памяти. Во избежание таких проблем следует использовать команду pack, осуществляющую дефрагментацию рабочей области.
Операции с рабочим пространством Удаление определенных переменных. Для очистки рабочей области, где хранятся все переменные, используется функция clear в разных форматах: • clear – уничтожение определений всех переменных; • сlear x - уничтожение определения переменной х; • сlear a, b, c - уничтожение определений нескольких переменных.
Операции с рабочим пространством Сохранение рабочей области. Для сохранения рабочей области служит команда save: • save fname – записывается рабочая область всех переменных в файле бинарного формата с именем fname. mat; • save fname X – записывает только значение переменной X; • save fname X Y Z – записывает значения переменных X, Y и Z. После параметров команды save можно указать ключи, уточняющие формат записи файлов: • -mat – двоичный MATформат, используемый по умолчанию; • -ascii – ASCIIформат единичной точности (8 цифр); • -ascii -double – ASCIIформат двойной точности (16 цифр); • -ascii -double -tabs – формат с разделителем и метками табуляции; • V 4 – запись MATфайла в формате версии MATLAB 4; • -append – добавление в существующий MATфайл. Возможно использование слова save и в формате функции, а не команды, например: save('fname', 'var 1', 'var 2')
Операции с рабочим пространством Загрузка рабочей области. Для загрузки рабочей области ранее проведенной сессии (если она была сохранена) можно использовать команду load: • load fname … – загрузка ранее сохраненных в файле fname. mat определений со спецификациями на месте многоточия, подобными описанным для команды save; • load('fname', …) – загрузка файла fname. mat в форме функции. Если команда (или функция) load используется в ходе проведения сессии, то произойдет замена текущих значений переменных теми значениями, которые были сохранены в считываемом MATфайле. Для задания имен загружаемых файлов может использоваться знак *, означающий загрузку всех файлов с определенными признаками. Например, load demo*. mat означает загрузку всех файлов с началом имени demo, например demo 1, demo 2, demoa, demob. Имена загружаемых файлов можно формировать с помощью операций над строковыми выражениями.
Matlab_L1.pptx