Разработка обучающей программы для изучения интерполяционных методов
Заказать уникальную дипломную работу- 92 92 страницы
- 8 + 8 источников
- Добавлена 15.07.2014
- Содержание
- Часть работы
- Список литературы
- Вопросы/Ответы
Введение 4
1. Аналитический раздел. 6
1.1. Основные сведения об интерполяции 6
1.2. Интерполяция с помощью многочленов Лагранжа 10
1.3. Интерполяционный многочлен Ньютона 13
1.4. Интерполирование функций сплайнами 16
1.5. Равномерные многочленные приближения 18
1.6. Среднеквадратические приближения 20
1.7. Двумерная интерполяция 22
1.8. Выводы по разделу 24
2. Разработка информационной системы 25
2.1. Выбор среды разработки и языка программирования 25
2.2. Разработка алгоритмов интерполяции 26
2.3. Функциональные возможности программы. 29
2.4. Физическая модель программного продукта 30
2.5. Описание программы 32
2.6. Тестирование программы 36
2.7. Выводы по разделу 38
3. Организационно-экономический раздел 39
3.1. Состав исполнителей для разработки программы 39
3.2. Определение продолжительности разработки программы и сроков выполнения отдельных этапов работ 39
3.3. Расчет затрат на разработку программы (себестоимости) 42
3.4. Определение стоимости программы (цены) 47
3.5. Определение инвестиционной стоимости программы с позиции возможного покупателя 48
3.6. Оценка экономической эффективности использования программы 51
3.7. Выводы по разделу 53
4. Раздел безопасности и экологичности проекта 53
4.1. Анализ основных факторов воздействия среды на оператора персонального компьютера 53
4.2. Организация рабочего места 55
4.3. Требования к персональному компьютеру 56
4.4. Требования к рабочему месту 59
4.5. Эргономичность 60
4.6. Безопасность 62
4.7. Выводы по разделу 66
Заключение 67
Список используемой литературы 68
Приложение 1 Листинг программы 69
Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 5 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 0.51; v1.X2 = 2.5; v1.Y2 = 12.8; v1.X3 = 3.6; v1.Y3 = 13.2; v1.X4 = 7.1; v1.Y4 = 0.82; v1.X = 2.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1000; v2.T1 = 27; v2.S2 = 1020; v2.T2 = 25; v2.S3 = 1020; v2.T3 = 27; v2.S4 = 830; v2.T4 = 18; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 6 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 16.1; v1.X2 = 12.4; v1.Y2 = 8.2; v1.X3 = 13.8; v1.Y3 = 7.9; v1.X4 = 16.9; v1.Y4 = 18.2; v1.X = 12.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1500; v2.T1 = 32; v2.S2 = 1530; v2.T2 = 30; v2.S3 = 1530; v2.T3 = 32; v2.S4 = 1020; v2.T4 = 22; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 7 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 2.3; v1.X2 = 2.5; v1.Y2 = 6.8; v1.X3 = 3.6; v1.Y3 = 2.4; v1.X4 = 7.1; v1.Y4 = 1.9; v1.X = 3.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 200; v2.T1 = 37; v2.S2 = 220; v2.T2 = 35; v2.S3 = 220; v2.T3 = 37; v2.S4 = 1530; v2.T4 = 27; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 8 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 7.1; v1.X2 = 12.4; v1.Y2 = 13.8; v1.X3 = 13.8; v1.Y3 = 5.1; v1.X4 = 16.9; v1.Y4 = 5.7; v1.X = 14.1;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 400; v2.T1 = 7; v2.S2 = 430; v2.T2 = 40; v2.S3 = 430; v2.T3 = 7; v2.S4 = 220; v2.T4 = 32; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 9 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 0.42; v1.X2 = 2.5; v1.Y2 = 12.5; v1.X3 = 3.6; v1.Y3 = 12.9; v1.X4 = 7.1; v1.Y4 = 0.91; v1.X = 2.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 600; v2.T1 = 12; v2.S2 = 620; v2.T2 = 5; v2.S3 = 620; v2.T3 = 12; v2.S4 = 430; v2.T4 = 37; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 10 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 15.9; v1.X2 = 12.4; v1.Y2 = 8.3; v1.X3 = 13.8; v1.Y3 = 7.8; v1.X4 = 16.9; v1.Y4 = 19.2; v1.X = 12.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 800; v2.T1 = 18; v2.S2 = 830; v2.T2 = 10; v2.S3 = 830; v2.T3 = 18; v2.S4 = 620; v2.T4 = 7; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 11 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 2.1; v1.X2 = 2.5; v1.Y2 = 8.4; v1.X3 = 3.6; v1.Y3 = 2.3; v1.X4 = 7.1; v1.Y4 = 2.1; v1.X = 3.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1000; v2.T1 = 22; v2.S2 = 1020; v2.T2 = 15; v2.S3 = 1020; v2.T3 = 22; v2.S4 = 830; v2.T4 = 12; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 12 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 7.2; v1.X2 = 12.4; v1.Y2 = 13.9; v1.X3 = 13.8; v1.Y3 = 5.0; v1.X4 = 16.9; v1.Y4 = 5.6; v1.X = 14.1;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1500; v2.T1 = 27; v2.S2 = 1530; v2.T2 = 20; v2.S3 = 1530; v2.T3 = 27; v2.S4 = 1020; v2.T4 = 18; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 13 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 0.91; v1.X2 = 2.5; v1.Y2 = 13.1; v1.X3 = 3.6; v1.Y3 = 13.9; v1.X4 = 7.1; v1.Y4 = 0.89; v1.X = 2.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 200; v2.T1 = 32; v2.S2 = 220; v2.T2 = 25; v2.S3 = 220; v2.T3 = 32; v2.S4 = 1530; v2.T4 = 22; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 14 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 5.2; v1.X2 = 12.4; v1.Y2 = 12.9; v1.X3 = 13.8; v1.Y3 = 5.9; v1.X4 = 16.9; v1.Y4 = 5.1; v1.X = 14.1;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 400; v2.T1 = 37; v2.S2 = 430; v2.T2 = 30; v2.S3 = 430; v2.T3 = 37; v2.S4 = 220; v2.T4 = 27; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 15 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 1.29; v1.X2 = 2.5; v1.Y2 = 16.2; v1.X3 = 3.6; v1.Y3 = 1.61; v1.X4 = 7.1; v1.Y4 = 1.85; v1.X = 3.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 600; v2.T1 = 7; v2.S2 = 620; v2.T2 = 35; v2.S3 = 620; v2.T3 = 7; v2.S4 = 430; v2.T4 = 37; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 16 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 16.2; v1.X2 = 12.4; v1.Y2 = 7.21; v1.X3 = 13.8; v1.Y3 = 6.25; v1.X4 = 16.9; v1.Y4 = 19.9; v1.X = 12.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 800; v2.T1 = 12; v2.S2 = 830; v2.T2 = 40; v2.S3 = 830; v2.T3 = 12; v2.S4 = 620; v2.T4 = 7; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 17 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 0.36; v1.X2 = 2.5; v1.Y2 = 9.54; v1.X3 = 3.6; v1.Y3 = 9.32; v1.X4 = 7.1; v1.Y4 = 0.18; v1.X = 2.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1000; v2.T1 = 18; v2.S2 = 1020; v2.T2 = 5; v2.S3 = 1020; v2.T3 = 18; v2.S4 = 830; v2.T4 = 12; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 18 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 0.25; v1.X2 = 12.4; v1.Y2 = 0.19; v1.X3 = 13.8; v1.Y3 = 5.2; v1.X4 = 16.9; v1.Y4 = 6.1; v1.X = 14.1;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1500; v2.T1 = 22; v2.S2 = 1530; v2.T2 = 10; v2.S3 = 1530; v2.T3 = 22; v2.S4 = 1020; v2.T4 = 18; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 19 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 5.4; v1.X2 = 2.5; v1.Y2 = 12.1; v1.X3 = 3.6; v1.Y3 = 2.6; v1.X4 = 7.1; v1.Y4 = 2.2; v1.X = 3.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 200; v2.T1 = 27; v2.S2 = 220; v2.T2 = 15; v2.S3 = 220; v2.T3 = 27; v2.S4 = 1530; v2.T4 = 22; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 20 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 16.2; v1.X2 = 12.4; v1.Y2 = 7.8; v1.X3 = 13.8; v1.Y3 = 8.3; v1.X4 = 16.9; v1.Y4 = 21.3; v1.X = 12.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 400; v2.T1 = 37; v2.S2 = 430; v2.T2 = 20; v2.S3 = 430; v2.T3 = 37; v2.S4 = 220; v2.T4 = 27; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 21 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 0.35; v1.X2 = 2.5; v1.Y2 = 12.9; v1.X3 = 3.6; v1.Y3 = 12.5; v1.X4 = 7.1; v1.Y4 = 0.8; v1.X = 2.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 600; v2.T1 = 7; v2.S2 = 620; v2.T2 = 25; v2.S3 = 620; v2.T3 = 7; v2.S4 = 430; v2.T4 = 37; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 22 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 6.9; v1.X2 = 12.4; v1.Y2 = 12.1; v1.X3 = 13.8; v1.Y3 = 5.7; v1.X4 = 16.9; v1.Y4 = 5.1; v1.X = 14.1;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 800; v2.T1 = 12; v2.S2 = 830; v2.T2 = 30; v2.S3 = 830; v2.T3 = 12; v2.S4 = 620; v2.T4 = 7; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 23 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 3.2; v1.X2 = 2.5; v1.Y2 = 11.2; v1.X3 = 3.6; v1.Y3 = 3.1; v1.X4 = 7.1; v1.Y4 = 2.9; v1.X = 3.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1000; v2.T1 = 18; v2.S2 = 1020; v2.T2 = 35; v2.S3 = 1020; v2.T3 = 18; v2.S4 = 830; v2.T4 = 12; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 24 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 0.62; v1.X2 = 12.4; v1.Y2 = 8.2; v1.X3 = 13.8; v1.Y3 = 7.9; v1.X4 = 16.9; v1.Y4 = 0.21; v1.X = 12.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1500; v2.T1 = 22; v2.S2 = 1530; v2.T2 = 40; v2.S3 = 1530; v2.T3 = 22; v2.S4 = 1020; v2.T4 = 18; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 25 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 0.48; v1.X2 = 2.5; v1.Y2 = 10.1; v1.X3 = 3.6; v1.Y3 = 11.6; v1.X4 = 7.1; v1.Y4 = 0.92; v1.X = 2.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 200; v2.T1 = 27; v2.S2 = 220; v2.T2 = 5; v2.S3 = 220; v2.T3 = 27; v2.S4 = 1530; v2.T4 = 22; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 26 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 6.1; v1.X2 = 12.4; v1.Y2 = 10.1; v1.X3 = 13.8; v1.Y3 = 5.2; v1.X4 = 16.9; v1.Y4 = 5.6; v1.X = 14.1;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 400; v2.T1 = 37; v2.S2 = 430; v2.T2 = 10; v2.S3 = 430; v2.T3 = 37; v2.S4 = 220; v2.T4 = 7; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 27 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 5.1; v1.X2 = 2.5; v1.Y2 = 10.8; v1.X3 = 3.6; v1.Y3 = 2.8; v1.X4 = 7.1; v1.Y4 = 3.2; v1.X = 3.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 600; v2.T1 = 7; v2.S2 = 620; v2.T2 = 15; v2.S3 = 620; v2.T3 = 7; v2.S4 = 430; v2.T4 = 12; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 28 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 0.92; v1.X2 = 12.4; v1.Y2 = 10.2; v1.X3 = 13.8; v1.Y3 = 12.6; v1.X4 = 16.9; v1.Y4 = 0.91; v1.X = 12.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 800; v2.T1 = 12; v2.S2 = 830; v2.T2 = 20; v2.S3 = 830; v2.T3 = 12; v2.S4 = 620; v2.T4 = 18; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 29 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 1.1; v1.Y1 = 2.6; v1.X2 = 2.5; v1.Y2 = 8.71; v1.X3 = 3.6; v1.Y3 = 9.32; v1.X4 = 7.1; v1.Y4 = 1.12; v1.X = 2.8;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1000; v2.T1 = 18; v2.S2 = 1020; v2.T2 = 25; v2.S3 = 1020; v2.T3 = 18; v2.S4 = 830; v2.T4 = 22; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }// ------------------- 30 --------------------- // {OneDimensionalVariant v1 = newOneDimensionalVariant(); v1.X1 = 11.5; v1.Y1 = 7.4; v1.X2 = 12.4; v1.Y2 = 11.2; v1.X3 = 13.8; v1.Y3 = 6.5; v1.X4 = 16.9; v1.Y4 = 6.2; v1.X = 14.1;TwoDimensionalVariant v2 = newTwoDimensionalVariant(); v2.S1 = 1500; v2.T1 = 22; v2.S2 = 1530; v2.T2 = 30; v2.S3 = 1530; v2.T3 = 22; v2.S4 = 1020; v2.T4 = 27; Data.Add(newVariant() { V1 = v1, V2 = v2 }); }string path = Assembly.GetExecutingAssembly().Location + ".report.txt";List
2. Турчак Л.И., Плотников П.В. Основы численных методов: Учеб. пособие. – 2-е изд., перераб. и доп. – М.: ФИЗМАТЛИТ, 2005. – 304 с.
3. Мудров А.Е. Численные методы для ПЭВМ на языках Бейсик, Фортран и Паскаль. – Томск: МП «РАСКО», 1991. – 272 с.
4. Шуп Т. Решение инженерных задач на ЭВМ: Практическое руководство. Пер. с англ. – М.: Мир, 1982. – 238 с.
5. Бахвалов Н.С. Численные методы / Н.С. Бахвалов, Н.П. Жидков, Г.М. Кобельков. – 5-е изд. – М.: БИНОМ. Лаборатория знаний, 2007. – 636 с.
6. Беллман Р. Динамическое программирование. – М.: Изд–во иностр. литер.,1960. – 400 с.
7. Мэтью Мак-Дональд WPF: Windows Presentation Foundation в .NET 4.5 с примерами на C# 5.0 для профессионалов, 4-е издание = Pro WPF 4.5 in C# 2012: Windows Presentation Foundation in .NET 4.5, 4th edition. — М.: «Вильямс», 2013. — 1024 с. — ISBN 978-5-8459-1854-3
8. Андерсон, Крис Основы Windows Presentation Foundation. — СПб.: БХВ-Петербург, 2008. — 432 с. — ISBN 978-5-9775-0265-8
Вопрос-ответ:
Что такое интерполяция?
Интерполяция - это метод численного аппроксимирования функции по известным ее значениям в некоторых точках.
Какие методы интерполяции существуют?
Существует несколько методов интерполяции, включая интерполяцию с помощью многочленов Лагранжа, интерполяционный многочлен Ньютона, интерполирование функций сплайнами, равномерные многочленные приближения и среднеквадратические приближения.
Как работает интерполяция с использованием многочленов Лагранжа?
Интерполяция с помощью многочленов Лагранжа заключается в построении многочлена, который проходит через заданные точки и при этом имеет минимальную степень.
Что такое интерполирование функций сплайнами?
Интерполирование функций сплайнами - это метод интерполяции, при котором функция разбивается на участки, и на каждом участке используется некоторый интерполянт (часть функции между двумя соседними узлами интерполяции) для приближения исходной функции.
Какие выводы можно сделать по аналитическому разделу статьи?
В аналитическом разделе статьи были рассмотрены основные методы интерполяции, включая интерполяцию с помощью многочленов Лагранжа и интерполяционный многочлен Ньютона, а также методы интерполирования функций сплайнами, равномерные многочленные приближения и среднеквадратические приближения.
Какие основные методы интерполяции существуют?
Основными методами интерполяции являются: интерполяция многочленами Лагранжа, интерполяционный многочлен Ньютона, интерполирование функций сплайнами, равномерные многочленные приближения, среднеквадратические приближения и двумерная интерполяция.
В чем заключается интерполяция с помощью многочленов Лагранжа?
Интерполяция с помощью многочленов Лагранжа - это метод, при котором используется многочлен, который проходит через заданные точки и при этом имеет минимальную степень. Этот метод позволяет приближенно восстановить функцию по ее значениям в некоторых точках.
Что такое интерполирование функций сплайнами?
Интерполирование функций сплайнами - это метод интерполяции, при котором функция разбивается на отрезки, на каждом из которых используется аппроксимационный многочлен небольшой степени. Это позволяет получить более гладкую и приближенную к исходной функцию интерполяцию.
Какие представляют собой равномерные многочленные приближения?
Равномерные многочленные приближения - это метод интерполяции, при котором используются равномерно распределенные узлы на отрезке, на котором строится аппроксимирующий многочлен. Это позволяет достичь равномерного приближения функции на всем отрезке.