Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лабораторная работа / Лаба№1 / Отчет по ТАУ лаба№1

.doc
Скачиваний:
27
Добавлен:
22.02.2014
Размер:
262.14 Кб
Скачать

САРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

БАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ ТЕХНОЛОГИИ и УПРАВЛЕНИЯ

ФАКУЛЬТЕТ ВЕЧЕРНЕ – ЗАОЧНЫЙ

КАФЕДРА «УПРАВЛЕНИЕ И ИНФОРМАТИКА В ТЕХНИЧЕСКИХ СИСТЕМАХ»

ЛАБОРАТОРНАЯ РАБОТА №1

по дисциплине

Теория автоматического управления

ИЗУЧЕНИЕ ПРОГРАММНОЙ СРЕДЫ MATLAB

Выполнил ст. гр. УИТ-41В

Швецов А.А.

Проверила

Комлева О.А.

2006

Цель работы: изучение графической операционной среды системы MATLAB; получение навыков работы в системе MATLAB при выполнении вычислительных операций

Вариант №10

  1. Дана система уравнений

Сформировать матрицу из коэффициентов данной системы уравнений и вектор из свободных членов системы. Для полученного вектора выполнить следующие операции: транспонирование, умножение вектора на число, равное номеру варианта, прибавить к каждому элементу вектора данное число, осуществить поэлементное возведение в степень данного числа полученный вектор. Для матрицы выполнить транспонирование, обращение матрицы, возведение матрицы в степень числа, равного номеру варианта, вычислить матричную экспоненту, выполнить логарифмирование матрицы, вычислить корень.

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

  1. Дан полином

Вычислить корни полинома. Выполнить обратное действие: определить коэффициенты полинома по вычисленным корням. Определить значение полинома по заданному аргументу. Определить значение коэффициентов производной заданного полинома.

Для вычисления корней полинома сформируем вектор коэффициентов заданного полинома и вычислим корни с помощью функции 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

  1. Дана функция

Построить графики функции в декартовой и полярной системах координат.

Для построения графика заданной функции зададим диапазон изменения аргумента 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. А в частности научился выполнять различные операции с матрицами, такими как транспонирование, обращение матрицы, возведение матрицы в степень числа, вычисление матричной экспоненты, логарифмирование матрицы, вычисление корня. Часть выше перечисленных операций я применил и к вектору. Для полинома нашел корни и его коэффициенты. А также изучил алгоритм построения графика для заданной функции и построение частотных характеристик для передаточной функции.

Соседние файлы в папке Лаба№1