Файл: Пермский национальный исследовательский политехнический университет Аэрокосмический факультет кафедра Авиационные двигатели.docx

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

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

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

Добавлен: 12.01.2024

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

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

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

Министерство образования и науки Российской Федерации

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

высшего профессионального образования
«Пермский национальный исследовательский

политехнический университет»

Аэрокосмический факультет

кафедра «Авиационные двигатели»

Специальность 24.05.02 (160700)

«Проектирование авиационных и ракетных двигателей».
О Т Ч Е Т

по практическим занятиям по дисциплине

ИНЖЕНЕРНО-ВЫЧИСЛИТЕЛЬНЫЕ ТЕХНОЛОГИИ

Выполнили студенты гр.АД-19-1С

___________________________________________

(подпись)

Проверил:


_____ст. преподаватель кафедры КОНЕВ И.П.________

(должность, Ф.И.О. преподавателя)

___________ _________________________

(оценка) (подпись)

_____________

(дата)

Пермь 2021

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

Простейшие вычисления

ЗАДАНИЕ 1:

а) вычислить значение функции y =f(x) в точке х0

(вар 4)

х0 =4,21

хn =7,6

>> x=4.21;

>> y=1/(x*(1-log(x)))-2

y = -2.5430

б) простроить график функции y =f(x) используя встроенную функцию MatLab poly(x,y) на интервале от х0 до хn , шаг аргумента x определить самостоятельно
>> x=4.21:0.01:7.6;

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

y = -2.5430 -2.5388 -2.5346 -2.5305 -2.5265 -2.5225 -2.5186

>> plot(x,y)



Рис.2 График функции

Вывод: MatLAB позволяет вычислять значение функции y =f(x) в точке х0 и строить графики с помощью встроенной функции poly(x,y).

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

Символьные вычисления в MatLab
ЗАДАНИЕ 1:

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



>> [x]=solve('1/(x+3)+(x+8)/(2*x^2-18)=1/(3-x)-1')

x =105^(1/2)/4 - 5/4

- 105^(1/2)/4 - 5/4

ЗАДАНИЕ 2:

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



>> [ x, y ] = solve ('x^2-x*y=12-y^2', 'x-2*y=6')

x = 2, -2

y = -2, -4

ЗАДАНИЕ 3:
Упростить выражения, используя команду simplify:



>> syms c

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

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

>> simplify(p)

ans = (c^2 - 4)/(3*c)

ЗАДАНИЕ 4:

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



>> syms k x

>> s=symsum((2*k)-1)^2/2^k/k, 3,10)

>> s=symsum((2*k-1)^2/2^k/k, 3,10)

s = 195155/64512

ЗАДАНИЕ 5:

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



>> syms x

>> y=1/sqrt(9+x^2)

y =1/(x^2 + 9)^(1/2)

>> diff(y)

ans = -x/(x^2 + 9)^(3/2)

ЗАДАНИЕ 6:

Используя функцию int, подготовить и организовать вычисление определенного интеграла:



Подынтегральная функция f(x) определена и непрерывна на интервале a <= x <= b.



>> syms x a b

>> int(1/sqrt(9+x^2),0,2)

ans = log(13^(1/2)/3 + 2/3)

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

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

Высокоуровневая графика в MatLAB

Цели работы:

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

Для выполнения данной лабораторной работы необходимо уметь работать с массивами — вектора­

ми и матрицами, понимать выполнение поэлементных операций с массива­ми.

Задание 1.

Построить графики функций. Использовать функцию plot. Нужно самостоятельно задать шаг и диапазон изменения аргумента

y = x^ 2 – 4 ;

y = x ^4 - 4x ^2 ;

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

1)x= 3;

>> y= x^2 -4

y = 5

>> x = -10 : 0.05 :10 ;

>> y= x.^2 -4

y = plot(x,y)

Рисунок 1: График функции y = x^ 2-4



2) x= 5;

>> y= x^4 - 4*x^2

y = 525

>> x = -10 : 0.05 : 10 ;

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

y =plot(x,y)

Рисунок 2: График функции y= x^4- 4*x^2



3) x = 5;

>> y = sin(x)-log10(x)

y = -1.657894278999157

>> x= -10 :0.05 : 10;

>> y= sin(x)-log10(x)

y = plot(x,y)

Рисунок 3: График функции y = sin(x)-log10(x)

Задание 2.

Построить кривые, заданные параметрически. Использовать функцию plot.

Уравнение кривой: x (t) = t – sin (t) , y (t) = 1- cos (t)

постройте эту кривую при t, изменяющимся в диапазоне [-π;π].

постройте эту кривую при t, изменяющимся в диапазоне [0;2π].

a)

t = -pi:0.1:pi;

>> x = 1-sin(t);

>> y = 1- cos(t);

plot (x,y), grid, set(gcf,'color', 'white')



Рисунок 4: График функции x (t) = t – sin (t) , y (t) = 1- cos (t) [-π;π]



b)

Рисунок 5: График функции x (t) = t – sin (t) , y (t) = 1- cos (t) [0;2π]

Задание 3.

Построить кривые, заданные в полярной системе координат в диапазоне [0; 2π].

Использовать функцию polar.

– кривая задана уравнением r = 1 + sin (t).

– кривая задана уравнением r = 1 + cos (2t).

t = 0:0.1:2*pi;

r = 1+sin(t);

polar(r,t), grid, set(gcf,'color', 'white')



Рисунок 6: График функции r = 1 + sin (t) [0;2π]

t = 0:0.1:2*pi;

r = 1+cos(2*t);

polar(r,t), grid, set(gcf,'color', 'white')

Рисунок 7: График функции r = 1 + cos (2t) [0;2π]

Задание 4.

Построить графики трёхмерных поверхностей. Использовать функции
meshgrid, plot .

– график трёхмерной поверхности, описываемый функцией

– график трёхмерной поверхности, описываемый функцией z = y2 - x2.

1) [X, Y] = meshgrid(-1:0.05:1, 0:0.05:1);

Z = sqrt(abs(X))-sqrt(abs(Y));

m esh(X, Y, Z)

Рисунок 8: График трёхмерной поверхности

2) [X, Y] = meshgrid(-1:0.05:1, 0:0.05:1);

Z = X.^2-Y.^2;

mesh(X, Y, Z)



Рисунок 9: График трёхмерной поверхности z = y2 - x2

Задание 5.

Построить в декартовой системе координат график вектора с комплексными элементами

у = sin x + i *cos x в диапазоне [0; 2 π], используя функцию plot.

x= 0: 0.05 : 2*pi;

>> y = sin(x) + i *cos( x )

y = plot(x,y)

Рисунок 10: График функции у = sin x + i *cos x [0;2π]

Задание 8. Постройте два графика в рамках одних осей координат:

для

Сделайте надписи на осях, заголовок для графика, пояснительную надпись на рисунке задайте тип линий и цвет.

x=0:0.05:4*pi;

>> z = atan(x.^(1/2));

>> y=exp(-x.^2); z = atan(x.^(1/2));

>> plot(x,y,x,z),grid

>> title('Функции y = y=exp(-x^2) и z = atan(x^(1/2)) ');

>> xlabel('ось X'); ylabel('ось Y');



Рисунок 11: Графики функций y=exp(-x.^2); z = atan(x.^(1/2)) в одних осях

Задание 9. Построить графики функций y(x) и z(x) в разных подобластях одного графического окна. Интервалы изменения для х определите самостоятельно.

x1=0:0.05:2*pi;

>> z = atan(x1.^(1/2));

>> x2=0:0.05:4*pi;

>> y=exp(-x2.^2);

>> plot(x1,z,x2,y)



Рисунок 12: Графики функций y=exp(-x.^2); z = atan(x.^(1/2)) в разных подобластях

Задание 10. Постройте поверхность с использованием функции mesh

, где


>> [x,y] = meshgrid(1:0.1:2, -5:0.1:5)

>> z = log(x.^2+y.^2-x.*y)

>> mesh(x, y, z); xlabel('x'); ylabel('y'); zlabel('z')



Рисунок 13: График трёхмерной поверхности z = log(x.^2+y.^2-x.*y)

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

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

Решение типовых задач алгебры и анализа

Создание процедур (файлов-функций) в среде MatLAB

Цель работы:

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

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



function [ y ] = func( x )

%Вычисляет значение функции

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

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

end

fplot(‘func’, [-1,0], 0.1, 1), grid, title(‘График функции “ y=cos(pi*x^2)/sqrt(1-3*x) “’);

>> x=-1:0.1:0;

>> y=func(x);

>> int=trapz(x,y)

int = 0.3257

>> x=-1:0.1:0;

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

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

>> y=func(x);

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

xmin = -0.9903

ymin = -0.5009

function [ y ] = func( x )

%Вычисляет значение функции

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

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

end

>> x=-1:0.1:0;

>> y=funca(x);

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

>> [xmax,ymax]=fminsearch(@funca,-1)

xmax = -1.4105

ymax = -0.4370

>> x=-1:0.1:0;

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

>> y=func(x);

>> plot(x,y), grid

>> x1=fzero(@func,-0.8)

x1 =-0.7071



Рисунок 1: График функции y=cos(pi.*x.^2)./sqrt(1-3*x)

Рисунок 2: График функции y=cos(pi.*x.^2)./sqrt(1-3*x)

Задание №2