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 возможно редактирование графика прямо в графическом окне. Трехмерные графики можно вращать в разные стороны, растягивать, сжимать и прочее


 

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

65239. Автоматизація процесів керування подрібненням пісків кульовим млином з урахуванням ідентифікації співвідношення руда/вода 189.5 KB
  Метою роботи є підвищення продуктивності кульового млина по готовому продукту та скорочення витрат електричної енергії куль і футерівки шляхом отримання рішень щодо удосконалення керування формуванням співвідношення руда вода...
65240. Управлінські рішення в системі «маркетинг – фінансовий менеджмент» машинобудівних підприємств 331.5 KB
  В умовах ринкових відносин маркетинг відіграє на підприємстві важливу роль у забезпеченні його стійких ринкових позицій та здобутті лояльних споживачів. Розроблення та реалізація маркетингових програм підприємства потребує як фінансово-економічного обґрунтування, так і фінансового забезпечення.
65241. Розвиток методів побудови мереж наземної радіомовленнєвої служби 603 KB
  Визначити шляхи компромісного розв’язання проблеми побудови мереж наземного цифрового телевізійного мовлення на загальнонаціональному регіональному і місцевому рівнях.
65242. Підвищення ефективності дизельних безшатунних двигунів шляхом удосконалення схем та параметрів системи наддуву 1.54 MB
  Таке високе значення тиску наддувного повітря при застосуванні найбільш вживаної системи вільного газотурбінного наддуву призводить до суттєвого погіршення умов узгодження роботи лопаткових машин турбокомпресора з поршневою частиною...
65243. Розробка системи паливоподачі з електронним керуванням автотракторного дизеля з лінійним п’єзоелектричним перетворювачем 1.16 MB
  Таким чином розробка конструкції виконавчого елемента форсунки перспективної паливної акумуляторної апаратури вітчизняного виробництва вибір її оптимальних параметрів і розробка методики адаптації такої системи до двигуна є актуальним завданням яке визначило напрямок даного дисертаційного дослідження.
65244. Засоби контролю виробів електронної техніки за рівнем низькочастотного шуму 1.03 MB
  В теперішній час спостерігається значний розвиток електронних компонентів. Елементна база постійно вдосконалюється і, як свідчить практика, технологічні процеси виготовлення не є ідеальними.
65245. Інформаційна технологія створення графічних засобів захисту документів з використанням стеганографічних методів 651 KB
  Необхідність захисту документів та цінних паперів виникає на всіх етапах їх використання. Тому документи орієнтовані на використання при обслуговуванні різних технологічних процесів потребують різних рівнів захисту.
65246. АГРОКЛІМАТИЧНА ОЦІНКА ФОРМУВАННЯ ПРОДУКТИВНОСТІ ВИНОГРАДУ 261 KB
  При оцінці теплових ресурсів особливо велике значення має добова ритміка температур впродовж періоду вегетації На сьогоднішній день відомо багато фундаментальних та прикладних досліджень які були направлені на детальний аналіз кількісного характеру впливу термічного режиму на виноград.
65247. Диференційований підхід до призначення небіологічних базисних препаратів хворим з різною тривалістю ревматоїдного артриту 253 KB
  В Україні зареєстровано близько 170000 хворих на РА захворюваність серед жінок складає 0204 а серед чоловіків 0102 випадки на 1000 населення в рік Коваленко В. Майже 90 пацієнтів з агресивною формою хвороби стають непрацездатними в межах 20 років та складають...