11.03.04_28.03.01_12.03.02_12.05.01_fti_curs_c_2012 (Методические документы), страница 3
Описание файла
Файл "11.03.04_28.03.01_12.03.02_12.05.01_fti_curs_c_2012" внутри архива находится в папке "Методические документы". PDF-файл из архива "Методические документы", который расположен в категории "". Всё это находится в предмете "абитуриентам" из 1 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "абитуриентам" в общих файлах.
Просмотр PDF-файла онлайн
Текст 3 страницы из PDF
уравнений вида (13)) состоит в том, чтобы, используя разбиение по времени с шагом t,выразить значения скорости и координаты точки через значенияскорости, координаты и ускорения в предыдущий момент20времени. Таким образом, решение дифференциального уравнениявторого порядка сводится к решению системы линейных алгебраических уравнений вида:vn 1 vn an ty n 1 y n v n Δt(17)(18)Здесь аналогично тому, как это делается в методе Эйлерадля дифференциального уравнения первого порядка, скорость вконечной точке интервала v n+1 вычисляется через производнуюскорости (скорость изменения скорости, т.е.
ускорение) a n в начальной точке этого интервала. Также, координата в конечнойточке интервала y n+1 вычисляется через скорость v n в начальнойточке этого интервала.Предложенный алгоритм численного решения дифференциального уравнения второго порядка не является единственным. Вчастности, можно вычислять координату через скорость не в начальной точке интервала, а в конечной (аппроксимации по последней точке):(19)v n 1 v n a n Δt(20)y n 1 y n v n 1ΔtЭтот метод численного решения дифференциального уравнения был проанализирован Кромером и носит название методаЭйлера-Кромера.5 Задания для выполнения второй части курсовой работы.Реализация алгоритмов Эйлера и Кромерав программах С++ для моделирования задач о падении тел5.1 Для проверки правильности кода программы численногорешения сначала получите данные моделирования, позволяющиесравнить их с известными аналитическими решениями.
Для этогорешите численно задачу о свободном падении тела без сопротивления воздуха.Пример кода программы для решения приведен нарисунке 8.21//Euler_2_1.1# include <iostream.h># include <stdio.h>/* эти глобальные переменные доступны их всехфункций и могут ими изменяться */double Mass_HeightE[1000];// величина изменения координаты тела относительно начального положения (моделирование), мdouble Mass_HeightA[1000];// величина изменения текущей координаты (точное решение), мdouble Mass_VitessE[1000];// величина текущей скорости (моделирование) м/секdouble Mass_VitessA[1000];// величина текущей скорости (точное решение) м/секdouble Mass_Accel[1000]; // величина текущегоускорение м/cек2double Mass_Time[1000]; // текущее время, секdouble Vitess_0=0.0;// начальная скорость,м/секdouble g=9.8;// ускорение свободного падения = 9,8 м/cек2double Height=15;// высота от поверхности земли, мdouble Period_T=1.6;// время падения, секdouble dt=0.1;// шаг по времени, секint n=int(Period_T/dt); // число шаговvoid init_F () // инициализация массивов{}for (int i=0; i<1000; i++){Mass_HeightE[i]=0.0;Mass_HeightA[i]=0.0;Mass_VitessE[i]=0.0;Mass_VitessA[i]=0.0;Mass_Accel[i]=g;Mass_Time[i]=0.0;Mass_HeightA[0]=Height;}Рисунок 8а – Фрагмент программы моделирования свободногопадения тела (определение переменных и их начальных значений).22void Euler_diff_2 (){for (int i=0; i<n; i++){Mass_Accel[i+1]=g;Mass_HeightE[i+1]=Mass_HeightE[i]+Mass_VitessE[i]*dt;Mass_VitessE[i+1]=Mass_VitessE[i]+Mass_Accel[i]*dt;Mass_Time[i+1]=Mass_Time[i]+dt;Mass_VitessA[i+1]=Vitess_0+g*Mass_Time[i+1];Mass_HeightA[i+1]=Height-(Vitess_0*Mass_Time[i+1]+0.5*g*Mass_Time[i+1]*Mass_Time[i+1]);}}void Euler_Kromer (){for (int i=0; i<n; i++){Mass_Accel[i+1]=g;Mass_VitessE[i+1]=Mass_VitessE[i]+Mass_Accel[i]*dt;Mass_HeightE[i+1]=Mass_HeightE[i]+Mass_VitessE[i+1]*dt;Mass_Time[i+1]=Mass_Time[i]+dt;Mass_VitessA[i+1]=Vitess_0+g*Mass_Time[i+1];Mass_HeightA[i+1]=Height-(Vitess_0*Mass_Time[i+1]+0.5*g*Mass_Time[i+1]*Mass_Time[i+1]);}}Рисунок 8б – Фрагмент программы моделирования свободногопадения тела (методы Эйлера и Эйлера-Кромера).23void Print_results_Euler_2 (){FILE* f=fopen("res_dif_2_E.txt","w");for (int i=0; i<n; i++){printf (" T[%2d]= %5.3f %5.3f %5.3f %5.3f%5.3f\n", i, Mass_Time[i], Height_0Mass_HeightE[i], Mass_HeightA[i], Mass_VitessE[i],Mass_VitessA[i]);fprintf (f, "%u %5.3f %5.3f %5.3f %5.3f%5.3f\n",i, Mass_Time[i], Height_0Mass_HeightE[i], Mass_HeightA[i], Mass_VitessE[i],Mass_VitessA[i]);}}void Print_results_Kromer (){FILE* f=fopen("res_dif_2_K.txt","w");for (int i=0; i<n; i++){printf (" T[%2d]= %5.3f %5.3f %5.3f %5.3f%5.3f\n", i, Mass_Time[i], Height_0Mass_HeightE[i], Mass_HeightA[i], Mass_VitessE[i],Mass_VitessA[i]);fprintf (f, "%u %5.3f %5.3f %5.3f %5.3f%5.3f\n",i, Mass_Time[i], Height_0-Mass_HeightE[i],Mass_HeightA[i], Mass_VitessE[i], Mass_VitessA[i]);}}int main (){init_F ();Euler_diff_2 ();Print_results_Euler_2 ();init_F ();Euler_Kromer ();Print_results_Kromer ();return 0;Рисунок 8в – Фрагмент программы моделирования свободногопадения тела (вывод результатов и главный модуль).24Результаты импорта расчетных данных в электронные таблицы и соответствующие графики - на рисунке 9.Рисунок 9 – Результаты решения задачи о свободном падении тела.Указание 1. Поскольку данные о координатах в разные моменты времени имеют одинаковый тип, то целесообразно выделить для их сохранения в программе упорядоченный по номерамобъем памяти, т.е.
сформировать массив. Аналогично следует поступить для сохранения значений скорости и текущего времени.Указание 2. Чтобы облегчить возможность модернизациипрограммы, процедуру определения координаты и скорости в определенный момент времени по алгоритму Эйлера или ЭйлераКромера целесообразно оформить как отдельную функцию.5.2 Модифицируйте программу предыдущего задания так,чтобы равнодействующая сила задавалась формулами (16). Опре-25делите, какая зависимость лучше всего согласуется с даннымиопыта, приведенными в таблице 3 и определите значение установившейся скорости. Импортируйте данные расчетов в электронные таблицы и постройте графики с данными расчетов и эксперимента (см.
рисунок 10).Таблица 3 – Экспериментальные данные о падении тел в воздухе.Время,131231331431531631731831мс№ вар.Величина смещения тела от начального положения, м0. 0.084 0.258 0.519 0.857 1.264 1.726 2.234 2.7801.0.07 0.18 0.30 0.42 0.55 0.67 0.79 0.922.0.08 0.20 0.34 0.49 0.64 0.78 0.93 1.083.0.08 0.24 0.45 0.67 0.97 1.24 1.52 1.814.0.08 0.25 0.48 0.76 1.07 1.40 1.75 2.1095.0.08 0.25 0.49 0.79 1.12 1.49 1.87 2.266.0.08 0.26 0.51 0.83 1.21 1.63 2.08 2.557.0.08 0.26 0.51 0.85 1.24 1.69 2.17 2.688.0.08 0.26 0.52 0.87 1.29 1.78 2.32 2.919.0.08 0.26 0.53 0.87 1.30 1.79 2.34 2.9310.
0.08 0.26 0.53 0.88 1.31 1.81 2.37 2.9911. 0.08 0.26 0.53 0.88 1.32 1.82 2.39 3.0212. 0.08 0.26 0.53 0.89 1.33 1.84 2.42 3.0613. 0.06 0.15 0.26 0.38 0.50 0.62 0.75 0.8714. 0.07 0.20 0.36 0.54 0.75 0.96 1.18 1.4115. 0.08 0.21 0.40 0.63 0.89 1.17 1.46 1.7716. 0.08 0.22 0.41 0.69 0.98 1.31 1.66 2.0317. 0.08 0.23 0.45 0.72 1.04 1.40 1.80 2.2218. 0.08 0.24 0.46 0.75 1.09 1.48 1.90 2.3619. 0.08 0.24 0.47 0.77 1.12 1.53 1.98 2.4720. 0.08 0.24 0.48 0.78 1.15 1.57 2.04 2.5521. 0.08 0.24 0.48 0.80 1.17 1.60 2.09 2.6222.
0.08 0.24 0.48 0.78 1.15 1.57 2.03 2.5423. 0.08 0.24 0.47 0.77 1.12 1.52 1.97 2.4524. 0.08 0.24 0.46 0.74 1.08 1.46 1.88 2.3325. 0.08 0.23 0.45 0.72 1.03 1.38 1.77 2.189313.3541.041.232.102.462.663.043.223.533.573.653.693.760.991.632.092.412.662.853.003.123.203.092.972.812.6126Указание 1. Предложите, каким образом по данным эксперимента получить значение начального приближения установившейся скорости. В соответствии с вариантом задания выполнитеоценку этого значения и используйте его как начальное значениепараметра.Указание 2. Для подбора параметра моделирования (установившейся скорости) используйте метод наименьших квадратов,т.е.
определите, при каком его значении результаты моделирования уравнения вертикального падения с сопротивлением пропорциональным скорости или квадрату скорости наилучшим образомсогласуются с данными эксперимента.Рисунок 10 – Электронные таблицы с результатами расчетови экспериментов о падении тела с сопротивлением воздуха.27Контрольные вопросы и упражнения:VIII* Используя программы вычислений из задания, проверьте, как влияет сопротивление воздуха на движение камня.Вычислите, с какой скоростью упадет в реальных условиях с высоты 50 м камень, брошенный без вертикальной начальной скорости? Примите, что тормозящая сила пропорциональна v2, а установившаяся скорость равна 30 м/с.
Построив графики изменения координат со временем, сравните полученные результаты сосвободным падением тела при тех же условиях.IX* Предположим, что тело брошено вертикально вверх сначальной скоростью v 0 . Известно, что если пренебречь сопротивлением воздуха, то максимальная высота, на которую поднимется тело равна v 0 2/2g, скорость, с которой тело упадет на землюравна v 0 , время подъема и время падения одинаковы, а общеевремя движения равно v 0 /g. Прежде, чем проводить численноемоделирование задачи о движении с учетом сопротивления воздуха, проведите качественное объяснение того, как изменятся вэтом случае указанные величины. Проведите численные расчетыи проверьте правильность своих качественных выводов.
При моделировании положите, что сила сопротивления пропорциональна квадрату скорости, а установившаяся скорость равна 30 м/с.6 Задания для выполнения третьей части курсовой работыПрограмма на С++ для исследования функцийРазработайте и протестируйте программу, выводящую вконсоли меню, при выборе одного из пунктов которого надфункцией в заданном интервале значений аргумента выполняются следующие операции.6.1 Вывод значений аргумента, заданной функции F(x), еепервообразной и производной с точностью 1% c шагом h, в заданном интервале [a, b].6.2 Вычисление корней уравнения F(x)=0 методом дихотомии с точностью 0,0001.6.3 Вывод на экран количества экстремумов функции F(x).286.4 Вычисление интеграла функции методом прямоугольников с точностью 0,001 на отрезке между вторым и третьим корнем функции.6.5 Вычисление методом Монте-Карло интеграла функциина отрезке между вторым и третьим корнем функции, задав неменее 100 точек для усреднения значения интеграла.6.6 Для оценки правильности работы программы выполнитезадания пп.11, 12 и 14, используя возможности пакетов MatChadили Matlab.
С помощью инструментов этих программ постройтеграфики функции, ее производной и первообразной. Сравнитеполученные результаты с результатами, полученными в вашейпрограмме на С++.Варианты заданий по третьей части курсовой работы приведены в таблице 4.7 Содержание и оформление курсовой работыРасчетно-пояснительная записка должна включать: Титульный лист (см. рисунок 11). Номер варианта и полный текст заданий. Теоретическую часть, содержащую: анализ задачи, возможные варианты решения, обоснование выбора решения,краткое и четкое описание решения поставленной задачи. Программную часть, включающую листинги программныхкодов с поясняющими комментариями, а также листингикоды программ тестирования и их результаты. Иллюстрации и пояснения результатов выполнения задачи.Для иллюстрации результатов выполнения программынужно включить в пояснительную записку копии экрана,поясняющие полученные результаты. Список использованных источников литературы.Решения заданий должны быть изложены ясно и подробно,с проведением всех промежуточных выкладок, программных кодов и описаний результатов тестирования.Расчетно-пояснительная записка к курсовой работе оформляется на стандартной белой бумаге формата A4 (210х297 мм);текст размещается на одной стороне каждого листа.Таблица 4 – Варианты заданий для третьей части курсовой работы.29Продолжение таблицы 4 – Варианты заданий для третьей части курсовой работы.30Продолжение таблицы 4 – Варианты заданий для третьей части курсовой работы.31Окончание таблицы 4 – Варианты заданий для третьей части курсовой работы.3233Федеральное государственное бюджетное образовательное учреждениевысшего профессионального образования«Московский государственный технический университетрадиотехники, электроники и автоматики (МГТУ МИРЭА)»Факультет электроникиКафедра ФКСКУРСОВАЯ РАБОТАпо дисциплине «Информатика»Вариант __Исполнитель: Сергеев Сергей Сергеевич, подписьГруппа ЭНБ-1-11, шифр ЭНБ-00000Руководитель работы: доцент Иванов И.И.Оценка:Подпись преподавателя:Дата:Рисунок 11 – Пример оформления титульного листа курсовойработы.34Расчетно-пояснительная записка к курсовой работе обязательно должна быть сброшюрована или скреплена степлером(допускается также использовать специальные папки для курсовых работ).Текст должен быть напечатан, при этом использование сканированного, ксерокопированного и т.п.