- •Matlab учебное пособие
- •Содержание
- •Система математических расчетов matlab
- •Вызов и выход из matlab
- •Рабочий стол (desktop) системы matlab
- •Общие свойства и возможности рабочего стола matlab
- •Command Window (Командное окно)
- •1. Выполнение функций и ввод переменных
- •2. Вычисление выделенных функций и выражений (Evaluating a Selection)
- •3. Открытие выделения (Opening a Selection)
- •4. Ввод нескольких функций в одну строку
- •5. Ввод длинных функций
- •'Author Middle Initial’]
- •6. Окраска и выделение синтаксиса
- •7. Редактирование командной строки
- •8. Очистка командного окна
- •9. Подавление вывода результатов на экран
- •10. Разбиение экранного вывода на страницы
- •12. Распечатка содержания командного окна
- •13. Выполнение программ
- •Получение справок (Getting Help)
- •Рабочее пространство системы matlab
- •Name Size Bytes Class
- •V 5x9 90 char array Grand total is 286 elements using 2984 bytes
- •Clear a m
- •Просмотр и редактирование массивов данных при помощи редактора Array Editor
- •Пути доступа системы matlab
- •Add Folder… - Добавить директорию (папку).
- •Операции с файлами
- •Дуальность (двойственность) команд и функций
- •Действия над матрицами в системе matlab
- •Формирование матриц в системе matlab
- •Сложение и вычитание матриц
- •Векторное произведение и транспонирование матриц
- •Произведение матриц
- •Inner matrix dimensions must agree. Индексирование (Subscripts)
- •Index exceeds matrix dimensions
- •Двоеточие (Colon)
- •Единичная матрица, нулевая матрицы и матрица из единиц. Двумерные массивы случайных чисел
- •Решение систем линейных уравнений
- •Квадратные системы
- •Переопределенные системы
- •Недоопределенные системы
- •Обратные матрицы и детерминанты
- •Псевдообратные матрицы
- •Степени матриц и матричные экспоненты Положительные целые степени
- •Отрицательные и дробные степени
- •Поэлементное возведение в степень
- •Вычисление корня квадратного из матрицы и матричной экспоненты
- •Plot3(X(1,:), X(2,:), X(3,:), '-o')
- •Собственные значения и собственные векторы
- •Диагональная декомпозиция
- •Дефектные матрицы
- •Сингулярное разложение матриц
- •Для матрицы
- •Полиномы и интерполяция
- •Полиномы и действия над ними
- •Представление полиномов
- •Корни полинома
- •Характеристические полиномы
- •Poly(a)
- •Вычисление значений полинома
- •Polyval(p,5)
- •Умножение и деление полиномов
- •Вычисление производных от полиномов
- •Аппроксимация кривых полиномами
- •Plot(X, y, 'o', x2, y2); grid on
- •Разложение на простые дроби
- •Интерполяция
- •Одномерная интерполяция
- •1. Полиномиальная интерполяция
- •2. Интерполяция на основе быстрого преобразования Фурье _
- •Двумерная интерполяция
- •Сравнение методов интерполяции
- •Анализ данных и статистика
- •Основные функции обработки данных
- •Xlabel('Time')
- •Min(count(:))
- •Матрица ковариаций и коэффициенты корреляции
- •Cov(count(:,1))
- •Corrcoef(count)
- •Конечные разности
- •Diff(a)
- •Обработка данных
- •Отсутствующие значения
- •Удаление выбросов значений
- •Регрессия и подгонка кривых
- •Plot(t,y,'o'); grid on
- •Полиномиальная регрессия
- •Plot(t,y,'-',t,y,'o'); grid on
- •Линейно-параметрическая регрессия1
- •Множественная регрессия
- •Графический интерфейс подгонки кривых
- •Рассмотрение основных свойств ипк
- •Уравнения в конечных разностях и фильтрация
- •Воспользуемся данными матрицы count из раздела Анализ данных и статистика. Для на-шего примера, обозначим первый столбец матрицы count через вектор X :
- •Legend('Original Data','Smoothed Data',2)
- •Многомерные Массивы
- •Создание Многомерных Массивов
- •Size(c)
- •Ndims(c)
- •Индексация
- •Nddata (2, [1 3 4], 3). Оператор двоеточия и индексирование многомерных массивов.
- •Устранение неопределенностей в многомерной индексации
- •Изменение формы (Reshaping)
- •Поэлементное воздействие
- •Действия над плоскостями и матрицами
- •??? Error using eig
- •Input arguments must be 2-d.
- •Организация данных в многомерных массивах
- •Mean (mean (mean (temp)))
- •Организация и хранение данных
- •Структуры
- •Массивы структур
- •Создание массивов структур
- •Создание массивов структур с применением операторов присваивания.
- •1X2 struct array with fields:
- •Создание массива структур с использованием функции struct.
- •Обращение к данным в массивах структур.
- •1X2 struct array with fields:
- •Обращение к полям структуры с применением функций setfield и getfield
- •Определение размера массива структур
- •Добавление полей к структуре
- •Удаление поля из структуры
- •Применение функций и операторов
- •Mean((patient(2).Test)')
- •Создание функций для операций над массивами структур
- •Плоская организация
- •Поэлементная организация
- •Пример - Простая база данных
- •Client(a.Name(2,:),a.Address(2,:), a. Amount (2,:))
- •Client(b(2))
- •Вложенные структуры
- •Создание вложенных структур при помощи функции struct
- •Индексация вложенных структур
- •Массивы ячеек
- •Создание массивов ячеек
- •Применение операторов присваивания
- •Использование фигурных скобок для построения массивов ячеек
- •Задание массивов ячеек при помощи функции cell
- •Доступ к данным массивов ячеек
- •Доступ к данным массивов ячеек с использованием фигурных скобок
- •Обращение к подмножествам массива ячеек
- •Удаление ячеек
- •[3X3 double] [3x3 double]
- •Применение функций и операторов
- •Организация данных в массивах ячеек
- •Вложение массивов ячеек
- •Создание вложенных массивов при помощи вложенных фигурных скобок
- •Создание вложенных массивов при помощи функции cell
- •Индексация вложенных массивов ячеек
- •Преобразования между массивами ячеек и числовыми массивами
- •Массивы ячеек, содержащие структуры
- •Cell_array{index}.Field
- •C_str{1}.Label Многомерные массивы ячеек
- •Многомерные массивы структур
- •Типы м-файлов
- •Что такое м-файл ?
- •Обеспечение помощи для вашей программы
- •Help Имя_Функции
- •Help Имя_Директории
- •Создание м-файлов: Использование текстовых редакторов
- •Edit foo
- •Type fact
- •Сценарии
- •Простой пример сценария
- •Функции
- •Простой пример функции
- •Основные части синтаксиса м-функций
- •Строка определения функции
- •Тело функции
- •Комментарии
- •Имена функций
- •Как работает функция
- •Определение имени функции
- •Что происходит при вызове функцию
- •Создание p-кодов файлов
- •Pcode average
- •Как matlab передает аргументы функции
- •Рабочие пространства функций
- •Проверка числа аргументов функции
- •Передача переменного числа аргументов
- •Распаковка содержимого функции varargin
- •Упаковка выходных переменных в функцию varargout
- •Место функций varargin и varargout в списке аргументов
- •Локальные и глобальные переменные
- •Перманентные переменные (Persistent Variables)
- •Специальные переменные
- •Типы данных
- •Операторы
- •Арифметческие операторы
- •Арифметические операторы и массивы
- •Операторы отношения
- •Операторы отношения и массивы
- •Операторы отношения и пустые массивы
- •Логические операторы
- •Использованием логических операторов с массивами
- •Логические функции
- •Логические выражения использующие функцию find
- •Приоритеты операторов
- •Изменение приоритетов операторов
- •Команды управления данными (Flow Control)
- •Команды if, else, and elseif
- •If (логическое выражение)logical_expression
- •Команда if и пустые массивы
- •Команда switch
- •Команда while
- •Команда while и пустые массивы
- •While a
- •Команда for
- •Использование в качестве индексов массивов
- •Команда continue
- •Команда break
- •Команды try ... Catch
- •Команда return
- •Подфункции
- •Частные функции
- •Управление путями доступа (Managing the search path)
- •Приложение 3. Операторы и специальные символы
- •Приложение 4. Элементарные математические функции
- •Приложение 5. Элементарные матрицы и операции над ними
- •Приложение 8. Анализ данных и преобразование Фурье (Data analysis and Fourier transforms)
- •Справочник по базовым функциям системы matlab
- •Set(0, 'DefaultAxesColorOrder', [0 0 0], 'DefaultAxesLineStyleOrder', '-|-.|--|:')
- •Примеры
- •1. Задание цвета и размера маркеров
- •Set(gca, 'xTick',-pi : pi/2 : pi) set(gca, 'xTickLabel',{'-pi', '-pi/2', '0', 'pi/2', 'pi'})
- •Добавление заголовков, надписей к осям и аннотаций
- •Set(findobj(gca, 'Type', 'line', 'Color', [0 0 1]),...
- •Xlim, ylabel, ylim, zlabel, zlim, stem
- •Спецификаторы стилей линии
- •Спецификаторы маркеров
- •Спецификаторы цвета
- •Примеры
Приложение 4. Элементарные математические функции
(Elementary math functions).
Директория matlab\elfun
Тригонометрические функции (Trigonometric)
-
sin - Синус.
-
sinh - Гиперболический синус.
-
asin - Обратный синус.
-
asinh - Обратный гиперболический синус.
-
cos - Косинус.
-
cosh - Гиперболический косинус.
-
acos - Обратный косинус.
-
acosh - Обратный гиперболический косинус.
-
tan - Тангенс.
-
tanh - Гиперболический тангенс.
-
atan - Обратный тангенс.
-
atan2 - 4-х квандрантный обратный тангенс.
-
atanh - Обратный гиперболический тангенс.
-
sec - Секанс.
-
sech - Гиперболический секанс.
-
asec - Обратный секанс.
-
asech - Обратный гиперболический секанс.
-
csc - Косеканс.
-
csch - Гиперболический косеканс.
-
acsc - Обратный косеканс.
-
acsch - Обратный гиперболический косеканс.
-
cot - Котангенс.
-
coth - Гиперболический котангенс.
-
acot - Обратный котангенс.
-
acoth - Обратный гиперболический котангенс.
Экспоненциальные функции (Exponential)
-
exp - Экспоненциальная функция.
-
log - Натуральный логарифм.
-
log10 - Логарифм по основанию 10.
-
log2 - Логарифм по основанию 2 .
-
pow2 - Экспонента по основанию 2.
-
sqrt - Квадратный корень.
-
nextpow2 -Ближайшая степень по основанию 2.
Комплексные числа (Complex)
-
abs - Абсолютное значение числа.
-
angle - Аргумент комплексного числа.
-
complex - Конструирование комплексных данных из действительных и мнимых
частей.
-
conj - Комплексное сопряжение.
-
imag - Мнимая часть комплексного числа.
-
real - Действительная часть комплексного числа.
-
unwrap - Корректировка фазового угла.
-
isreal - Истинно, если массив содержит реальные числа.
-
cplxpair - Сортировка чисел в комплексно-сопряженные пары.
Округление и остатки (Rounding and remainder)
-
fix - Округление в сторону нуля.
-
floor - Округление в сторону минус бесконечность.
-
ceil - Округление в сторону плюс бесконечность
-
round - Округление в сторону ближайшего целого числа.
-
mod - Остаток со знаком после деления (Modulus or signed remainder after
division).
-
rem - Остаток после деления.
-
sign - Функция знака (Signum).
Приложение 5. Элементарные матрицы и операции над ними
(Elementary matrices and matrix manipulation)
Директория matlab\elmat
Элементарные матрицы и векторы (Elementary matrices)
-
zeros - Формирование массива нулей (матрицы из нулей).
-
ones - Формирование массива единиц.
-
eye - Единичная матрица.
-
repmat - Формирование многомерного массива из блоков.
-
rand - Равномерно распределенные случайные числа.
-
randn - Нормально распределенные случайные числа.
-
linspace - Формирование массива равноотстоящих чисел.
-
logspace - Формирование узлов логарифмической сетки.
-
freqspace - Формирование массива частот для частотных откликов.
-
meshgrid - Формирование узлов двумерной и трехмерной сеток (для построения
трехмерных графиков).
-
: - Формирование векторов с равноотстоящими значениями и
индексирование матриц.
Основная информация о массивах (Basic array information)
-
size - Размер массива (матрицы).
-
length - Длина вектора.
-
ndims - Число размерностей массива.
-
disp - Вывод в командное окно матрицы или текста.
-
isempty - Истинно для пустых массивов.
-
isequal - Истинно для одинаковых массивов.
-
isnumeric - Истинно для числовых массивов.
-
islogical - Истинно для логических массивов.
-
logical - Преобразование числовых массивов в логические.
Преобразования матриц (Matrix manipulation)
-
reshape - Преобразование размеров многомерного массива.
-
diag - Диагональные матрицы и диагонали матриц.
-
blkdiag - Блочно-диагональное объединение матриц.
-
tril - Извлечение нижней треугольной части матрицы.
-
triu - Извлечение верхней треугольной части матрицы.
-
fliplr - Зеркальное отображение слева направо.
-
flipud - Зеркальное отображение сверху вних.
-
flipdim - Зеркальное отображение вдоль заданной размерности (обобщенное
транспонирование).
-
rot90 - Поворот матриц на 90 градусов.
-
find - Определение индексов ненулевых элементов массива.
-
end - Последний индекс по указанной размерности.
-
sub2ind - Преобразование многомерной нумерации в последовательную.
-
ind2sub - Преобразование последовательной нумерации в многомерную.
Специальные символы, переменные и константы (Special variables and constants)
-
ans - Результат выполнения последней операции.
-
eps - Точность машинного представления чисел с плавающей запятой.
-
realmax - Наибольшее положительное число с плавающей запятой.
-
realmin - Наименьшее положительное число с плавающей запятой.
-
pi - 3.1415926535897....
-
i, j - Мнимая единица.
-
inf - Бесконечность.
-
NaN - Нечисловое значение.
-
isnan - Истинно для нечисловых значений.
-
isinf - Истинно для бесконечных значений.
-
isfinite - Истинно для конечных значений.
-
why - Выдает ответ в виде набора случайных фраз.
Специальные типы матриц (Specialized matrices)
-
compan - Сопутствующая матрица.
-
gallery - Набор тестовых матриц.
-
hadamard - Матрица Адамара.
-
hankel - Матрица Ганкеля.
-
hilb - Матрица Гильберта.
-
invhilb - Обратная матрица Гильберта.
-
magic - Матрица «Волшебный квадрат».
-
pascal - Матрица Паскаля.
-
rosser - Матрица Рессера (тестовая матрица для классической симметричной
проблемы собственных значений).
-
toeplitz - Матрица Теплица (Toeplitz matrix).
-
vander - Матрица Вандермонда (Vandermonde matrix).
-
wilkinson - Матрица Уилкинсона (тестовая матрица Уилкинсона (Wilkinson) для
задачи на собственные значения.
Приложение 6. - Матричные функции и линейная алгебра
(Matrix functions - numerical linear algebra)
Директория matlab\matfun
Матричный анализ (Matrix analysis)
-
norm - Нормы векторов и матриц.
-
normest - Оценка 2-нормы матриц.
-
rank - Ранг матрицы.
-
det - Детерминант матрицы
-
trace - След матрицы (сумма диагональных элементов).
-
null - Нуль- пространство (ядро) матрицы.
-
orth - Ортонормальный базис матрицы.
-
rref - Треугольная форма матрицы (Reduced row echelon form).
-
subspace - Угол между двумя подпространствами.
Линейные уравнения (Linear equations)
-
\ and / - Решение линейных уравнений (см. Приложение 3. Арифметические
операторы)
-
inv - Обратная матрица.
-
rcond - Обратная величина числа обусловленности матрицы ,найденная при по-
мощи вычислителя пакета LAPACK (LAPACK reciprocal condition estimator).
-
cond - Число обусловленности по отношению к обращению матриц.
-
condest - Оценка числа обусловленности 1-нормы матрицы.
-
normest1 - Оценка 1-нормы матрицы.
-
chol - Разложение Холецкого (Cholesky factorization).
-
cholinc - Неполное разложение Холецкого (Incomplete Cholesky factorization).
-
lu - LU-разложение (LU factorization).
-
luinc - Неполное LU-разложение (Incomplete LU factorization).
-
qr - Ортогонально-треугольная декомпозиция.
-
lsqnonneg - Метод наименьших квадратов с неотрицательными ограничениями.
-
pinv - Псевдообратная матрица.
-
lscov - Метод наименьших квадратов в присутствии шумов.
Собственные значения и сингулярные числа (Eigenvalues and singular values)
-
eig - Собственные значения и собственные векторы.
-
svd - Сингулярное разложение матрицы.
-
gsvd - Обобщенное сингулярное разложение матрицы.
-
eigs - Вычисление нескольких собственных значений (с наибольшими
модулями).
-
svds - Вычисление нескольких сингулярных чисел.
-
poly - Характеристический полином матрицы.
-
polyeig - Вычисление собственных значений матричного полинома (Polynomial
eigenvalue problem).
-
condeig - Число обусловленности относительно собственных значений матрицы.
-
hess - Приведение к форме Хессенберга (Hessenberg form).
-
qz - QZ-факторизация (приведение пары матриц к обобщенной форме Шура).
-
schur - Приведение к форме Шура (Schur decomposition).
Вычисление функций от матриц (Matrix functions).
-
expm - Вычисление матричной экспоненты.
-
logm - Вычисление логарифма матрицы.
-
sqrtm - Вычисление квадратного корня матрицы.
-
funm - Вычисление произвольной функции от матрицы.
-
expm1 - Матричная экспонента с использованием разложения Паде.
-
expm2 - Матричная экспонента с использованием разложения в ряд Тейлора.
-
expm3 - Матричная экспонента с использованием собственных значений и
собственных векторов.
Утилиты для процедур факторизации матриц (Factorization utilities)
-
qrdelete - Удалить столбец в QR -разложении.
-
qrinsert - Вставить столбец в QR-разложение.
-
rsf2csf - Преобразование действительной блочно-диагональной формы к
комплексной диагональной форме.
-
cdf2rdf - Преобразование комплексной блочно-диагональной формы к
действительной диагональной форме.
-
balance - Масштабирование матрицы для повышения точности вычисления
собственных значений.
-
planerot - Преобразование Гивенса (плоское вращениеГивенса).
-
cholupdate - Разложение Холецкого модифицированной матрицы.
-
qrupdate - QR –разложение модифицированной матрицы.
Приложение 7. Полиномы и интерполяция (Interpolation and polynomials)
Директория matlab\polyfun
Интерполяция данных (Data interpolation)
-
pchip - Интерполяция кусочным кубическим полиномом Эрмита.
-
interp1 - Одномерная табличная интерполяция.
-
interp1q - Быстрая одномерная табличная интерполяция.
-
interpft - Одномерная интерполяция с использованием быстрого преобразования
Фурье.
-
interp2 - Двумерная табличная интерполяция.
-
interp3 - Трехмерная табличная интерполяция.
-
interpn - Многомерная табличная интерполяция.
-
griddata - Двумерная интерполяция на неравномерной сетке.
-
griddata3 - Трехмерная интерполяция на неравномерной сетке.
-
griddatan - Многомерная интерполяция на неравномерной сетке.
Интерполяция сплайнами (Spline interpolation)
-
spline - Кубическая интерполяция сплайнами.
-
ppval - Оценка кусочно-непрерывных полиномов.
Геометрический анализ (Geometric analysis)
-
delaunay - Построение триангуляционной сетки (Delaunay triangulation).
-
delaunay3 - Трехмерная сотовая сетка Делануа (3-D Delaunay tessellation).
-
delaunayn - Многомерная сотовая сетка Делануа (N-D Delaunay tessellation).
-
dsearch - Поиск ближайшей точки в триангуляции Делануа.
-
dsearchn - Поиск ближайшей точки в многомерной сотовой сетке Делануа.
-
tsearch - Ближайшая точка двумерной триангуляции.
-
tsearchn - Ближайшая точка многомерной триангуляции.
-
convhull - Построение двумерной выпуклой оболочки.
-
convhulln - Построение многомерной выпуклой оболочки.
-
voronoi - Построение диаграммы Вороного.
-
voronoin - Построение многомерной диаграммы Вороного.
-
inpolygon - Истинно для точек области, ограниченной многоугольником.
-
rectint - Площади областей пересечения двух семейств прямоугольников.
-
polyarea - Площадь прямоугольника.
Полиномы (Polynomials)
-
roots - Нахождение корней полиномов.
-
poly - Вычисление характеристического полинома матрицы или определение
полинома с заданными корнями.
-
polyval - Вычисление значений полиномов в заданных точках.
-
polyvalm - Вычисление значений матричного полинома.
-
residue - Разложение на простые дроби (вычисление вычетов).
-
polyfit - Аппроксимация данных полиномом.
-
polyder - Вычисление производных от полиномов.
-
polyint - Аналитическое интегрирование полиномов.
-
conv - Умножение полиномов.
-
deconv - Деление полиномов.