Курсовые
Черчение

Теплоэнергетика

Электротехника
Карта

 

MATLAB в роли суперкалькулятора


Система MATLAB создана таким образом, что любые (подчас весьма сложные) вычисления можно выполнять в режиме прямых вычислений, то есть без подготовки программы. Это превращает MATLAB в необычайно мощный калькулятор, который способен производить не только обычные для калькуляторов вычисления (например, выполнять арифметические операции и вычислять элементарные функции), но и операции с векторами и матрицами, комплексными числами, рядами и полиномами. Можно почти мгновенно задать и вывести графики различных функций — от простой синусоиды до сложной трехмерной фигуры.
Работа с системой в режиме прямых вычислений носит диалоговый характер и происходит по правилу «задал вопрос, получил ответ». Пользователь набирает на клавиатуре вычисляемое выражение, редактирует его (если нужно) в командной строке и завершает ввод нажатием клавиши ENTER. В качестве примера на рис. 2.9 уже были показаны простейшие вычисления — вычисление выражения 2+3 и значения sin(l).
Даже из таких простых примеров можно сделать некоторые поучительные выводы: 

Следующий пример (он показан на рис. 2.11) иллюстрирует применение системы MATLAB для выполнения простых векторных операций. В этом примере задается четырехэлементный вектор V со значениями элементов 1, 2, 3 и 4. Далее (сосредоточьте на этом внимание!) вычисляются функции синуса и экспоненты с аргументом в виде вектора, а не скаляра.
Две записи для вектора — V=[l 2 3 4] и V=[1,2,3.4] — являются идентичными. Таким образом, векторы задаются списком своих элементов, разделяемых пробелами или запятыми. Список заключается в квадратные скобки. Для выделения п- го элемента вектора V используется выражение V(n). Оно задает соответствующую индексированную переменную.
В большинстве математических систем вычисление sin(V) и exp(V), где V — вектор, сопровождалось бы выдачей ошибки, поскольку функции sin и ехр должны иметь аргумент в виде скалярной величины. Однако MATLAB — матричная система, а вектор является разновидностью матрицы с размером 1х n. Поэтому в нашем случае результат вычислений будет вектором того же размера, что и аргумент V, но элементы возвращаемого вектора будут синусами или экспонентами от элементов вектора V.


Рис. 2.12. Простейшие операции с матрицей


Еще один пример (рис. 2.12) демонстрирует простейшие операции с матрицей. Здесь задана матрица М с размером 2x2 и вычислена матрица MX=sin(M).
Матрица задается в виде ряда векторов, представляющих ее строки и заключенных в квадратные скобки. Для разделения элементов векторов используется пробелили запятая, а для отделения одного вектора от другого — точка с запятой. Для выделения отдельного элемента матрицы М используется выражение вида M(j,i), где М — имя матрицы, j — номер строки и 1 — номер столбца.
Как видно из приведенных примеров, ввод исходных выражений для вычислений в системе MATLAB осуществляется в самом обычном текстовом формате. В этом же формате выдаются результаты вычислений, за исключением графических. Приведем пример записи вычислений, показанных на рис. 2.8 и 2.9:
То get started, select "MATLAB Help" from the Help menu. 

» 2+3 

ans=
5
» sin(l) 

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=[l 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, которой присваивается результат и значение которой затем выводится на экран.


Сравните эти записи с записями в реальных сессиях (рис. 2.9 и 2.11). Вы наверняка отметите, что они практически идентичны. Разве что в текстовых вариантах примеров для экономии бумаги, на которой печаталась эта книга, убраны пропуски между строками. Мы будем показывать представление сессий в виде прямых копий экрана только в том случае, когда это связано со спецификой проведения вычислений, например когда они сопровождаются выводом графиков или демонстрацией элементов пользовательского интерфейса. В остальных случаях будет использоваться представление сессии прямо в тексте книги в представленном выше текстовом формате — основном для командного режима работы с системой MATLAB. При этом строки ввода будут отмечаться маркером ввода » в их начале. Ради компактности записи пустые строки будут опускаться.

 

Visual Studio.Net Разработка приложений

Урок 10. Из жизни студентов
Использование STL
Шаблоны
Шаблон функции быстрой сортировки
Шаблоны классов
Контейнеры библиотеки STL
Последовательности типа vector
Поиск с помощью предиката
Связыватели и адаптеры
Последовательности типа deque
Последовательности типа list
Ассоциативные контейнеры
Контейнер типа set
Контейнеры типа тар
Контейнеры типа hash_multimap
Стек — это несложно
Контейнеры типа queue
Контейнеры типа priority_queue
Работа с потоками
Примеры использования string
Полезные константы
Шаблон классов valarray
Сечения массива

Инженерная графика

 

Сопромат