И другие программы этой серии
Возможно использование слова save и в формате функции, а не команды, на
пример:
save(\'fname\',\'var1\',\'var2\')
Удалим второй столбец, используя оператор : (двоеточие):
>> M(:,2)=[ ]
M=
1
3
4
6
7
9
А теперь, используя оператор : (двоеточие), удалим вторую строку:
>> M(2,:)=[ ]
M=
1
3
7
9
1.6. Операции с рабочей областью,
текстом сессии и редактором
m файлов
1.6.1. Дефрагментация рабочей области
Переменные и определения новых функций в системе MATLAB хранятся в осо
бой области памяти, именуемой рабочей областью. По мере задания одних пере
менных и стирания других рабочая область перестает быть непрерывной и начи
нает содержать «дыры» и всякий «мусор». Это рано или поздно может привести
к ухудшению работы системы или даже к нехватке оперативной памяти. Правда,
подобная ситуация становится возможной, если вы работаете с достаточно боль
шими массивами данных.
Во избежание непроизводительных потерь памяти при работе с объемными
данными (а векторы, матрицы и массивы относятся к таковым) следует использо
вать команду pack, осуществляющую дефрагментацию рабочей области. Эта ко
манда переписывает все определения рабочей области на жесткий диск, очищает
В этом случае имена файлов и переменных задаются строковыми константами.
Следует отметить, что возможности сохранения всего текста сессии, форми
руемой в командном режиме, команда save не дает. Если же это нужно – исполь
зуется команда diary, описанная ниже.
1.6.3. Ведение дневника
Мы отмечали, что сессии не записываются на диск стандартной командой save.
Однако если такая необходимость есть, можно воспользоваться специальной ко
мандой для ведения так называемого дневника сессии:
• diary file_name – ведет запись на диск всех команд в строках ввода и
полученных результатов в виде текстового файла с указанным именем;
• diary off – приостанавливает запись в файл;
• diary on – вновь начинает запись в файл.
Таким образом, чередуя команды diary off и diary on, можно сохранять
нужные фрагменты сессии в их формальном виде.