Использование элементарных функций
При вводе вычисляемых выражений используются встроенные функции MATLAB для вычисления экспоненты, натурального логарифма, квадратного корня и тригонометрических функций и др. Аргументы функций заключаются в круглые скобки, имена функций набираются строчными буквами. Для ввода числа p достаточно набрать pi в командной строке.
Арифметические операции в MATLAB выполняются в обычном порядке, свойственном большинству языков программирования:
¨ возведение в степень ^;
¨ умножение и деление *, /;
¨ сложение и вычитание +, -.
Для изменения порядка выполнения арифметических операторов следует использовать круглые скобки.
При вычислениях возможны некоторые исключительные ситуации, например деление на ноль, которые в большинстве языков программирования приводят к ошибке. При делении положительного числа на ноль в MATLAB получается Inf (бесконечность), а при делении отрицательного числа на ноль получается -Inf (минус бесконечность).
При делении нуля на ноль получается Nan (не число).
!! Попробуйте проделать описанные действия с нулем. Обратите внимание на результат.
При вычислении, например , никакой ошибки или предупреждения не возникает. MATLAB автоматически переходит в область комплексных чисел.
Вычисления с комплексными числами
При наборе комплексных чисел в командной строке MATLAB можно использовать либо i, либо j, сами числа при умножении, делении и возведении в степень необходимо заключать в круглые скобки. Если не использовать скобки, то умножаться или возводиться в степень будет только мнимая часть и получится неверный результат.
Для вычисления комплексно-сопряженного числа применяется апостроф, который следует набирать сразу за числом, без пробела.
Если необходимо найти комплексно-сопряженное выражение, то исходное выражение должно быть заключено в круглые скобки
MATLAB позволяет использовать комплексные числа в качестве аргументов встроенных элементарных функций.
Функции для работы с комплексными числами
К ним относятся следующие функции MATLAB:
· abs и angle — модуль r и фаза φ (в радианах от -π до π) комплексного числа, а + i•b = r• (соs φ+ i • sinφ);
· complex(a,b) — конструирует комплексное число по его действительной и мнимой части:
· conj— возвращает комплексно-сопряженное число;
· imag, real— возвращает мнимую и действительную часть комплексного числа.
!! Возведите число 1-i∙2 в третью степень. Присвойте это значение переменной x.
!! Найдите все значения корня третьей степени из этого числа. Присвойте полученные значения х1, x2, x3.
!! Найдите комплексно-сопряженное ему выражение.
Встроенные элементарные функции
Встроенные элементарные функции MATLAB включают тригонометрические, гиперболические, экспоненциальные и логарифмические функции, а также функции для работы с комплексными числами и для округления различными способами.
Для того, чтобы узнать, какие встроенные элементарные функции имеются в MATLAB необходимо набрать в командной строке команду help elfun. При этом в командное окно выводится список всех встроенных элементарных функций с их кратким описанием.
!! Просмотрите все имеющиеся элементарные функции.
!! Введите в командной строке это выражение в соответствии с правилами MATLAB и вычислите его значение.
Аргументы тригонометрических функций должны быть выражены в радианах. Обратные тригонометрические функции возвращают результат также в радианах.
Использование переменных
Как и во всех языках программирования, в МATLAB предусмотрена возможность работы с переменными. Причем пользователь не должен заботиться о том, какие значения будет принимать переменная (комплексные, вещественные или только целые). Для того чтобы присвоить, например, переменной z значение 1.45, достаточно написать в командной строке z=1.45, при этом МATLAB сразу же выведет значение z.
Здесь знак равенства используется в качестве оператора присваивания. Часто не очень удобно после каждого присваивания получать еще и результат. Поэтому в МATLAB предусмотрена возможность завершать оператор присваивания точкой с запятой для подавления вывода результата в командное окно. Именем переменной может быть любая последовательность букв и цифр без пробела, начинающаяся с буквы. Строчные и прописные буквы различаются. Количество воспринимаемых MATLAB символов в имени переменной составляет 31 (такие длинные имена и не нужны).
!! Найдите значение следующего выражения, применяя введение промежуточных переменных
MATLAB запоминает значения всех переменных, определенных во время сеанса работы. Если после ввода примера, приведенного выше, были проделаны еще какие-либо вычисления, и возникла необходимость вывести значение одной из введенных переменных, то следует просто набрать имя переменной в командной строке и нажать Enter.
Переменные, определенные выше, можно использовать и в других формулах.
Для ввода длинных формул или команд в командную строку следует поставить три точки (подряд, без пробелов), нажать клавишу Enter и продолжить набор формулы на следующей строке. Так можно разместить выражение на нескольких строках. МATLAB вычислит все выражение или выполнит команду после нажатия на Enter в последней строке (в которой нет трех идущих подряд точек).
!! Найдите значение этого же выражения, записав его в одну строку.
Предположим, что часть вычислений с переменными выполнена, а остальные придется доделать во время следующего сеанса работы с MATLAB. В этом случае понадобится сохранить переменные, определенные в рабочей среде.
Сохранение рабочей среды
Самый простой способ сохранить значения всех переменных — использовать в меню File пункт Save Workspace As. При этом появляется диалоговое окно Save Workspace Variable, в котором следует указать каталог и имя файла. По умолчанию предлагается сохранить файл в подкаталоге work основного каталога MATLAB.
Предлагаемое расширение при сохранении единственное mat.
!! Сохраните свой файл под именем Пример.
Работа с массивами
Все данные MATLAB представляет в виде массивов.
Массив — упорядоченная, пронумерованная совокупность однородных данных. Создавая массив, вместо того, чтобы давать каждой ячейке памяти, используемой для хранения одного элемента данных, отдельное имя, всей совокупности данных дается одно имя.
Массивы различаются по числу размерностей или измерений: одномерные, двумерные, многомерные. Размером массива называют число элементов, вдоль каждого из измерений. Доступ к элементам осуществляется при помощи индекса. В MATLAB нумерация элементов массивов начинается с единицы. Это значит, что индексы должны быть больше или равны единице.
Вектор, вектор-строка, матрица или тензор являются математическими объектами, а одномерные, двумерные или многомерные массивы — способы хранения этих объектов в компьютере. Вектор может быть записан в столбик (вектор-столбец) и в строку (вектор-строка). Вектор-столбцы и вектор-строки будут называться просто векторами.
Одномерные массивы
Для формирования массива используют операцию конкатенации, которая обозначается квадратными скобками.
!! Введите на лист a=[10,4,6] и нажмите Enter.
В результате её выполнения сформировался массив чисел.
Числовые массивы являются элементами типа double.
В качестве элементов массива могут использоваться любые переменные типа double, т.е. вещественные или комплексные числа, а также переменные, которые сами являются массивами. Для доступа к конкретному элементу массива используется операция индексации, которая обозначается круглыми скобками.
!! Введите на лист a(1) и нажмите Enter.
Для того, чтобы присвоить элементу массива новое значение, к нему надо применить одновременно операции индексации и присваивания.
!! Присвойте второму элементу массива a значение -5.
Массив можно расширить, если присвоить несуществующему элементу массива какое-нибудь значение. Все отсутствующие элементы массива до того, которому значение присвоено, примут значение ноль.
!! Присвойте шестому элементу массива a значение 6.
Выполнив теперь функцию length(имя),можно узнать, из скольких элементов состоит массив с указанным именем.
!! Узнайте число элементов массива a.
Рассмотрим другой способ создания массивов. А именно с помощью функций onesи zeros,которые сразу создают массив нужного размера, заполненный, соответственно, единицами(ones) и нулями (zeros). Аргументами для этих функций служат размеры массива, начиная с количества строк, указанные через запятую. Затем с помощью операций индексации и присваивания созданный массив заполняется нужными элементами.
!! Создайте массив b, имеющий такую же размерность, что и массив a с помощью функции ones или zeros. Заполните его действительными элементами.
При необходимости создать массив, состоящий из чисел, изменяющихся с заданным шагом по мере увеличения индекса, используется операция “:”. Полученная команда будет выглядеть так:
c=cнач:h: cкон,
где cнач – начальное значение элементов массива,
h – шаг изменения,
cкон – конечное значение элементов массива.
!! Создайте массив c, имеющий такую же размерность, что и массивы a и b, элементы которого изменяются с шагом 0.5, начиная с 3.
Необязательно заботиться о том, чтобы сумма предпоследнего значения и шага равнялась бы конечному значению, т.к. массив будет заполняться до тех пор, пока не будет достигнуто такое значение, которое будет равно конечному или отличается от него меньше, чем на шаг.
В случае отрицательного шага для получения непустой вектор-строки начальное значение должно быть больше конечного.
Шаг, равный единице, допускается не указывать при автоматическом заполнении:
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|