Добавлен: 29.11.2023
Просмотров: 43
Скачиваний: 5
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра микро- и наноэлектроники
Курсовая РАБОТА
по дисциплине «Информационные технологии»
Тема: Применение программной среды MATLAB для решения инженерной задачи
Студентка гр. 2205 | | Григоренко М.С. |
Преподаватель | | Ситков Н.О. |
Санкт-Петербург
2022
ЗАДАНИЕ
на курсовую работу
Студентка Григоренко М.С. | ||
Группа 2205 | ||
Тема работы: Применение программной среды MATLAB для решения инженерной задачи. | ||
Исходные данные: Результатом выполнения задания должны быть блок-схема программы и рабочая программа с комментариями в тексте. При выполнении программы на экран компьютера должны выводиться следующие данные: - имя студента, выполняющего работу, номер его учебной группы; - исходные данные программы (заданные функции, рабочий интервал); - графическое изображение заданных функций в требуемом диапазоне. Определить, какие из данных функций x^2 -1, sqrt(x), cos(x) будут пересекаться на интервале [a;b] и сколько раз. Интервал задается пользователем с клавиатуры при работе программы. Координатное значение определяется с заданной точностью ( 0.001 ). Отобразить графически данные кривые в заданном диапазоне, включая точку пересечения. | ||
Содержание пояснительной записки: Требуемые разделы пояснительной записки: «Содержание», «Постановка задачи», «Алгоритм решения», «Текст программы», «Листинг результатов», «Вывод». | ||
Студентка | | Григоренко М.С. |
Преподаватель | | Ситков Н.О. |
содержание
| Введение | 4 |
| | 5 |
| | 6 |
3. Текст программы | | 8 |
4. Листинг результатов | | 11 |
| Заключение | 12 |
| Список использованных источников | 13 |
введение
Цель курсовой работы заключается в написании блок-схемы программы и рабочей программы с комментариями в тексте, вводящими в суть ее содержания.
Курсовая работа предполагает выполнение следующих задач:
-
Изучение функций программы MATLAB, необходимых для выполнения задания; -
Выбор метода, оптимального для решения конкретной инженерной задачи ; -
Оформление блок-схемы, структурирующей алгоритм будущей программы ; -
Написание текста программы, основанное на полученных знаниях о синтаксисе и функциях MATLAB; -
Обработка результатов, полученных на основе выполнения программы; -
Оформление пояснительной записки, раскрывающей детали, которые следовало учесть при выполнении курсовой работы; -
Иллюстрирование результатов с использованием графиков, выполненных в программах Excel и MATLAB, а также при помощи презентации
Для выполнения поставленных задач использовались теоретический метод изучения научной литературы, метод синтеза, анализа, сравнения и систематизации полученной информации.
-
выбор метода
Выполнение задания предусматривает работу с программой MATLAB.
Matlab (Matrix Laboratory) представляет собой мощный математический пакет со своим языком программирования, гибкими графическими возможностями, средствами сопряжения с другими языками и несколькими десятками пакетов приложений.
Для выполнения задания используется метод деления отрезка пополам (он же метод бисекции и метод последовательного приближения) - это наиболее простой численный метод для решения нелинейных уравнений вида f(x) = 0.
Он основан на теореме о промежуточных значениях, следствие из которой гласит, что при поиске нуля функции на концах некоторого отрезка должны быть значения разных знаков.
Метод представляет собой следующий алгоритм:
1) выбранный отрезок разделяется пополам;
2) рассматривается та из половинок, на концах которой функция все еще принимает значения, противоположные по знаку, и, если серединная точка оказывается искомым нулем, то процесс заканчивается;
3) если серединная точка не оказывается нулем, алгоритм следует продолжать до тех пор, пока длина отрезка не станет меньше значения требуемой в задании точности.
2. АЛГОРИТМ РЕШЕНИЯ
3. ТЕКСТ ПРОГРАММЫ
clc;
clear all;
close all;
disp('Определение того, какие из функций будут пересекаться на заданном с клавиатуры интервале и сколько раз');
a = input('Введите левую границу интервала a = ');
b = input('Введите правую границу интервала b = ');
disp(['Заданный интервал [' num2str(a) ';' num2str(b) ']']);
% y1=x^2-1 и y2=sqrt(x);
x=a; % начало интервала
dx=0.001; % шаг
p1=0; % идентификатор пересечения
dy2=0; % разность функций
while x
y1=x^2-1;
y2=sqrt(x);
dy1=y2-y1; % разность функций
if dy1*dy2<0 % идентификация пересечения
p=1;
end;
dy2=dy1;
x=x+dx;
end;
if p1==0
disp('Функции y1=x^2-1 и y2=sqrt(x) не пересекаются');
else disp(['Функции y1=x^2-1 и y2=sqrt(x) будут пересекаться на интервале [' num2str(a) ';' num2str(b) ']' num2str(p1) 'раз']);
end;
% y1=x^2-1 и y3=cos(x);
x=a;
dx=0.001;
p2=0;
dy2=0;
while x
y1=x^2-1;
y3=cos(x);
dy1=y3-y1;
if dy1*dy2<0
p2=1;
end;
dy2=dy1;
x=x+dx;
end;
if p2==0
disp('Функции y1=x^2-1 и y3=cos(x) не пересекаются');
else disp(['Функции y1=x^2-1 и y3=cos(x) будут пересекаться на интервале [' num2str(a) ';' num2str(b) ']' num2str(p2) 'раз']);
end;
% y2=sqrt(x) и y3=cos(x);
x=a;
dx=0.001;
p3=0;
dy2=0;
while x
y2=sqrt(x);
y3=cos(x);
dy1=y3-y2;
if dy1*dy2<0
p3=1;
end;
dy2=dy1;
x=x+dx;
end;
if p3==0
disp('Функции y2=sqrt(x) и y3=cos(x) не пересекаются');
else disp(['Функции y2=sqrt(x) и y3=cos(x) будут пересекаться на интервале [' num2str(a) ';' num2str(b) ']' num2str(p3) 'раз']);
end;
x=a:0.001:b; % задание массива для построения графика
plot(x, (x.^2)-1, x, sqrt(x), x, cos(x)); % построение графика
legend ('y1=x^2-1', 'y2=sqrt(x)', 'y3=cos(x)'); % легенда графика
disp('Программу выполнила студентка группы 2205 Григоренко М.С');
4. лИСТИНГ РЕЗУЛЬТАТОВ
Построение графиков в Excel
Построение графиков в MATLAB
заключение
В результате выполнения курсовой работы была составлена блок-схема программы, а также написана рабочая программа с комментариями в тексте, описывающими ее содержание. Графики, выведенные в результате работы программы в MATLAB, совпали с графиками, построенными в Excel на том же интервале, что подтверждает правильность выполнения задания.
список использованных источников
file:///Задания_курсовая_Матлаб_2022.pdf
https://youtu.be/WlZgzgQZ5K4
file:///Методичка_курсовик_ИТ_2010.pdf
https://ww2.mathworks.cn/help/matlab/matlab_prog/matlab-operators-and-special-characters.html
file:///Применение программной среды MATLAB для решение инженерной задачи
0>