
Тема 3 файловая система matlab
Цель работы: Получить основные навыки работы с файловой системой в среде Matlab.
Система MATLAB состоит из множества файлов, находящихся в различных папках. Наиболее важны файлы двух типов – с расширениями .mat и .m. Первые являются бинарными файлами, представляющими запись параметров рабочей области в сеансе работы системы. Вторые представляют собой текстовые файлы, содержащие внешние определения команд и функций системы. Особое значение имеет папка MATLAB/TOOLBOX/MATLAB. В ней содержится набор m-файлов стандартного расширения системы, называемый Toolbox. Просмотр этих файлов позволяет детально оценить возможности конкретной версии системы. Ниже перечислены основные папки набора Toolbox.
Команды общего назначения:
General – команды общего назначения.
Операторы, конструкции языка и системные функции:
ops – операторы и специальные символы;
lang – конструкции языка программирования;
strfun – строковые функции;
iofun – функции ввода/вывода;
timefun – функции времени и дат
datatypes - типы и структуры данных.
Основные математические и матричные функции:
elmat – команды создания элементарных матриц и операций с ними;
elfun – элементарные математические функции;
specfun – специальные математические функции;
matfun – матричные функции линейной алгебры;
datafun – анализ данных и преобразования Фурье;
polyfun – полиномиальные функции и функции интерполяции;
funfun – функции функций и функции решения ОДУ;
soarfun – функции разреженных матриц.
Команды графики:
graph2d – команды двухмерной графики;
graph3d – команды трехмерной графики;
specgraph – команды специальной графики;
graphics – команды графики Handle Graphics;
uitools – графика пользовательского интерфейса.
Полный список файлов любой вложенной папки можно вывести на просмотр с помощью команды help имя, где имя – название соответствующей вложенной папки (см. выше).
Переменные и определения новых функций в системе MATLAB хранятся в особой области памяти, именуемой рабочей областью.
MATLAB позволяет сохранить значения всех переменных и определений текущего сеанса работы, то есть рабочей области, в виде бинарных файлов с расширением .mat. Для этого служит команда save, которая может иметь несколько форм:
save fname – сохраняется рабочая область со значениями всех переменных в файле бинарного формата с именем fname и расширением .mat;
save fname X – сохраняется только значение переменной X;
save fname X Y Z – сохраняются значения переменных X, Y и Z.
После параметров команды save можно указать ключи, уточняющие формат записи файлов:
-mat – двоичный формат, используемый по умолчанию;
-ascii – формат ASCII единичной точности (8 цифр);
-ascii –double – формат ASCII двойной точности (16 цифр);
-ascii –double –tabs – формат с разделителем и метками табуляции;
V4 – запись mat-файла в стандарте версии MATLAB;
-append – добавление в существующий mat-файл.
Возможно задание необходимости сохранения в формате функции, например:
save ('fname','var1','var2')
В этом случае имена файлов и переменных задаются строковыми константами.
Для записи всего сеанса работы или его фрагментов служит команда diari:
diari имя_файла – запись на диск текстового файла с указанием всех команд в строках ввода и полученных результатов;
diari off – приостанавливает запись в файл;
diari on – вновь начинает запись в файл.
Таким образом, чередуя команды diari off и diari on, можно сохранять нужные фрагменты сеанса в их формальном виде. Команду diari можно задать и в виде функции diari ('file'), где строка 'file' определяет имя файла. Рекомендуется записывать файл сеанса с расширением иным, чем .m.
Для загрузки рабочей области предыдущего сеанса работы можно использовать команду load fname с указанием спецификаций. Она обеспечивает загрузку ранее сохраненных в mat-файле определений со спецификациями, подобными описанным для команды save (включая ключ –mat для загрузки файлов с расширением .mat обычного бинарного формата, используемого по умолчанию). Допускается также команда load('fname'….) – загрузка файла fname в форме функции. Если команда (или функция) load вводится в ходе сеанса работы, произойдет замена значений текущих переменных теми значениями, которые были сохранены в считываемом mat-файле. Правила задания имен файлов самые обычные.
Полноценные программные модули позволяет создавать редак-тор/отладчик (editor/debugger) файлов сценариев (скриптов). Окно редактора/отладчика (рис. 3.1) открывается при выборе команды New меню File и выборе в качестве создаваемого файла m-файла.
Рисунок 3.1 Окна редактора/отладчика
Редактор/отладчик является полноценным Windows-приложением и позволяет готовить и отлаживать m-файлы. Назначение кнопок его панели инструментов приводится ниже:
New – создание нового пустого окна для ввода m-файла;
Open – вывод окна загрузки файла;
Save – запись файла на диск под текущим именем;
Cut – перенос выделенного фрагмента в буфер обмена;
Copy – копирование выделенного объекта в буфер обмена;
Paste – вставка фрагмента из буфера обмена на место расположения курсора;
Print – печать содержимого текущего окна редактора/отладчика;
About – вывод данных о версии редактор/отладчика;
Set/Clear Breakpoint – установка/удаление точки останова;
Clear All Breakpoint – удаление всех точек останова;
Step in – установка точки входа в m-файл;
Single step – выполнение одного шага;
Continue – продолжение работы;
Quit Debugging – завершение отладки.
В меню View редактора/отладчика имеются команды для доступа к программам просмотра файловой системы (Patch Browser) и рабочей области (Workspace Browser). Первая позволяет работать с файловой системой MATLAB, а вторая – контролировать заполнение рабочей области, в которой хранятся определения данного сеанса работы (рис.3.2). Команды для доступа к этим программам имеются также в меню File главного окна системы MATLAB.
Редактор/отладчик позволяет вводить тексты программ построчно. Для наглядности программ их основные элементы раскрашиваются разными цветами. Можно вводить в программы точки останова, в которых контролируется работа программ, например путем вывода значений переменных. Проводится синтаксический контроль вводимой программы. Обратите особое внимание на выбор имен m-файлов – они должны быть уникальными и не повторять имен уже имеющихся m-файлов.
Работать с редактором/отладчиком достаточно просто, его легко освоить самостоятельно. На первых порах достаточно пользоваться кнопками панели инструментов. Созданный файл (рис.3.3) можно запустить командой Run меню Tools редактора/отладчика.
Рисунок 3.2 Задание m-файла в редакторе/отладчике и его запуск
Обратите внимание MATLAB – график (даже двухмерный) можно вращать с помощью мыши. Окно графика имеет панель инструментов, назначение кнопок которой достаточно очевидно.
Иногда возникает необходимость просмотра заданного m-файла. Для этого можно использовать команду type имя_m-файла. Однако для редактирования файла надо пользоваться описанным выше редактором/отладчиком. Специальное приложение notebook.m после его загрузки в текстовый редактор Word обеспечивает объектную связь редактора с системой MATLAB и обеспечивает подготовку высококачественных текстов с «живыми» примерами из MATLAB.