Операции с рабочей областью и текстом сессии

Дефрагментация рабочей области

По мере задания одних переменных и стирания других рабочая область перестает быть непрерывной и начинает содержать «дыры» и всякий «мусор». Это рано или поздно может привести к ухудшению работы системы или даже к нехватке оперативной памяти. Подобная ситуация становится возможной, если вы работаете с достаточно большими массивами данных.

Во избежание непроизводительных потерь памяти при работе с объемными данными (а векторы, матрицы и массивы относятся к таковым) следует использовать команду pack, осуществляющую дефрагментацию рабочей области. Эта команда переписывает все определения рабочей области на жесткий диск, очищает рабочую область и затем заново считывает все определения без «дыр» и «мусора» в рабочую область.

Сохранение рабочей области сессии

Переменные и определения новых функций в системе MATLAB хранятся в особой области памяти, именуемой рабочей областью. MATLAB позволяет сохранять значения переменных в виде бинарных файлов с расширением .mat. Для этого служит команда save, которая может использоваться в ряде форм:

save fname — записывается рабочая область всех переменных в файле бинарного формата с именем fname.mat;

save fname X — записывает только значение переменной X;

save fname х y z — записывает значения переменных х, Y и z.

После параметров команды save можно указать ключи, уточняющие формат записи файлов:

  • -mat — двоичный МАТ-формат, используемый по умолчанию;
  • -ascii — ASCII-формат единичной точности (8 цифр);
  • -ascii -double — ASCII-формат двойной точности (16 цифр);
  • -ascii -double -tabs — формат с разделителем и метками табуляции;

V4 — запись МАТ-файла в формате версии MATLAB 4;

-append — добавление в существующий МАТ-файл.

Возможно использование слова save и в формате функции, а не команды, например:

save('fname','varl','var2')

В этом случае имена файлов и переменных задаются строковыми константами.

Следует отметить, что возможности сохранения всего текста сессии, формируемой в командном режиме, команда save не дает. И не случайно! Дело в том, что сессия является результатом проб и ошибок, и ее текст наряду с правильными определениями содержит сообщения об ошибках, переопределения функций и переменных и много прочей «шелухи». Необходимости сохранять такое «творчество» обычно нет. А если есть — для этого служит команда diary, описанная чуть ниже. Вы можете также воспользоваться редактором и отладчиком, которые позволяют (после отладки программы) получить документ в корректной форме без синтаксических и иных ошибок и сохранить его в виде файла с расширением .т текстового формата.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >