Similar presentations:
Матлаб
1. Математические вычисления и визуализация в MATLAB
Шурупова А.В. ХТиТ 1-172. Введение
MATLAB (сокращение от Matrix Laboratory) — это мощная средатехнических вычислений, где базовым элементом данных является
массив (или матрица). В отличие от классических языков
программирования, MATLAB оптимизирован для работы с
векторами и матрицами «из коробки».
3. Математические действия
4. Математические выражения в MATLAB
Как и большинство других языков программирования, Matlabпредоставляет возможность использования математических выражений,
но в отличие от многих из них, эти выражения в Matlab включают
матрицы. Основные составляющие выражения:
— переменные;
— числа;
— операторы;
— функции.
5. Переменные
ПеременныеВ Matlab нет необходимости в определении типа переменных или размерности.
Когда Matlab встречает новое имя переменной, он автоматически создает
переменную и выделяет соответствующий объем памяти. Если переменная уже
существует, Matlab изменяет ее состав и если это необходимо выделяет
дополнительную память.
Имена переменных состоят из букв, цифр или символов подчеркивания. Matlab
использует только первые 31 символ имени переменной. Matlab чувствителен к
регистрам, он различает заглавные и строчные буквы. Поэтому A и a — не одна и та
же переменная. Чтобы увидеть матрицу, связанную с переменной, просто введите
название переменной.
6. Числа.
Числа.Matlab использует принятую десятичную систему счисления, с необязательной
десятичной точкой и знаками плюс-минус для чисел. Научная система
счисления использует букву e для определения множителя степени десяти.
Мнимые числа используют i или j как суффикс.
Все числа для хранения используют формат long, это числа с
плавающей точкой обладающие ограниченной точностью —
приблизительно 16 значащих цифр и ограниченным диапазоном
— приблизительно от 10-308 до 10308.
7. Операторы.
Операторы.Выражения используют обычные арифметические операции
В MATLAB все арифметические
операции делятся на два типа:
скалярные/матричные и поэлементные.
Шаблоны презентаций с сайта presentation-creation.ru
8. Скалярная арифметика
Когда вы работаете сотдельными числами
(скалярами), MATLAB
ведет себя как
стандартный, но очень
мощный калькулятор.
На этом уровне важно
понимать приоритет
операций и
особенности деления.
Если вы работаете с обычными числами
(скалярами), синтаксис максимально
привычен:
•Сложение (+): a + b
•Вычитание (-): a – b
•Умножение (*): a * b
•Деление (/): a / b (деление слева направо)
•Возведение в степень (^): a ^ b
9. Примеры для скаляров:
10. Примеры для скаляров:
Замечание: В MATLAB есть также оператор обратного деления (\). Например,a \ b означает «разделить b на a». В скалярной арифметике 5 \ 10 даст 2.
11. Поэлементные операции
Так как MATLAB изначально «заточен» под матрицы, обычные знаки *, /,^ по умолчанию выполняют линейно-алгебраические (матричные)
операции.
Если попытаться умножить вектор на вектор с помощью *, MATLAB
выдаст ошибку несоответствия размерностей (если только вы не
умножаете строку на столбец по правилам линейной алгебры).
Чтобы в MATLABе применить действие к каждому конкретному
элементу массива: нужно поставить точку (.) перед оператором.
Примечание: Для сложения (+) и вычитания (-) точка не нужна, так как эти операции в линейной
алгебре и так всегда выполняются поэлементно.
12.
Поэлементные операции13. Функции
Matlab предоставляет большое количество элементарных математическихфункций, таких как abs, sqrt, exp, sin. Вычисление квадратного корня или
логарифма отрицательного числа не является ошибкой: в этом случае
результатом является соответствующее комплексное число. Matlab также
предоставляет и более сложные функции, включая Гамма функцию и
функции Бесселя. Большинство из этих функций имеют комплексные
аргументы. Важно помнить, что тригонометрические функции по умолчанию
работают с радианами Чтобы вывести список всех элементарных
математических функций, наберите:
help elfun
Чтобы посмотреть список всех функций Matlab для анализа данных:
help datafun
Если вам нужно узнать о Statistics Toolbox, введите:
14. Встроенные математические функции
15.
Несколько специальныхфункций предоставляют
значения часто
используемых констант:
Имена функций не являются зарезервированными, поэтому возможно
изменять их значения на новые, например:
eps = 1.e-6
и далее использовать это значение в последующих вычислениях.
Начальное значение может быть восстановлено следующим образом:
clear eps
16. Операторы отношения
Операторы отношенияСлужат для сравнения двух величин, векторов или матриц, все операторы
отношения имеют две сравниваемые величины и записываются, как показано в
табл
Данные операторы
выполняют поэлементное
сравнение векторов или
матриц одинакового
размера, и логическое
выражение принимает
значение 1 (True), если
элементы идентичны, и
значение 0 (False) в
противном случае.
17. Логические операторы
служат для реализации поэлементных логических операций надэлементами одинаковых по размеру массивов
18. Визуализация: 2D и 3D моделирование
19. 2D Моделирование (Двухмерные графики)
Основные функции построения• plot(x, y) — строит классический линейный график по
координатам векторов (x) и (y).
• plot(y) — если задан только вектор (y), по оси абсцисс
откладываются индексы элементов (от (1) до (n)).
• scatter(x, y) — строит точечную (маркерную) диаграмму.
• stairs(x, y) — создает ступенчатый (лестничный) график.
• bar(x, y) — строит столбчатую диаграмму (гистограмму).
• polarplot(theta, r) — строит график в полярной системе координат
20.
Основные функции построения• plot(x, y) — строит классический линейный график по
координатам векторов (x) и (y).
• plot(y) — если задан только вектор (y), по оси абсцисс
откладываются индексы элементов (от (1) до (n)).
• scatter(x, y) — строит точечную (маркерную) диаграмму.
• stairs(x, y) — создает ступенчатый (лестничный) график.
• bar(x, y) — строит столбчатую диаграмму (гистограмму).
• polarplot(theta, r) — строит график в полярной системе координат
21. Стилизация линий и маркеров (plot(x, y, ‘стиль’))
Можно настроить цвет, стиль линии и маркеры прямо в команде plot,используя специальные строковые аргументы (например, 'r--' — красная
пунктирная линия
Цвета: 'r' (красный), 'g' (зеленый), 'b' (синий), 'k' (черный), 'y' (желтый).
Стили линий: '-' (сплошная), '--' (штриховая), ':' (пунктирная), '-.' (штрихпунктирная).
Маркеры: 'o' (круг), '*' (звездочка), '+' (плюс), 'x' (крестик), 's' (квадрат).
22. Оформление графика
Сразу после вызова функции построения используются команды длядобавления аннотаций:
title('Заголовок') — задает название графика.
xlabel('Подпись оси X') — подписывает горизонтальную ось.
ylabel('Подпись оси Y') — подписывает вертикальную ось.
grid on / grid off — включает/выключает отображение
координатной сетки.
legend('Кривая 1', 'Кривая 2') — создает легенду для
идентификации графиков.
23. Работа с несколькими графиками
hold on — фиксирует текущий график, позволяя накладывать поверхновые данные (функция plot не будет очищать окно).
hold off — отключает режим наложения.
figure — открывает новое пустое графическое окно.
subplot(m, n, p) — разбивает графическое окно на сетку m х n, где p —
номер активного поля для построения.
24. Настройка осей и масштаба
axis([xmin xmax ymin ymax]) — задает границы отображения для осей.axis equal — устанавливает одинаковый масштаб по обеим осям (для правильных
пропорций).
xlim([xmin xmax]) и ylim([ymin ymax]) — задают границы только для одной из осей.
25. Пример построения функции
26. 3D Моделирование (Трехмерные графики)
Для создания 3D-графиков в MATLAB используются функции,визуализирующие зависимость \(z = f(x, y)\) или трехмерные
кривые. Полный перечень всех доступных инструментов и
руководств представлен на странице документации
MathWorks MATLAB 3-D Plots.
27. Основные команды для базовых типов визуализации, а также команды оформления трехмерного пространства:
plot3(x, y, z) — строит пространственные линии и траектории по трем массивам координатmesh(X, Y, Z) — строит каркасную поверхность (сетку).
surf(X, Y, Z) — строит залитую цветом поверхность.
surfc(X, Y, Z) — строит залитую поверхность с линиями уровня (контурами) в основании.
surfl(X, Y, Z) — строит поверхность с учетом освещения (затенения).
contour3(X, Y, Z) — строит изолинии (линии уровня) постоянных значений в 3d
28. Оформление графика
grid on — включает отображение сетки.title, xlabel, ylabel, zlabel — добавляют заголовки и подписи к соответствующим осям (например,
zlabel('Высота, м')).
colormap — задает цветовую палитру (например, colormap jet, colormap parula).
shading — управляет сглаживанием цветов (например, shading interp для красивой гладкой заливки
или shading flat для граней).
Команды управления осями и обзором
view(azimuth, elevation) — задает угол обзора. Углы указываются в градусах. Например, view(45, 30).
axis — настройка масштаба осей (например, axis equal, axis tight).
rotate3d on — включает интерактивный режим вращения графика с помощью мыши прямо в окне
вывода.
camorbit, camzoom — команды управления положением виртуальной камеры.
29. Пример построения 3D графика
30. Решение математического задания (Контрольный вопрос №5)
Построить график функции y = e^x - 5x^2 на участке от 0 до 1 с шагом 0.131.
СПАСИБОЗА
ВНИМАНИЕ
informatics