Matlab в роли мощного научного калькулятора

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

Работа с системой носит диалоговый характер и происходит по правилу «задал вопрос – получил ответ». Пользователь набирает на клавиатуре вычисляемое выражение, редактирует его (если нужно) в командной строке и завершает ввод нажатием клавиши ENTER.

Даже из таких простых примеров можно сделать некоторые поучительные выводы:

для указания ввода исходных данных используется символ >>;

данные вводятся с помощью простейшего строчного редактора;

для блокировки вывода результата вычислений некоторого выражения после него надо установить знак; (точка с запятой);

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

MATLAB назначает такую переменную с именем ans;

знаком присваивания является привычный математикам знак равенства =, а не комбинированный знак:=, как во многих других языках программирования и математических системах;

встроенные функции (например, sin) записываются строчными буквами, и их аргументы указываются в круглых скобках;

результат вычислений выводится в строках вывода (без знака >>);

диалог происходит в стиле «задал вопрос – получил ответ».

Следующие примеры (см. рис. 1) иллюстрируют применение системы

MATLAB для выполнения еще ряда простых векторных операций. На рисунке представлено также окно браузера файловой системы, который имеется на вкладке Current Directory. В командном режиме вызов окна браузера файловой системы удобнее производить из панели инструментов активизацией кнопки после списка директорий системы MATLAB. Возможны случаи отказа от вычислений при неправильно установленной текущей директории, если нужные для вычислений m-файлы не обнаруживаются.

Рис. 1.3. Примеры операций с матрицей

В большинстве математических систем вычисление sin(V) или exp(V), где V – вектор, сопровождалось бы выдачей ошибки, поскольку функции sin и exp должны иметь аргумент в виде скалярной величины. Однако MATLAB-матричная система, а вектор является разновидностью матрицы с размером 1хn или nх1. Поэтому в нашем случае результат вычислений будет вектором того же размера, что и аргумент V, но элементы возвращаемого вектора будут синусами или экспонентами от элементов вектора V.

Матрица задается в виде ряда векторов, представляющих ее строки и заключенных в квадратные скобки. Для разделения элементов векторов используется пробел или запятая, а для отделения одного вектора от другого-точка с запятой. Для выделения отдельного элемента матрицы M используется выражение вида M(j,i), где M – имя матрицы, j – номер строки и i – номер столбца.

Для просмотра содержимого массивов удобно использовать браузер рабочего пространства Workspace. Каждый вектор и матрица в нем представляются в виде квадратика с ячейками, справа от которого указывается размер массива. Двойной щелчок по квадратику мышью ведет к появлению окна редактора массивов Array Editor-его окно показано на рис. 2 Работа с редактором массивов вполне очевидна-возможен не только просмотр элементов массивов, но и их редактирование и замена.

Рис. 2. Работа с редактором массивов

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

To get started, select "MATLAB Help" from the Help menu.

>> 2+3

ans =

>> sin(1)

ans =

0.8415

>> type sin

sin is a built-in function.

>> help sin

SIN Sine.

SIN(X) is the sine of the elements of X.

Overloaded methods

help sym/sin.m

>> V=[1 2 3 4]

V =

1 2 3 4

>> sin(V)

ans =

0.8415 0.9093 0.1411 -0.7568

>> 3*V

ans =

3 6 9 12

>> V^2

??? Error using ==> ^

Matrix must be square.

>> V.^2

ans =

1 4 9 16

>> V+2

ans =

3 4 5 6

>>

Обратите внимание на форму ответов при выполнении простых операций без указания переменной, которой присваивается результат. В таких случаях MATLAB сам назначает переменную ans, которой присваивается результат и значение которой затем выводится на экран.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: