Построение графиков функций в MATLAB/Scilab. Скрипты и функции




Министерство науки и высшего образования

Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

Высшего образования

«Московский государственный технологический университет «СТАНКИН»

(ФГБОУ ВО «МГТУ «СТАНКИН»)

 

 

Институт автоматизации и робототехники

 

Кафедра робототехники и мехатроники

 

Дисциплина «Пакет прикладных программ 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";//сдвигает ось вправо

 
 
Рисунок 2 отображение двух осей с разными масштабами

 

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//реализация вектора М

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-07-11 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: