
- •Предисловие
- •Введение
- •Запуск системы и знакомство со справочной информацией
- •Практическое занятие №1
- •Работа системы в командном режиме Работа системы в качестве калькулятора
- •Задание векторов и матриц
- •Использование оператора : (двоеточие)
- •Начальное_значение: Шаг: Конечное_значение
- •Сохранение и считывание данных
- •Практическое занятие №2
- •Построение графиков
- •Практическое занятие №3
- •Основы программирования (m-файлы)
- •Пример 2. Операция сложения двух полиномов отсутствует в системеMatlab. Создадим соответствующую программу.
- •Ппп Notebook
- •Написание m-книги
- •Практическое занятие №4
- •Основные характеристики линейных систем управления Общее решение линейного однородного дифференциального уравнения и собственные колебания системы
- •Практическое занятие №5
- •Алгебраический критерий устойчивости (критерий Рауса-Гурвица)
- •Например
- •Определение "запаса устойчивости" алгебраическим методом
- •Частотные и временные характеристики линейной системы
- •Использование ппп Control System Toolbox
Практическое занятие №2
1. Определите последовательность значений экспоненты eat при выбранном вами значении действительного параметраa(a < 0) и таком диапазоне изменения времениt, который позволит получить качественное представление о виде зависимостиeat при небольшом числе (не больше десяти) дискретных значений переменнойt.
2. Проделайте то же самое при чисто мнимом значении параметра a = i.
3. Проделайте то же самое для функции, представленной суммой двух экспонент с комплексно сопряженными показателями a1 = i, a2 = -i.
4. Проделайте то же самое для функции, представленной суммой двух экспонент с комплексно сопряженными показателями a1 = -b+ i, a2 =-b -i.
5. Проделайте то же самое для функций y = cost, y = e-bt cost.
Построение графиков
Одной из самых привлекательных черт системы MATLAB является визуализация вычислений. Покажем примеры построения графиков функций одной переменной и двух переменных. Ограничимся самыми простыми примерами. Следуя им, можно построить графики во многих практических ситуациях. Однако это не исключает необходимость знакомства со справочной документацией по графическим средствам системыMATLAB. Все сказанное здесь о графиках функций одной переменной заимствовано почти дословно из начальной части одной из глав (Graphics)руководстваGetting Started with MATLAB. Для более полного знакомства с возможностями графических средств системыMATLAB следует прочитать упомянутую главу этого руководства до конца, а для овладения всем арсеналом графических средств не обойтись без знакомства с другим документом -Using MATLAB Graphics.
Рассмотрим сначала простейший пример – построение графика с помощью функции plot.Она имеет различные формы в зависимости от набора входных аргументов. Если y - вектор, функцияplot(y) производит кусочно-линейный график элементов y в зависимости от индекса элементов y. Если функцияplot(x,y) имеет два векторных аргумента одинаковой размерности, то будет произведен график y в зависимости от x. Например, чтобы изобразить значения функции синуса от нуля до 2, достаточно ввести команды
» t = 0:pi/100:2*pi;
» y = sin(t);
» plot(t,y)
Результатом вычисления последнего выражения будет график, показанный ниже.
Если бы вместо функции plot(t,y) была использована функция plot(y), то в результате был бы выведен тот же график со значением аргумента от 0 до 200.
Функция plot может иметь несколько пар аргументовx-y. В этом случае она изображает несколько функцийy(x)кривыми разного цвета, используя предопределенный (но изменяемый пользователем) список цветов. Например, если в той сессии ввести еще выражения функцийy2 и y3
y2 = sin(t-.25);
y3 = sin(t-.5);
plot(t,y,t,y2,t,y3)
то система изобразит три связанных функции t, кривыми разного цвета
Имеется возможность определять цвет, стиль линии и маркеры, такие как, например, знак плюс, кружек с помощью еще одного аргумента функции plot:
plot(x,y,'color_style_marker')
color_style_marker - 1-, 2-, или 3-символьная строка (ограниченная одиночными кавычками) созданная из цвета, стиля линии и типа маркера:
- строки цвета - 'c', 'm', 'y', 'r', 'g', 'b', 'w', и 'k'. Они соответствуют сиану, фуксину, желтому, красному, зеленому, синему, белому, и черному (cyan, magenta, yellow, red, green, blue, white, and black.).
- строки стиля линии - '-' для твердого, '- -' для пунктирного, ':' для точечного, '-.' для точки, и 'none' для пустой строки.
- наиболее общий тип маркера включают '+', 'o', '*', и 'x.
Например, выражение:
plot(x,y,'y:+')
вычерчивает желтую точечную строку и устанавливает маркеры плюс в каждой точке данных. Если Вы определяете тип маркера, но не стиль линии, система MATLAB делает только маркер.
Следующий пример касается возможности последовательного задания графиков с использованием директивы hold, которая по умолчанию выключена.
t=0:pi/50:1.5*pi;
y1=t.*cos(t);
plot(t,y1,'k-');
hold on
y2=t.*cos(2*t);
plot(t,y2,'r*');
title('Example 2');
Команда plot3(…) является аналогом команды plot(…), но относится не к функции одной переменной y(x), а к функции двух переменных z(x,y). Она строит аксонометрическое изображение (3D) поверхностей. В простейшем случае она является функцией трех аргументов X,Y,Z, которые должны быть векторами одинаковой размерности. Четвертый аргумент задает спецификацию линий и точек, аналогично команде plot.
Приведем простейший пример трехмерной графики для иллюстрации сказанного
t=0:pi/50:7*pi;
plot3(sin(t),2*cos(t),t,'k');
title('Example 3');
К сожалению, этот пример не показателен для 3Dграфики. Как правило, в трехмерном пространстве изображаются функции двух независимых переменных. Для генерации "сетки" (равноотстоящих) значений аргументов функции нескольких переменных используется функцияmeshgrid (x, y) в форме:
[X, Y] = meshgrid (x, y). Она преобразует область, заданную векторамиx, y в массивыX, Y, которые могут быть использованы в качестве значений аргументов для вычисления функции двух переменных и построения графиков трехмерных поверхностей.
Пример:
» [X, Y]= meshgrid(0:.25:1, 0:.25:1)
X =
0 0.2500 0.5000 0.7500 1.0000
0 0.2500 0.5000 0.7500 1.0000
0 0.2500 0.5000 0.7500 1.0000
0 0.2500 0.5000 0.7500 1.0000
0 0.2500 0.5000 0.7500 1.0000
Y =
0 0 0 0 0
0.2500 0.2500 0.2500 0.2500 0.2500
0.5000 0.5000 0.5000 0.5000 0.5000
0.7500 0.7500 0.7500 0.7500 0.7500
1.0000 1.0000 1.0000 1.0000 1.0000
Если вспомнить, что матрицы хранятся по столбцам, то станет очевидным, что совокупность матриц X и Y – есть совокупность равноотстоящих точек на плоскости (x, y) в квадрате со стороной [0, 1] и шагом 0,25.
Для построения графика функции z = x2 + y2 в квадрате со стороной [-1, 1] и шагом 0,05 достаточно ввести следующие команды:
» [X, Y]= meshgrid(-1:.05:1, -1:.05:1);
» Z=X.^2+Y.^2;
» plot3(X,Y,Z)