Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Matlab BSU.doc
Скачиваний:
11
Добавлен:
08.09.2019
Размер:
1.04 Mб
Скачать

Операторы.

Выражения используют обычные арифметические операции и правила старшинства.

+ сложение

– вычитание

* умножение

/ деление

\ левое деление

^ степень

‘ комплексно-сопряженное транспонирование

() определение порядка вычисления

Полный список операторов можно получить, используя команду help ops.

Следует отметить, что многие операторы умеют работать с векторами и матрицами, т.е. являются матричными. Рассмотрим пример с экспонентой.

v=[1 2 3]; exp(v)

ans =

2.7183 7.3891 20.0855

Функции.

MATLAB предоставляет большое количество элементарных математических функций, таких как abs, sqrt, exp, sin и др. Вычисление квадратного корня или логарифма отрицательного числа не является ошибкой: в этом случае результатом является соответствующее комплексное число. MATLAB также предоставляет и более сложные

Функции, включая Гамма-функцию и функции Бесселя. Большинство из этих функций

имеют комплексные аргументы. Для вывода списка всех элементарных математических функций следует выполнить команду help elfun. Перечень более сложных математических и матричных функций можно получить по командам help specfun

и help elmat соответственно. Некоторые функции, такие как sqrt и sin, являются встроенными. Они являются частью MATLAB и очень эффективны, но код их реализации недоступен. Другие функции, такие как gamma и sinh, реализованы в М-файлах. Поэтому можно легко просмотреть их код и, при необходимости, модифицировать его.

Приведем несколько примеров использования выражений в MATLAB вместе с результатами выполнения:

rho = (1+sqrt(5))/2

rho =

1.6180

a = abs(3+4i)

a =

5

z = sqrt(besselk(4/3,rho-i))

z =

0.3730+ 0.3214i

huge = exp(log(realmax))

huge =

1.7977e+308

toobig = pi*huge

toobig =

Inf

Текстовые комментарии и символьные константы.

Текстовые комментарии вводятся с помощью символа %, например:

% magic(N) создает магический квадрат для всех N > 2.

Комментарии обычно используются для пояснения программного кода в m-файлах. Обычно первые строки m-файлов служат для описания их назначения, которое выводится на экран командой help имя_файла. Например, help magic.

Символьная константа – это цепочка символов, заключенных в апострофы, например:

‘текстовый комментарий’.

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

Сеанс работы с MATLAB принято именовать сессией (session). Сессия отражает работу пользователя с системой. В ней имеются строки ввода-вывода и сообщения об ошибках. Переменные и определения новых функций в системе MATLAB хранятся в особой области памяти – рабочей области. MATLAB позволяет сохранять значения переменных в виде бинарных файлов с расширением mat с помощью команды save:

save filename – рабочая область сохраняется в файле filename.mat,

save filename x y – записываются только переменные x и y.

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

  • –mat – двоичный формат, используемый по умолчанию;

  • –ascii – ASCII формат одинарной точности (8 цифр);

  • –ascii –double – ASCII формат двойной точности (16 цифр);

  • –append – добавление в существующий mat–файл.

При необходимости можно сохранить не только рабочую область, но и весь текст сессии со всеми сообщениями с помощью команды diary:

diary filename – запись на диск ввода-вывода в тестовый файл с именем filename,

diary off – приостанавливает запись в файл,

diary on – возобновляет запись в файл.

Для просмотра текстового файла в командном окне следует использовать команду type, например, type fname.txt.

Для загрузки сохраненной ранее рабочей области используется команда load с теми же ключами, что и у команды save. Операции с рабочей областью можно выполнять не только из командной строки, но и с помощью окна броузера рабочей области. Достаточно щелкнуть по нему правой кнопкой мыши и выбрать из контекстного меню требуемую команду. Например, для загрузки рабочей области выбираем из контекстного меню команду Import Data и из диалогового окна выбираем нужный m–файл.

MATLAB позволяет загружать переменные и массивы, записанные в двоичный файл из других приложений. Рассмотрим программный код из DELPHI, который записывает трехмерный массив действительных чисел в двоичный файл с именем t.dat.

FileHandle:=FileCreate(‘t.dat’);

for k:=1 to 21 do

for i:=1 to 21 do

for j:=1 to 21 do

FileWrite(FileHandle,T[i,j,k],SizeOf(double));

FileClose(FileHandle);

Для ввода записанных данных в рабочую область MATLAB достаточно выполнить команды:

fid=fopen('t.dat');

T=fread(fid,inf,'double');

fclose(fid);

T=reshape(T,21,21,21);

Следует отметить, что MATLAB имеет возможность импортировать данные из реляционных баз данных, а также экспортировать свои данные в таблицы баз данных.

Окно просмотра ресурсов позволяет просматривать существующие в памяти объекты, редактировать их содержимое и удалять из памяти. Для вывода содержимого объекта следует выделить его имя и щелкнуть на кнопке Open Selection. Объект можно открыть и двойным щелчком на его имени в списке. Откроется окно редактора массива (Array Editor). В этом окне надо щелкнуть на ячейке, содержимое которой следует отредактировать и ввести новое значение. Окно редактора позволяет также изменять размерность массивов и численный формат.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]