лабораторная работа / Лаба№1 / Отчет по ТАУ лаба№1
.docСАРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
БАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ ТЕХНОЛОГИИ и УПРАВЛЕНИЯ
ФАКУЛЬТЕТ ВЕЧЕРНЕ – ЗАОЧНЫЙ
КАФЕДРА «УПРАВЛЕНИЕ И ИНФОРМАТИКА В ТЕХНИЧЕСКИХ СИСТЕМАХ»
ЛАБОРАТОРНАЯ РАБОТА №1
по дисциплине
Теория автоматического управления
ИЗУЧЕНИЕ ПРОГРАММНОЙ СРЕДЫ MATLAB
Выполнил ст. гр. УИТ-41В
Швецов А.А.
Проверила
Комлева О.А.
2006
Цель работы: изучение графической операционной среды системы MATLAB; получение навыков работы в системе MATLAB при выполнении вычислительных операций
Вариант №10
-
Дана система уравнений
Сформировать матрицу из коэффициентов данной системы уравнений и вектор из свободных членов системы. Для полученного вектора выполнить следующие операции: транспонирование, умножение вектора на число, равное номеру варианта, прибавить к каждому элементу вектора данное число, осуществить поэлементное возведение в степень данного числа полученный вектор. Для матрицы выполнить транспонирование, обращение матрицы, возведение матрицы в степень числа, равного номеру варианта, вычислить матричную экспоненту, выполнить логарифмирование матрицы, вычислить корень.
To get started, select "MATLAB Help" from the Help menu.
>> A=[1 2 3 4; 2 3 4 1; 3 4 1 2; 4 1 2 3]
A =
1 2 3 4
2 3 4 1
3 4 1 2
4 1 2 3
>> B=[26; 34; 26; 26]
B =
26
34
26
26
Найдем вектор корней системы уравнений:
>> x=A\B
x =
2.8000
2.8000
4.8000
0.8000
Выполним заданные операции с вектором:
>> disp(B')
26 34 26 26
>> disp(B*10)
260
340
260
260
>> disp(B+10)
36
44
36
36
>> disp(B.^10)
1.0e+015 *
0.1412
2.0644
0.1412
0.1412
Выполним заданные операции с матрицей:
>> disp(A')
1 2 3 4
2 3 4 1
3 4 1 2
4 1 2 3
>> disp(inv(A))
-0.2250 0.0250 0.0250 0.2750
0.0250 0.0250 0.2750 -0.2250
0.0250 0.2750 -0.2250 0.0250
0.2750 -0.2250 0.0250 0.0250
>> disp(A^10)
1.0e+009 *
2.5000 2.5000 2.5000 2.5000
2.5000 2.5000 2.5000 2.5000
2.5000 2.5000 2.5000 2.5000
2.5000 2.5000 2.5000 2.5000
>> disp(exp(A))
2.7183 7.3891 20.0855 54.5982
7.3891 20.0855 54.5982 2.7183
20.0855 54.5982 2.7183 7.3891
54.5982 2.7183 7.3891 20.0855
>> disp(logm(A))
1.2688 + 2.1262i 0.4024 - 0.2300i 0.2291 - 0.5554i 0.4024 - 1.3408i
0.4024 - 0.2300i 1.2688 + 1.0154i 0.4024 - 1.3408i 0.2291 + 0.5554i
0.2291 - 0.5554i 0.4024 - 1.3408i 1.2688 + 2.1262i 0.4024 - 0.2300i
0.4024 - 1.3408i 0.2291 + 0.5554i 0.4024 - 0.2300i 1.2688 + 1.0154i
>> disp(sqrtm(A))
0.9137 + 1.0713i 0.4933 - 0.0563i 0.6674 - 0.3642i 1.0879 - 0.6509i
0.4933 - 0.0563i 1.5083 + 0.4767i 1.0879 - 0.6509i 0.0728 + 0.2304i
0.6674 - 0.3642i 1.0879 - 0.6509i 0.9137 + 1.0713i 0.4933 - 0.0563i
1.0879 - 0.6509i 0.0728 + 0.2304i 0.4933 - 0.0563i 1.5083 + 0.4767i
-
Дан полином
Вычислить корни полинома. Выполнить обратное действие: определить коэффициенты полинома по вычисленным корням. Определить значение полинома по заданному аргументу. Определить значение коэффициентов производной заданного полинома.
Для вычисления корней полинома сформируем вектор коэффициентов заданного полинома и вычислим корни с помощью функции roots(p):
>> p=[1 -5 1 -15 50]
p =
1 -5 1 -15 50
>> r=(roots(p))
r =
5.0000
-1.0000 + 2.0000i
-1.0000 - 2.0000i
2.0000
Для определения коэффициентов полинома воспользуемся функцией poly(r)
>> disp(poly(r))
1.0000 -5.0000 1.0000 -15.0000 50.0000
Вычислим значение заданного полинома по значению аргумента, используя функцию polyval:
>> disp(polyval(p,10))
5000
Определим значение коэффициентов производной заданного полинома:
>> disp(polyder(p))
4 -15 2 -15
-
Дана функция
Построить графики функции в декартовой и полярной системах координат.
Для построения графика заданной функции зададим диапазон изменения аргумента x, запишем заданную функцию и воспользуемся функцией plot:
>> x=0:0.1:10;
>> y=3*x-4*log(x)-5 ;
Warning: Log of zero.
>> plot(x,y);grid
Для построения графика в полярной системе координат необходимо преобразовать декартовые координаты в полярные:
>> x=0:0.1:1;
>> y=3*x-4*log(x)-5 ;
Warning: Log of zero.
>> [TH,R]=cart2pol(x,y);
>> plot(TH,R),grid
4. Дана передаточная функция
Построить АЧХ и ФЧХ
>> P1=[-1 -2 2];P2=[9 0 3 5];
>> roots(P1);
>> roots(P2);
>> om0=1e-2; omk=1e2;
>> OM=logspace(-2,2,41); p=i*OM;
>> ch=polyval(P1,p); zn=polyval(P2,p);
>> ACH=abs(ch)./abs(zn);
>> FCH=angle(ch./zn)*180/pi;
>> subplot(2,1,1);
>> loglog(OM,ACH);grid
>> semilogx(OM,FCH);grid
Вывод:
Входе проделанной работы я приобрел навыки работы с программной средой MATLAB. А в частности научился выполнять различные операции с матрицами, такими как транспонирование, обращение матрицы, возведение матрицы в степень числа, вычисление матричной экспоненты, логарифмирование матрицы, вычисление корня. Часть выше перечисленных операций я применил и к вектору. Для полинома нашел корни и его коэффициенты. А также изучил алгоритм построения графика для заданной функции и построение частотных характеристик для передаточной функции.