39075

MATLAB. Арифметические и логические операции. Графики функций

Лабораторная работа

Информатика, кибернетика и программирование

Задание: Выполнить арифметические и логические операции в том числе с комплексными числами. Комплексные числа. Числа можно считать константами. Числа используются в общепринятом представлении о них.

Русский

2013-09-30

970.82 KB

12 чел.

Лабораторная работа №5

MATLAB. Арифметические и логические операции. Графики функций.

Задание:

  1.  Выполнить арифметические и логические операции, в том числе с комплексными числами.
  2.  Построить графики:

- функции  и  в общем виде (использовать разные стили и масштабы, подписи, легенды, сетки)

- графики функций в полярных координатах, гистограммы

- средства управления в графическом окне, редактирование графиков.

Теоретическая справка:

Арифметические и логические операции. Комплексные числа.

В MatLab можно использовать скаляры, векторы и матрицы, выполгять различные операции – арифметические и логические. Для ввода скаляра достаточно присвоить его значение какой-то переменной, например

Число – простейший объект языка MATLAB, представляющий количественные данные. Числа можно считать константами. Числа используются в общепринятом представлении о них. Они могут быть целыми, дробными, с фиксированной и плавающей точкой. Возможно представление чисел в хорошо известном научном формате с указанием мантиссы и порядка числа. Ниже приводятся примеры представления действительных чисел:

0

-3

2.301

123.456e-24

-234.456e10

Как нетрудно заметить, в мантиссе чисел целая часть отделяется от дробной не запятой, а точкой, как принято в большинстве языков программирования. Для отделения порядка числа от мантиссы используется символ e. Знак «плюс» у чисел не проставляется, а знак «минус» у числа называют унарным минусом. Пробелы между символами в числах не допускаются.

Числа могут быть комплексными: z=Re(x)+Im(x)*i. Такие числа содержат действительную Re(z) и мнимую Im(z) части. Мнимая часть имеет множитель i или j, означающий корень квадратный из –1:

3i

2j

2+3i

-3.141i

-123.456+2.7e-3i

Функция real(z) возвращает действительную часть комплексного числа,

Re(z), а функция imag(z) – мнимую, Im(z). Для получения модуля комплексного числа используется функция abs(z), а для вычисления фазы – angle(Z). Ниже даны простейшие примеры работы с комплексными числами:

>> i

ans = 0 + 1.0000i

>> j

ans = 0 + 1.0000i

>> z=2+3i

z = 2.0000 + 3.0000i

>> abs(z)

ans = 3.6056

>> real(z)

ans = 2

>> imag(z)

ans = 3

>> angle(z)

ans = 0.9828

Операции над числами по умолчанию выполняются в формате, который принято считать форматом с двойной точностью.

Некоторые константы в MATLAB принято называть системными переменными, поскольку, с одной стороны, они задаются системой при ее загрузке, а с другой – могут переопределяться. Основные системные переменные, применяемые в системе MATLAB, указаны ниже:

• i или j –мнимая единица (корень квадратный из –1);

• pi – число p = 3,1415926…;

• eps – погрешность операций над числами с плавающей точкой (2–52);

• realmin – наименьшее число с плавающей точкой (2–1022);

• realmax – наибольшее число с плавающей точкой (21023)

• inf – значение машинной бесконечности;

• ans – переменная, хранящая результат последней операции и обычно вызывающая его отображение на экране дисплея;

• NaN – указание на нечисловой характер данных (Not-a-Number).

Оператор – это специальное обозначение для определенной операции над данными – операндами. Например, простейшими арифметическими операторами являются знаки суммы +, вычитания -, умножения * и деления /. Операторы используются совместно с операндами. Например, в выражении 2+3 знак + является оператором сложения, а числа 2 и 3 – операндами. Операторы также являются распространенными объектами математических выражений и языков программирования.

Следует отметить, что большинство операторов относятся к матричным операциям, что может служить причиной серьезных недоразумений. Например, операторы умножения * и деления / вычисляют произведение и частное от деления двух массивов, векторов или матриц. Есть ряд специальных операторов, например оператор \ означает деление справа налево, а операторы .* и ./ означают, соответственно, поэлементное умножение и поэлементное деление массивов. Ниже приведен список арифметических операторов:

Операторы отношения служат для сравнения двух величин, векторов или матриц, все они имеют две сравнимые величины. Следующая таблица содержит основные операторы отношения:

Логические операторы служат для реализации поэлементных логических операций над элементами одинаковых по размеру массивов согласно следующей таблице

Создание графика

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

Функция plot имеет различные формы, связанные с входными параметрами, например plot(y) создает кусочно-линейный график зависимости элементов y от их индексов. Если в качестве аргументов заданы два вектора, то plot(x,y) создаст график зависимости y от x. Например, для построения графика функции sin в интервале от 0 до 2π, сделаем следующее

Программа построила график зависимости, который отображается в окне Figure 1

Вызов функции plot  с многочисленными парами x-y создает многочисленные графики. Система автоматически присваивает каждому графику свой цвет, что позволяет различать разные наборы данных.

 

Возможно изменение цвета, стиля линий  маркеров, таких как знаки плюс и кружки, следующим образом

Plot(x, y, ‘цвет_стиль_маркер’)

цвет_стиль_маркер – это 1-, 2-, 3- символьная строка (заключенная в одинарные кавычки), составленная из типов цвета, стиля линий и маркеров.

Функция subplot позволяет выводить множество графиков в одном окне или распечатывать их на одном листе бумаги.

subplot (m, n, p)

Разбивает окно изображений на матрицу m на n подграфиков и выбирает p-ый подграфик текущим.

Управление осями

Функция axis имеет несколько возможностей для настройки масштаба, ориентации и коэффициента сжатия.

Обычно MATLAB находит максимальное и минимальное значение и выбирает соответствующий масштаб и маркирование осей. Функция axis заменяет значения по умолчанию предельными значениями, вводимыми пользователем.

Axis([xmin xmax ymin ymax])

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

axis square - создает x и y оси равной длины, а

axis equal - создает отдельные отметки приращений для x и y осей одинаковой длины. Так функция

plot(exp(i*t)) - следующая либо за axis square, либо за axis equal превращает овал в правильный круг.

axis auto – возвращает значения по умолчанию и переходит в автоматический режим.

axis on – включает обозначения осей и метки промежуточных делений.

axis off - выключает обозначения осей и метки промежуточных делений.

grid off – выключает сетку координат, а

grid on – включает ее заново.

Например, включение отображения сетки

x = logspace(-1,2);

subplot(2,1,2),loglog(x,exp(x),'-s')

grid on

Функции xlabel, ylabel, zlabel добавляют подписи к соответствующим осям, функция  title  добавляет заголовок в верхнюю часть окна, а функция text вставляет текст в любое место графика. Пример,

В MATLAB реализована функция так называемых легенд legend. Например,

hleg1 = legend('cos_x','sin_x');

На ряду с декартовыми возможно построение графиков функций в полярной системе координат с помощью функции polar. Например,

figure

t = 0:.1:2*pi;

subplot(2,1,1),polar(t,sin(2*t).*cos(2*t),'--r')

А также возможно построение гистограмм с помощью функции hist. Гистограмма  представляет собой столбиковую диаграмму, характеризующую число попаданий элементов вектора v в каждый из k интервалов. Данные для гистограммы получают с помощью следующих функций:

N= hist(Y)

N= hist(Y, M)

N=hist(Y, X)

[N,X]=hist (…)

В функциях приняты обозначения:

- Y – вектор чисел, возвращаемых для десяти интервалов, выбираемых автоматически;

- M – количество интервалов;

- X – вектор.

Команда hist(…) с синтаксисом, описанным в функциях выбора чисел, строит график гистограммы.

x = -4:0.1:4;

y = randn(10000,1);

subplot(2,1,2),hist(y,x)

В MATLAB возможно редактирование графика прямо в графическом окне. Трехмерные графики можно вращать в разные стороны, растягивать, сжимать и прочее


 

А также другие работы, которые могут Вас заинтересовать

66804. Проектирование финансовых потоков инвестиционной деятельности 718 KB
  Финансовые технологии отвечают за источник финансирования возведения объекта коммерческая технология отвечает за дальнейшее действие организации по окончании строительства объекта. Любая из этих трех организаций единовременно может строить только 1 объект параллельно 2 объекта строить не может Расчет показателей...
66805. Міжнародний менеджмент 4.46 MB
  Для завершення економічних реформ у країні, інтеграції української економіки в СОТ необхідні глибокі знання ринкових механізмів, принципів та методів управління транснаціональними корпораціями, дослідження вітчизняного та світового ринків, економічної кон’юнктури...
66806. ОСНОВИ НАУКОВИХ ДОСЛІДЖЕНЬ 2.27 MB
  Акцентується увага на визначення параметрів функціональної залежності загального виду по способу найменших квадратів складання початкових умовних рівнянь рівнянь поправок і нормальних рівнянь. Значна увага приділяється рішенню нормальних рівнянь і оцінці точності зрівноважених елементів.
66808. Материал для расчета корректной конфигурации для сетей Ethernet и Fast Ethernet 3.24 MB
  Наиболее часто приходится проверять ограничения связанные с длиной отдельного сегмента кабеля а также количеством повторителей и общей длиной сети. Правила 543 для коаксиальных сетей и 4х хабов для сетей на основе витой пары и оптоволокна не только дают гарантии работоспособности сети но и оставляют большой запас прочности сети.
66810. ПІДВИЩЕННЯ СПОРТИВНОЇ МАЙСТЕРНОСТІ З ОБРАНОГО ВИДУ СПОРТУ 146 KB
  Виконання студентами-заочниками контрольної роботи сприяє поглибленню та закріпленню теоретичних знань з теорії та методики обраного виду спорту. Студенти набувають навичок самостійної роботи з літературою, навчаються порівнювати...