Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab1 - Простейшие вычисления в пакете MatLab (п....doc
Скачиваний:
18
Добавлен:
05.11.2018
Размер:
353.79 Кб
Скачать

2.4. Работа с комплексными числами

При наборе комплексных чисел в командной строке MatLab можно использовать либо i, либо j, а сами числа при умножении, делении и возведении в степень необходимо заключать в круглые скобки:

»(2.1+3.2i)*2+(4.2+1.7i)^2

ans =

18.9500 +20.6800i

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

» 2.1+3.2i*2+4.2+1.7i^2

ans =

3.4100 + 6.4000i

Для вычисления комплексно-сопряженного числа применяется апостроф, который следует набирать сразу за числом, без пробела:

» 23i'

ans =

2.0000 + 3.0000i

Если необходимо найти комплексно-сопряженное выражение, то исходное выражение должно быть заключено в круглые скобки:

»((3.2+1.5i)*2+4.2+7.9i)'

ans =

10.6000 10.9000i

MatLab позволяет использовать комплексные числа в качестве аргументов встроенных элементарных функций:

» sin(2+3i)

ans =

9.1545  4.1689i

Конструирование комплексного числа по его действительной и мнимой части выполняется с помощью функции complex:

» complex(2.3, 5.8)

ans = 2.3000 + 5.8000i

Как узнать, какие встроенные элементарные функции можно использовать и как их вызывать? Наберите в командной строке команду help eifun, при этом в командное окно выводится список всех встроенных элементарных функций с их кратким описанием.

3. Простейшие вычисления в пакете MatLab с использованием переменных и векторов

3.1. Использование переменных в пакете MatLab

Как и во всех языках программирования, в MatLab предусмотрена возможность работы с переменными. Причем пользователь не должен заботиться о том, какие значения будет принимать переменная (комплексные, вещественные или только целые). Для того чтобы присвоить, например, переменной z значение 1.45, достаточно написать в командной строке z = 1.45, при этом MatLab сразу же выведет значение z:

» z = 1.45

z =

1.4500

Здесь знак равенства используется в качестве оператора присваивания. Часто не очень удобно после каждого присваивания получать еще и результат. Поэтому в MatLab предусмотрена возможность завершать оператор присваивания точкой с запятой для подавления вывода результата в командное окно. Именем переменной может быть любая последовательность букв и цифр без пробела, начинающаяся с буквы. Строчные и прописные буквы различаются, например MZ и mz являются двумя разными переменными. Количество воспринимаемых MatLab символов в имени переменной составляет 31.

В качестве упражнения на использование переменных найдите значение следующего выражения:

Наберите последовательность команд, приведенную ниже (обратите внимание на точку с запятой в первых двух операторах присваивания для подавления вывода промежуточных значений на экран):

» х = sin(1.3*pi)/log(3.4);

» у = sqrt(tan(2.75)/tanh(2.75));

» z = (х+у)/(х-у)

Z =

0.0243 - 0.9997i

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

»(sin(1.3*pi)/log(3.4)+sqrt(tan(2.75)/tanh(2.75)))/…

(sin(1.3*pi)/log(3.4)-sqrt(tan(2.75)/tanh(2.75))) ans =

0.0243 - 0.9997i

Обратите внимание, насколько первая запись компактнее и яснее второй! Во втором варианте формула не помещалась в командном окне на одной строке, и пришлось записать ее в две строки, для чего в конце первой строки поставлены три точки.

Замечание 1

Для ввода длинных формул или команд в командную строку следует поставить три точки (подряд, без пробелов), нажать клавишу <Enter> и продолжить набор формулы на следующей строке. Так можно разместить выражение на нескольких строках. MatLab вычислит все выражение или выполнит команду после нажатия на <Enter> в последней строке (в которой нет трех идущих подряд точек).

MatLab запоминает значения всех переменных, определенных во время сеанса работы. Если после ввода примера, приведенного выше, были проделаны еще какие-либо вычисления, и возникла необходимость вывести значение х, то следует просто набрать х в командной строке и нажать <Enter>:

» x

-0.6611

Переменные, определенные выше, можно использовать и в других формулах. Например, если теперь необходимо вычислить выражение

,

то достаточно ввести следующую команду:

» (x-y)^(3/2)

ans =

-0.8139 + 0.3547i

Вызов функций в MatLab обладает достаточной гибкостью. Например, вычислить е3.5 можно, вызвав функцию ехр из командной строки:

» ехр(3.5)

ans =

33.1155

Другой способ состоит в использовании оператора присваивания:

» t = ехр(3.5)

t =

33.1155

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