Министерство науки и высшего образования
Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
Высшего образования
«Московский государственный технологический университет «СТАНКИН»
(ФГБОУ ВО «МГТУ «СТАНКИН»)
Институт автоматизации и робототехники
Кафедра робототехники и мехатроники
Дисциплина «Пакет прикладных программ Matlab для исследований и разработок»
ОТЧЁТ [U1]
По лабораторной работе
на тему:
Построение графиков функций в MATLAB/Scilab. Скрипты и функции
Выполнил:
студент группы АДБ-18-09 __________ _______ Маликов И.Т.
(дата) (подпись) (ФИО)
Принял
преподаватель: __________ _______ Ким В. Л.
(дата) (подпись) (ФИО)
Оценка: ________ Дата:_________
Москва 2020
Цель работы: получение базовых знаний для работы c двумерной и
трёхмерной графикой в среде MATLAB, создание графиков функций одной
переменной, построение поверхностей, использование М-файлов, создание
пользовательских функций.
Задание №1
1.1. В интервале [0.1, 1] с шагом 0.1 рассчитать таблицу значений для
выражения из пункта №1 первой лабораторной работы, которое вы выбирали
согласно вашему варианту.
N=[0.1:0.1:1]// вектор N, которое изменяется в интервале 0.1-1 с шагом 0.1
N =
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
--> A = sin(N^3 + N^2)
A =
column 1 to 7
0.0109998 0.0479816 0.1167332 0.2221315 0.3662725 0.5446737 0.7399527
column 8 to 10
0.9135791 0.9994945 0.9092974
B = log10(N.^cos(N+1) + N.^sin(N+1))
B =
column 1 to 7
-0.3184378 -0.1072206 0.0162431 0.100767 0.1622717 0.2082151 0.2428176
column 8 to 10
0.268739 0.2877469 0.30103
--> C = tan(N + tan(N))
C =
column 1 to 7
0.2030585 0.4259914 0.6979313 1.0777332 1.7284761 3.3923783 35.068436
column 8 to 10
-3.7766886 -1.4955913 -0.6611662
|
exp(A + B^2 + C^3) // gfd ans =
ans =
column 1 to 7
1.1283711 1.1465781 1.5792738 4.4109146 258.95416 1.623D+17 Inf
column 8 to 10
1.080D-23 0.1040342 2.03581
1.2. Выполнить задание 1.1, используя шаг -0.1 начиная со значения N=1 до
N=0.
N=[1:-0.1:0]//вектор N, которое изменяется в интервале 0.1-1 с шагом 0.1
N =
1. 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.
--> A = sin(N^3 + N^2)
A =
column 1 to 7
0.9092974 0.9994945 0.9135791 0.7399527 0.5446737 0.3662725 0.2221315
column 8 to 11
0.1167332 0.0479816 0.0109998 0.
--> B = log10(N.^cos(N+1) + N.^sin(N+1))
B =
column 1 to 7
0.30103 0.2877469 0.268739 0.2428176 0.2082151 0.1622717 0.100767
column 8 to 11
0.0162431 -0.1072206 -0.3184378 -Inf
--> C = tan(N + tan(N))
C =
column 1 to 7
-0.6611662 -1.4955913 -3.7766886 35.068436 3.3923783 1.7284761 1.0777332
column 8 to 11
0.6979313 0.4259914 0.2030585 0.
-> exp(A + B^2 + C^3) // gfd ans =
ans =
column 1 to 7
2.03581 0.1040342 1.080D-23 Inf 1.623D+17 258.95416 4.4109146
column 8 to 11
1.5792738 1.1465781 1.1283711 Inf
1.3. Отобразить в линейном масштабе на одних осях два графика функций с
помощью функции plot:
[U2]
где N изменяется в диапазоне [0, 1] с шагом 0.1, а переменная M - с шагом
0.02.
Решение:
N=[0:0.1:1]
N =
0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
--> M=[0:0.2:1]
M =
0. 0.2 0.4 0.6 0.8 1.
--> f1=N.^5+N.^3+N+1//ФУНКЦИЯ ВЕКТОРА N
f1 =
column 1 to 9
1. 1.10101 1.20832 1.32943 1.47424 1.65625 1.89376 2.21107 2.63968
column 10 to 11
3.21949 4.
--> f2=M.^5+M.^3+M+1//ФУНКЦИЯ ВЕКТОРА M
f2 =
1. 1.20832 1.47424 1.89376 2.63968 4.
--> plot(N,f1,'x-b')
--> plot(M,f2,'x-r')
[U3]
Рисунок 1 два графика[U4] функций f1 и f2 с помощью функции plot
1.4. С помощью функции plot постройте графики функций f1(N) и 10-2
f1(N)*sin(N), так, чтобы отображались две оси с разным масштабом.
N=[0:0.1:1]
N =
0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
--> f1=N.^5+N.^3+N+1
f1 =
column 1 to 9
1. 1.10101 1.20832 1.32943 1.47424 1.65625 1.89376 2.21107 2.63968
column 10 to 11
|
3.21949 4.
--> f2=10.^(-2).*f1.*sin(N)
f2 =
column 1 to 8
0. 0.0010992 0.0024006 0.0039287 0.005741 0.0079405 0.010693 0.0142441
column 9 to 11
0.0189359 0.0252191 0.0336588
--> na1=newaxes();//создает оси
--> plot(na1,N,f1,'y-g');//чертит первую функцию относительно оси
--> na2=newaxes();//создает вторую ось с новым масштаб
--> na2.filled="off";//не создает дополнительное окно
--> plot(na2,N,f2,);//чертит вторую функцию на том же окне
--> na2.axes_visible(1)="off";
--> na2.y_location="right";//сдвигает ось вправо
1.5. Выполните задание 1.4, используя:
логарифмический масштаб по обеим осям;
логарифмический масштаб по оси абсцисс;
логарифмический масштаб по оси ординат.[U5]
//код 1
N=[0:0.1:1];
f1=N.^5+N.^3+N+1;
f2=10.^(-2).*f1.*sin(N);
na1=newaxes();
plot('ll',na1,N,f1,'colo','red','linest','-.','marker','>');//’ll’-логарифмический масштаб по обеим осям
красная штрихпунктирная линия и маркер- треугольник, указывающий вправо
na2=newaxes();
na2.filled="off";
plot('ll',na2,N,f2,'colo','blue','linest','--','marker','+');//’colo’-цвет, ‘linest’-тип линии, ‘marker’-
маркер, синяя штриховая линия и маркер- плюс
na2.axes_visible(1)="off";
na2.y_location="right";
Рисунок 3 логарифмический масштаб по обеим осям
plot('ln',na1,N,f1,'colo','black','linest','-.','marker','P');//в предыдущем коде ‘ll’ заменяем ’ln’-
логарифмический масштаб по оси абсцисс, черная линия штрих пунктиром и маркер- пентаграмма
plot('ln',na2,N,f2,'colo','green','linest','-','marker','D');//зеленная сплошная линия и маркерромб
Рисунок 4 логарифмический масштаб по оси абсцисс
plot('nl',na1,N,f1,'colo','pink','linest','-','marker','*');//в коде 1 заменяем ‘ll’ на ‘nl’-
логарифмический масштаб по оси ординат, розовая сплошная линия и маркер- звездочка
|
plot('nl',na2,N,f2,'colo','gray','linest',':','marker','x');//серая пунктирная линия и маркер- крест
Рисунок 5 логарифмический масштаб по оси ординат
1.6. Сформируйте матрицу и вектор размерами соответственно не менее 5x6
и 1x7, первыми элементами которых является Ваш номер по списку в
журнале группы. Постройте графики вектора и матрицы. Примечание:
воспользуйтесь функциями Matplot и colorbar().
--> P=[2,3,4,5,6,7;2,3,4,5,6,7;2,3,4,5,6,7;2,3,4,5,6,7;2,3,4,5,6,7;]//матрица 5x6
P =
2. 3. 4. 5. 6. 7.
2. 3. 4. 5. 6. 7.
2. 3. 4. 5. 6. 7.
2. 3. 4. 5. 6. 7.
2. 3. 4. 5. 6. 7.
--> M=[2,3,4,5,6,7,8;]//вектор с размером 1x7
M =
2. 3. 4. 5. 6. 7. 8.
--> Matplot(P)// Matplot является листом иерархии графических функций. Он
представляет 2D-графики поверхности с использованием цветов и изображений. К
каждому цвету соответствует определенное число реализация матрицы Р
Рисунок 6 график матрицы5x6
--> colorbar//реализует цветную столбиковую диаграмму
--> Matplot(M)//реализация вектора М
Рисунок 7 график вектора М
--> colorbar//реализация вектора М