
- •Введение.
- •Унифицированный интерактивный язык и среда программирования
- •Упрощение кода за счет векторизации
- •Интуитивный язык
- •Инструменты проектирования
- •Глава 1. Основы работы с системой Matlab.
- •Глава 2. Задачи восстановления сигналов
- •2.1. Обратные некорректные задачи
- •2.2. Некорректность задачи восстановления сигналов
- •2.3. Методы решения задачи восстановления сигналов
- •2.4. Метод регуляризации а.Н.Тихонова
- •Глава 3. Обработка экспериментальных данных методом опорных векторов с составным шагом.
- •Глава 4. Интерполяция и аппроксимация данных.
- •Глава 5. Определение параметров составляющих сложного сигнала.
- •Литература
- •Содержание
Содержание
Стр.
Введение………………………………………………………………….4
Глава 1. Основы работы с системой MATLAB…...………………………8
Глава 2. Задачи восстановления сигналов……………………………….24
Глава 3. Обработка экспериментальных данных методом опорных векторов с составным шагом………………………………...……………54
Глава 4. Интерполяция и аппроксимация данных… ………………….75
Глава 5. Определение параметров составляющих сложного сигнала….83
Литература…………………………………………………………………93
Приложение. Некоторые функции и операторы MATLAB.
image(Z) – возвращает мнимые части элементов массива Z.
real(Z) – возвращает вещественные части элементов комплексного массива Z.
conj(Z) – возвращает число, комплексно-сопряженное аргументу Z.
linespace(a,b,n) – генерирует n точек, равномерно распределенный в интервале от a до b. linespace(a,b) – возвращает линейный массив из 100 точек, равномерно распределенных в интервале от a до b.
D=size(a) – для mxn матрицы A возвращает двухэлементный вектор-строку, в котором первая составляющая– число строк m, а вторая составляющая – число столбцов n. [m,n]=size(A) возвращает число рядов и столбцов в разных выходных параметрах m и n.
rand – генерирует массивы случайных чисел, значения элементов которых равномерно распределены в промежутке (0,1). rand(n) – возвращает матрицу размера nxn. rand(n,m) – возвращает матрицу размера mxn. rand(size(A)) – возвращает массив того же размера, что и A, с элементами, распределенными по равномерному закону.
X=diag(v) –помещает вектор v на главную диагональ.V=diag(X) – возвращает главную диагональ матрицы X.
det(X) – возвращает определитель квадратной матрицы X.
rank(A) – возвращает количество сингулярных чисел, которые являются большими, чем заданный по умолчанию допуск.
norm(X,p) , где p– целое положительное число, – возвращает корень степени p из суммы абсолютных значений элементов вектора X, возведенный в степень p.
inv(X) – возвращает матрицу, обратную квадратной матрице X.Выдается предупреждающее сообщение, если X плохо масштабирована или близка к вырожденной. B=pinv(A) возвращает матрицу, псевдообратную матрице А.
fft(X) – возвращает для вектора X дискретное преобразование Фурье, по возможности используя алгоритм быстрого преобразование Фурье. Если X – матрица, функция fft возвращает преобразование Фурье для каждого столбца матрицы. Ifft(F) – возвращает результат дискретного обратного преобразования Фурье вектора F.
max(A) – возвращает наибольший элемент, если A– вектор; или возвращает вектор-строку, содержащую максимальные элементы каждого столбца, если А– матрица.
min (A) – возвращает наименьший элемент, если A– вектор; или возвращает вектор-строку, содержащую минимальные элементы каждого столбца, если А– матрица.
mean(A) – возвращает арифметическое среднее значение элементов массива, если A – вектор или вектор – строку, содержащую средние значения каждого столбца, если А – матрица.
sort(A) – в случае одномерного массива А сортирует и возвращает элементы по возрастанию их значений; в случае двумерного массива происходит сортировка и возврат элементов каждого столбца. Допустимы вещественные, комплексные и строковые элементы. Если А принимает комплексные значения, то элементы сначала сортируются по абсолютному значению, а затем, если абсолютные значения равны, по аргументу.
plot(X,Y) – строит график функции y(x), координаты точек (x,y) которой берутся из векторов одинакового размера X,Y. Если X или Y – матрица, то строится семейство графиков по данным, содержащимся в колонках матрицы.
[B,d]=spdiags(A) – извлекает все ненулевые диагонали из матрицы A размера mxn. B– матрица размера min(m,n)xp, столбцы которой p являются ненулевыми диагоналями A. d – вектор длины p, целочисленные элементы которого точно определяют номера диагоналей матрицы A (положительные номера – выше главной диагонали, отрицательные – ниже).
nnz(X) – возвращает число ненулевых элементов матрицы X.
lsqr(A,B) – возвращает точное Решение X системы линейных уравнений A*X=B, если матрица хорошо обусловленная. В противном случае – возвращает решение, полученное итерационным методом наименьших квадратов. Матрица коэффициентов A должна быть прямоугольной размера mxn , а вектор-столбец правых частей уравнений B должен иметь размер m. Условие mn может быть и необязательным. Функция lsq начинает итерации от начальной оценки, по умолчанию представляющий собой вектор размером n, состоящий из нулей. Итерации производятся или до сходимости к решению, или до появления ошибки, или до достижения максимального числа итераций (по умолчанию равного min(20,m,n). Сходимость достигается, когда отношение вторых норм векторов norm(B-Ax)/norm(B) меньше или равно погрешности метода tol(по умолчанию 10-6).
A(:,j) – j-ый столбец из матрицы A.
A(i,:j) – j-ая строка из матрицы A.
A(j:k) – это A(j), A(j+1),…A(k).
A(:,j:k) – это A(:,j), A(:,j+1),…A:,(k).
A(:) – записывает все элементы массива A в виде столбца.
A(m,:) – удаляет строку m из матрицы A.
A(:,n) – удаляет столбец n из матрицы A.
/– правое деление. Выражение X=B/A дает решение систем линейных уравнений AX=B, где A – матрица размером mxn и B – матрица размера nxk ;
\ – левое деление. Выражение X=B\A дает решение систем линейных уравнений AX=B, где A – матрица размером mxn и B – матрица размера nxk.