Министерство науки и высшего образования Российской Федерации
Федеральное государственное автономное образовательное учреждение высшего образования
КАЗАНСКИЙ (ПРИВОЛЖСКИЙ) ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ
Институт Вычислительной математики и информационных технологий
ОТЧЕТ ПО УЧЕБНОЙ ПРАКТИКЕ
(Научно-исследовательская работа (получение первичных навыков научно-исследовательской работы))
Обучающийся _Сидоров Никита Фёдорович_ _гр.09-111 _ _____________
(ФИО студента) (Группа) (Подпись)
Руководитель практики
от кафедры __доцент КТК Байрашева В.Р._____________________
Оценка за практику ______________________ __________________
(Подпись)
Дата сдачи отчета ____28.12.2021___________________
Казань – 2021
Введение
Учебная практика (научно-исследовательская работа) проходила с 1 сентября по 28 декабря 2021 года на базе кафедры теоретической кибернетики Института Вычислительной Математики и Информационных Технологий Казанского(Приволжского) федерального университета. Целью учебной практики является приобретение новых и закрепление уже имеющихся знаний и практических навыков.
За время практики предполагается освоение следующих компетенций:
ПК-1: Способен осуществлять проведение работ по обработке, анализу научно-технической информации и результатов исследований
ПК-2: Способность к реализации и поддержанию на должном уровне функционирования математических моделей и методов в применении к прикладным и теоретическим задачам.
ПК-3: Разработка, адаптация и применение математических методов и моделей для решения вычислительных задач.
ПК-4: Владение информационными технологиями на уровне необходимом для решения профессиональных задач.
Основная часть
Во время практики были пройдены следующие темы:
1. «Разложение ряда»;
2. «Функция»;
3. «метод Гаусса на C++»;
4. «метод Крамера на C++».
Мы освоили метод математического разложения ряда при вычислениях сложных функций и научились применять его при написании программ. Также мы изучили, как правильно разделять программу - в частности, когда в программе много повторяющихся операций – их не обязательно писать каждый раз заново, ведь можно выделить этот участок кода как функцию и затем вызывать её, там где это необходимо, тем самым повышая читаемость кода. Мы поняли, что очень полезным является правильное название для функций, чтобы каждый, кому необходимо ознакомиться с нашей программой мог понять, какую функцию она выполняет. В дополнение к этому мы учились применять знания, полученные в других дисциплинах, в программировании. Метод Крамера и метод Гаусса – являются очень полезными инструментами при решении систем уравнений, но написание программ выполняющих их функцию нетривиальная задача. Для этого было необходимо изучить алгоритм, составить свой и перенести его в программу, при этом разделив отдельные операции на функции.
По каждой теме предоставлены задачи, способствующие закреплению пройденного материала. Труднее всего было составить алгоритм и разделить на функции метод Крамера, поскольку не сразу было понятно как, к примеру, вычислять определитель, так чтобы при дальнейшем увеличении программы использовать уже созданный алгоритм, а не переписывать все заново. Я решил высчитывать определители с помощью миноров, которые являются составной частью матрицы и их можно считать довольно просто – доходя до такого минора, посчитать который несложная задача.
Мое индивидуальное задание включало три задачи: 1.Разложение в ряд функции
2.Реализация метода Гаусса при решении систем уравнений; 3. Реализация метода Крамера при решении систем уравнений. Каждая из задач была проработана в должной мере, помогая закрепить пройденный материал, а также усвоить методы программирования.
Цель задачи 1 - Вычислить и напечатать значения функции y = f (x) в точках x1, x2,…, xn, представляя функцию в виде ряда (без обращения к стандартным подпрограммам). Числовые данные:
|
|
n
|
x1
|
x2
|
x3
|
x4
|
x5
|
x6
|
ж)
|
0,025
|
5
|
-0.63
|
-0.35
|
-0.12
|
0.35
|
0.57
|
-
|
Пояснение к решению:
Ж)
1) Для решения данной задачи я сначала посчитал добавок:
Обозначим выражение 0.7x+0.01x2= y
Тогда
Я подставил в формулу высчитывания суммы вместо x значение y. Тогда получаем:
Приступим непосредственно к высчитыванию добавка. Для этого поделим текущее значение на предыдущее:
: =
Найдем значения функции при i = 0, t = y/1 = y;
Первое значение суммы при i = 0, result_1 = t;
В задаче по написанию программы для Метода Гаусса. Он включает в себя две стадии 1) последовательное исключение (прямой ход) и 2) обратную подстановку (обратный ход). Последовательное исключение основано на идее последовательного исключения переменных по одной до тех пор, пока не останется только одно уравнение с одной переменной в левой части. Затем это уравнение решается относительно единственной переменной. А решение этого уравнения применяется для предыдущих уравнений – с двумя неизвестными, затем с тремя и т.д.
Для задачи программной реализации метода Крамера при решении систем линейных уравнений, удобно было написать функции для вычисления определителя системы и также определителя отдельных неизвестных. А затем просто найти неизвестные используя метод Крамера – делением определителей отдельных неизвестных на определитель системы.
Ознакомиться с кодами решения данных задач можно в Приложении.
В процессе выполнения вышеописанных задач у меня не возникало серьёзных трудностей. При появлении вопросов всегда можно было обратиться к преподавателю и получить понятный и доступный ответ по электронной почте или с помощью платформы MicrosoftTeams.
В целом, я доволен результатом практики. Учебный процесс проходил интересно, в понятной и доступной форме, а налаженная система работы на платформе MicrosoftTeams обеспечила высокую эффективность обучения. Темы, пройденные во время практики, а также полученные навыки написания программ, обязательно пригодятся в следующем семестре, а также послужат фундаментом для новых знаний.
Do'stlaringiz bilan baham: |