Файл: Лабораторная работа 1 графический интерфейс пользователя и простейшие вычисления цели работы.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 04.02.2024

Просмотров: 49

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Лабораторная работа №1

ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ И ПРОСТЕЙШИЕ ВЫЧИСЛЕНИЯ

Цели работы:

1. Знакомство с интерфейсом пакета MATLAB и основными положениями.

2. Знакомство с простыми типами данных, вводом данных и визуализацией результата вычислений.

3. Получение практических навыков работы в диалоговом режиме.

4. Работа с комплексными числами и комплексными функциями.

ЗАДАНИЕ 1:
а) вычислить значение функции y =f(x) в точке х0
б) простроить график функции y =f(x) используя встроенную функцию MatLab poly(x,y) на интервале от х0 до хn , шаг аргумента x определить самостоятельно



Порядок выполнения задания:
1 написание программы
2 построение графика
3 оформление отчета

Вариант № 2

а)

>> x = 2.75;

>> y = (x^2 - 1)/log(x^2 - 1) + x

y = 6.2381

б)

>> x = 2.75:0.26:4.2;

>> y = (x.^2 - 1)/log(x.^2 - 1) + x

>> plot(x, y)



Рисунок 1 График функции y = (x^2 - 1)/log(x^2 - 1) + x

Вариант №10

а)

>> x=1.23;

>> y=sqrt(x)-1-cos(0.5*x)

y = -0.7077

б)

>> x=1.23:0.5:12.0;

>> y=sqrt(x)-1-cos(0.5*x)

y =

Columns 1 through 18

-0.7077 -0.3333 0.0531 0.4479 0.8414 1.2213 1.5744 1.8882 2.1514 2.3557 2.4956 2.5694 2.5789 2.5298 2.4313 2.2951 2.1353 1.9673

Columns 19 through 22

1.8066 1.6684 1.5662 1.5111

>> plot(x,y)



Рисунок 2 График функции y=sqrt(x)-1-cos(0.5*x)

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

Лабораторная работа № 2

СИМВОЛЬНЫЕ ВЫЧИСЛЕНИЯ В MATLAB

Цели работы:

1. Знакомство с основными положениями пакета символьных вычислений Symbolic Math Toolbox

2. Работа с символьными переменными, матрицами, математическими выражениями.

3. Освоение символьных аналитических вычислений – упрощение выражений, решение алгебраических уравнений, решение системы линейных уравнений, вычисление суммы ряда.

4. Освоение символьного интегрирования и символьного дифференцирования.

5. Получение практических навыков работы в диалоговом режиме.

ЗАДАНИЕ 1:

Решить алгебраические уравнения, используя команду solve:

Вариант №А

x = sym('x')

solve(1/(x-3)+(x + 8)/(2*x^2 - 18) == 1/(3-x) - 1)

x =

x

ans =-2 -1/2
Вариант №Б

x = sym('x')

solve(x/(x-1)+(x+1)/(x+3)==1/(x^2+2*x-3))

x =

x

ans = -2 ½

Вариант №С

x = sym('x')

solve(1+6/(x-1)==(5-2*x)/(x-7))

x =

x

ans = -2 5

ЗАДАНИЕ 2:

Решить систему алгебраических уравнений, используя команду solve. Выбрать уравнение согласно своему варианту.





Вариант 2

syms x y

>> [Sx, Sy] = solve((x - 6)/2 - (y + 1)/3 == 1, (2 - y)*4 + (x - 1)/2 == 2)

Sx =

115/11

Sy = 59/22

Вариант 15

>> syms x y

[Sx, Sy] = solve(x+y==3, x^2+3*x*y+y^3-x-y==2)

Sx =

3 - root(z^3 - 2*z^2 + 3*z + 4, z, 1)

3 - root(z^3 - 2*z^2 + 3*z + 4, z, 2)

3 - root(z^3 - 2*z^2 + 3*z + 4, z, 3)

Sy =

root(z^3 - 2*z^2 + 3*z + 4, z, 1)

root(z^3 - 2*z^2 + 3*z + 4, z, 2)

root(z^3 - 2*z^2 + 3*z + 4, z, 3)

ЗАДАНИЕ 3:

Упростить выражения, используя команду simplify:



Вариант №А

>> syms p c

>> simplify(p == ((c/(c - 2) - c/(c + 2) - (c^2 + 4)/(4 - c^2))*((2 - c)^2/(2*c + c))))

ans =

3*c*p == c^2 – 4

Вариант №Б

>> syms p c

simplify(p == ((1/((x-1)*(x-3))+1/((x-3)*(x-5))+1/((x-5)*(x-7)))))

ans =x

= 3 & x = 5 & 3*x^2 - 24*x + 45 == p*(x - 1)*(x - 3)*(x - 5)*(x - 7)

Вариант №С

syms p c

simplify(p == (((3*x-3*x/(x-4))/(x-(6*x-25)/(x-4)))))

ans =25*p + 3*x - 10*p*x + p*x^2 == 3*x*(x - 4) & x = 5


ЗАДАНИЕ 4:

Вычислить сумму ряда, используя команду symsum. Выбрать уравнение согласно своему варианту.



Вариант №2

syms s k n

[s] = symsum((-1)^k/(3*k + 1)*(2^k), 1, 6)

s =32343/17290

Вариант №15

syms s k n

[s] = symsum(((2*k-1)/k^2),2,9)

s =19801619/6350400

ЗАДАНИЕ 5:

Вычислить производную функции по х, используя команду diff. Выбрать функцию согласно своему варианту.



Вариант №2

>> syms x

>> diff(log(x).^2/x)

ans =(2*log(x))/x^2 - log(x)^2/x^2

Вариант №15

syms x

diff(x/(x^4+3*x^2+2))

ЗАДАНИЕ 6:

Используя функцию int, подготовить и организовать вычисление определенного интеграла: Подынтегральная функция f(x) определена и непрерывна на интервале a <= x <= b. Вид подынтегральной функции f(x), а также интервал интегрирования [a, b] определяется номером варианта



Вариант №2

syms x

>> int(log(x).^2/x,1,4)

ans =

log(4)^3/3

Вариант №15

syms x

int(x/(x^4+3*x^2+2),1,2)

ans =log(5^(1/2)/2)

ВЫВОД: В ходе работы было ознакомлено с основными положениями пакета символьных вычислений Symbolic Math Toolbox, работа с символьными переменными, матрицами, математическими выражениями, освоение символьных аналитических вычислений – упрощение выражений, решение алгебраических уравнений, решение системы линейных уравнений, вычисление суммы ряда, освоение символьного интегрирования и символьного дифференцирования, получение практических навыков работы в диалоговом режиме.

Лабораторная работа №3

ВЫСОКОУРОВНЕВАЯ ГРАФИКА MATLAB

Цели работы:

1. Знакомство с основными возможностями высокоуровневой (high-level) графики MATLAB для отображения функций двух и трѐх переменных, визуализации векторных и матричных данных и векторных полей.



ЗАДАНИЕ 1



Вариант №1

>> x = -10:1/100:10;

y = x.^2-4;

plot(x,y)

Вариант №2

x = -10:1/100:10;

y = x.^4 - 4*x.^2 ;

plot(x,y)

Вариант №3

>> x = -10:1/100:10;

y = sin(x) + log(x);

plot(x,y)

ЗАДАНИЕ 2

Вариант №1

>> t = -pi:0.1:pi; x = t - sin (t);

y = 1- cos (t);

plot(x,y)

title('Параметрическая функция x = t - sin (t) y = 1- cos (t) ')



Рисунок 3 График функции

Вариант №2

t = 0:0.1:2*pi;

x = t - sin (t);

y = 1- cos (t);

plot(x,y)

title('Параметрическая функция x = t - sin (t) y = 1- cos (t) ')



Рисунок 4 График функции

ЗАДАНИЕ 3

Вариант №1

r = 0:1/100:2*pi;

r = 1 + sin (t);

polar(r)



Рисунок 5 График функции

Вариант №2

r = 0:1/100:2*pi;

r = 1 + cos(2*t);

polar(r)



Рисунок 6 График функции

ЗАДАНИЕ 4

Вариант №1

[x, y] = meshgrid(-1:0.05:1, 0:0.05:1);

z = sqrt(abs(x))-sqrt(abs(y));

mesh(x, y, z)



Рисунок 7 График функции

Вариант №2

[x, y] = meshgrid(-1:0.05:1, 0:0.05:1);

z = y.^2-x.^2;

mesh(x, y, z)



Рисунок 8 График функции

Вывод:

Мы узали основные возможности высокоуровневой (high-level) графики MATLAB для отображения функций двух и трёх переменных, визуализации векторных и матричных данных и векторных полей.

Лабораторная работа № 4.

МЕТОДЫ ОБРАБОТКИ ЭКСПЕРИМЕНТАЛЬНЫХ ДАННЫХ.

Цель:

Целью лабораторной работы является изучение простых приемов языка программирования среды MatLAB. Основной задачей ставится изучение типовых конструкций языка, таких как функции, условия и циклы..

ЗАДАНИЕ 1:

Создать m-файл, вычисляющий значения функции f(x) на отрезке [-1; 0.1] с шагом h 0,1.. Построить график этой функции с помощью процедуры fplot в границах, заданных в задании. Вычислите интеграл от функции в тех же пределах, используя встроенные функции. Найдите экстремумы и ближайший корень (нуль) функции.




Задаём функцию

function [y] = Fun331(x)

y = ((x.^3-0.3.*x)/sqrt(1+2.*x));

окно

fplot('Fun331', [-1 0], 0.1),grid



Рисунок 9 Полученный график

-------------------------------

интеграл

>> x= -1:0.1:0;

>> y = @Fun331

y = function_handle with value:

@Fun331

>> J1 = trapz(x)

J1 = -5

------------

>> x=-1:0.1:0; /////ближайший мин

y = (cos (pi*x.^2))/(sqrt(1-3*x));

plot(x,y,'-k'), grid

>>

>> y=Fun314(x);

Undefined function or variable 'Fun314'.

Did you mean:

>> y=Fun331(x);

>> [xmin,ymin]=fminsearch(@Fun331,-1)

xmin = -0.9903

ymin = -0.5009

>> y=Fun331(x);

>> [xmin,ymin]=fminsearch(@Fun331,0)

xmin = -0.9903

ymin = -0.5009

>>

-----------------------------------------------

[y,fval] = fminsearch(@(x) ((cos (pi*x.^2))/(sqrt(1-3*x))), [-1,0]) \\\\\\\ экстремум

Exiting: Maximum number of function evaluations has been exceeded

- increase MaxFunEvals option.

Current function value: -0.416387

y = -1.0223 0.3068

fval = -0.4164

>>

-------------------

fplot('Fun332', [2 4], 0.2),grid

function [y] = Fun332(x)

y = sqrt(3*x.^2+5)*sin((3*x)/2)

end

Вывод: Нами были изучены простые приёмы языка программирования MatLab.

Лабораторная работа № 5

МЕТОДЫ ОБРАБОТКИ ЭКСПЕРИМЕНТАЛЬНЫХ ДАННЫХ

Цель работы:

1. Изучить Curve Fitting Toolbox

ЗАДАНИЕ 1:

1.Получить у преподавателя файл с исходными данными (.txt, xls)

2. Выполнить операцию экспорта исходных данных в глобальные массивы (вектора) рабочей среды MATLAB.

3. В приложении cftool выполнить приближение данных, при помощи параметрических моделей из библиотеки моделей, или заданных пользователем.

4. Произвести качественную и количественную оценку пригодности выполненного приближения.

5. В отчете о выполненной работе должны быть приведены результаты минимум четырех вариантов приближения



Рисунок 10 Макет графика



Рисунок 11 График построенный с помощью Polynomial



Рисунок 12 График построенный с помощью Exponential




Рисунок 13 График построенный с помощью Fourier

Вывод:

При проверке создания графика различными методами в MatLab. Был выявлен наиболее качественный метод построения графика, Fourier.