Результаты исследований учащихся в проекте Учимся программировать: различия между версиями
(→Итоговая программа) |
|||
| (не показано 20 промежуточных версий 2 участников) | |||
| Строка 43: | Строка 43: | ||
</div> | </div> | ||
| − | ==Результаты проведённого исследования= | + | |
| + | <!--Результаты проведённого исследования--> | ||
| + | <h2 style="border:none;font-size:0px;">Результаты проведённого исследования</h2> | ||
| + | <div style="background:#C5F2FF;font-size:20px;text-align:center;padding:4px;">Результаты проведённого исследования</div> | ||
| + | <div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;"> | ||
[http://www.classtools.net/widgets/fishbone_2/wEg12.htm Ментальная карта "Рыбий скелет"]<br> | [http://www.classtools.net/widgets/fishbone_2/wEg12.htm Ментальная карта "Рыбий скелет"]<br> | ||
| − | [[Изображение:Рыбий_скелет_Сколов_Васильев.jpg|600px]] | + | <p style="text-align:center;">[[Изображение:Рыбий_скелет_Сколов_Васильев.jpg|600px]]</p> |
| + | </div> | ||
| − | == Постановка задачи = | + | <!--Постановка задачи--> |
| − | Целью нашего | + | <h2 style="border:none;font-size:0px;">Постановка задачи</h2> |
| + | <div style="background:#C5F2FF;font-size:20px;text-align:center;padding:4px;">Постановка задачи</div> | ||
| + | <div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;"> | ||
| + | Целью нашего исследования является проверка второго закона Кеплера: "Каждая планета движется в плоскости, проходящей через центр Солнца, причём за равные промежутки времени радиус-вектор, соединяющий Солнце и планету, описывает равные площади." <br> | ||
Применительное к нашей Солнечной системе, с этим законом связаны два понятия: перигелий — ближайшая к Солнцу точка орбиты, и афелий — наиболее удалённая точка орбиты. Таким образом, из второго закона Кеплера следует, что планета движется вокруг Солнца неравномерно, имея в перигелии большую линейную скорость, чем в афелии.<br> | Применительное к нашей Солнечной системе, с этим законом связаны два понятия: перигелий — ближайшая к Солнцу точка орбиты, и афелий — наиболее удалённая точка орбиты. Таким образом, из второго закона Кеплера следует, что планета движется вокруг Солнца неравномерно, имея в перигелии большую линейную скорость, чем в афелии.<br> | ||
| − | [[Изображение:СоколовВасильевВторойЗаконКеплера.svg.png| | + | [[Изображение:СоколовВасильевВторойЗаконКеплера.svg.png|400px]] |
| − | Наша экспериментальная модель будет представлять собой спутник, вращающийся вокруг Земли. | + | <i style="font-size:13px;">Наша экспериментальная модель будет представлять собой спутник, вращающийся вокруг Земли.</i> |
| + | </div> | ||
| − | == Аналитическое решение = | + | <!--Аналитическое решение--> |
| + | <h2 style="border:none;font-size:0px;">Аналитическое решение</h2> | ||
| + | <div style="background:#C5F2FF;font-size:20px;text-align:center;padding:4px;">Аналитическое решение</div> | ||
| + | <div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;"> | ||
[[Изображение:СоколовВасильевТеория.jpg]]<br> | [[Изображение:СоколовВасильевТеория.jpg]]<br> | ||
Согласно доказательству второго закона Кеплера в аналитическом виде подберем необходимые численные методы, для вычисления соответствующих параметров в цифровом виде. Для этого наиболее подходящим решением является метод Рунге — Кутты четвёртого порядка:<br> | Согласно доказательству второго закона Кеплера в аналитическом виде подберем необходимые численные методы, для вычисления соответствующих параметров в цифровом виде. Для этого наиболее подходящим решением является метод Рунге — Кутты четвёртого порядка:<br> | ||
[[Изображение:СоколовВасильевРунгеКутта.jpg|1000px]] | [[Изображение:СоколовВасильевРунгеКутта.jpg|1000px]] | ||
| + | </div> | ||
| − | == Пробная модель = | + | <!--Пробная модель--> |
| + | <h2 style="border:none;font-size:0px;">Пробная модель</h2> | ||
| + | <div style="background:#C5F2FF;font-size:20px;text-align:center;padding:4px;">Пробная модель</div> | ||
| + | <div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;"> | ||
На данном этапе нам необходимо определиться со средой в которой будет написана наша программа. Наиболее подходящая по своей вычислительной мощи и объектно ориентированному подходу является среда Visual С++. | На данном этапе нам необходимо определиться со средой в которой будет написана наша программа. Наиболее подходящая по своей вычислительной мощи и объектно ориентированному подходу является среда Visual С++. | ||
Для наглядности в нашей программе должна присутствовать и графическая часть, по этому важным параметром будет подключение библиотек MFC. <br><br> | Для наглядности в нашей программе должна присутствовать и графическая часть, по этому важным параметром будет подключение библиотек MFC. <br><br> | ||
| Строка 67: | Строка 83: | ||
В программе Microsoft Visual Studio нажимаем "создать проект"<br> | В программе Microsoft Visual Studio нажимаем "создать проект"<br> | ||
[[Изображение:СоколовВасильевПМ1.jpg|700px]]<br> | [[Изображение:СоколовВасильевПМ1.jpg|700px]]<br> | ||
| + | <br> | ||
Далее появляется мастер создания проекта. Нам необходимо выбрать среду в которой будем программировать(Visual C++ с поддержкой MFC) и пройти дальнейшие рекомендации по выбору проекта. Так как мы не создаем особо сложный проект, нам будет достаточно одного документа.<br> | Далее появляется мастер создания проекта. Нам необходимо выбрать среду в которой будем программировать(Visual C++ с поддержкой MFC) и пройти дальнейшие рекомендации по выбору проекта. Так как мы не создаем особо сложный проект, нам будет достаточно одного документа.<br> | ||
[[Изображение:СоколовВасильевПМ2.jpg|700px]]<br><br> | [[Изображение:СоколовВасильевПМ2.jpg|700px]]<br><br> | ||
| − | [[Изображение:СоколовВасильевПМ3.jpg|700px]]<br> | + | [[Изображение:СоколовВасильевПМ3.jpg|700px]]<br><br> |
Нажимаем кнопку готово и переходим непосредственно к созданию платформы и рабочего кода программы. Во вкладке "окно ресурсов" выбираем папку Dialog и элемент, который там находится. Заполняем его необходимыми элементами из панели Toolbar.<br> | Нажимаем кнопку готово и переходим непосредственно к созданию платформы и рабочего кода программы. Во вкладке "окно ресурсов" выбираем папку Dialog и элемент, который там находится. Заполняем его необходимыми элементами из панели Toolbar.<br> | ||
| − | [[Изображение:СоколовВасильевПМ4.jpg|700px]]<br> | + | [[Изображение:СоколовВасильевПМ4.jpg|700px]]<br><br> |
Двойным нажатием на элемент мастер направляет нас в раздел описания данного элемента. Здесь прописывается код, который должен исполняться при использовании данного элемента.<br> | Двойным нажатием на элемент мастер направляет нас в раздел описания данного элемента. Здесь прописывается код, который должен исполняться при использовании данного элемента.<br> | ||
[[Изображение:СоколовВасильевИП1.png|500px]] | [[Изображение:СоколовВасильевИП1.png|500px]] | ||
[[Изображение:СоколовВасильевИП2.jpg|500px]] | [[Изображение:СоколовВасильевИП2.jpg|500px]] | ||
[[Изображение:СоколовВасильевИП4.jpg|500px]]<br> | [[Изображение:СоколовВасильевИП4.jpg|500px]]<br> | ||
| + | </div> | ||
| − | + | <!--Итоговая программа--> | |
| − | == Итоговая программа = | + | <h2 style="border:none;font-size:0px;">Итоговая программа</h2> |
| + | <div style="background:#C5F2FF;font-size:20px;text-align:center;padding:4px;">Итоговая программа</div> | ||
| + | <div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;"> | ||
На данном этапе необходимо провести отладку программы: определить, все ли параметры работают корректно, нет ли каких либо ошибок. Добавляются (по мере необходимости) дополнительные параметры.<br> | На данном этапе необходимо провести отладку программы: определить, все ли параметры работают корректно, нет ли каких либо ошибок. Добавляются (по мере необходимости) дополнительные параметры.<br> | ||
| − | Проведя отладку, мы можем при помощи программы проверить, выполняется ли второй закон Кеплера. <br> | + | Проведя отладку, мы можем при помощи программы проверить, выполняется ли второй закон Кеплера. <br><br> |
[[Изображение:СоколовВасильевИП5.jpg|600px]]<br><br> | [[Изображение:СоколовВасильевИП5.jpg|600px]]<br><br> | ||
Как видно из результатов, мы получили практически одинаковые отношения площадей, что говорит о правильной работе программы. Расхождения в пятом знаке после запятой объясняются неточностью используемых констант и погрешностями, возникающими при использовании итерационного метода. | Как видно из результатов, мы получили практически одинаковые отношения площадей, что говорит о правильной работе программы. Расхождения в пятом знаке после запятой объясняются неточностью используемых констант и погрешностями, возникающими при использовании итерационного метода. | ||
[https://drive.google.com/file/d/0B-DLeCobbOOqdDByRWQ4Z2FLMVE/edit?usp=sharing Архив с программой] | [https://drive.google.com/file/d/0B-DLeCobbOOqdDByRWQ4Z2FLMVE/edit?usp=sharing Архив с программой] | ||
| + | </div> | ||
| − | ==Вывод= | + | <!--Вывод--> |
| − | + | <h2 style="border:none;font-size:0px;">Вывод</h2> | |
| + | <div style="background:#C5F2FF;font-size:20px;text-align:center;padding:4px;">Вывод</div> | ||
| + | <div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;font-size:14px;"> | ||
| + | В результате проведенной работы была раскрыта практическая ценность программирования для физики. Вышеописанное демонстрирует возможности моделирования и расчетов физических явлений, что несомненно играет важную роль в развитии этой науки.<br> | ||
| + | Несмотря на то, что данная программа не занимает особых вычислительных ресурсов у системы, она довольно подробно и наглядно демонстрирует все преимущества используемой программной среды С++, и, на наш взгляд способна заинтересовать старшеклассников в дальнейшем развитии мира IT - технологий. | ||
| + | </div> | ||
<!--Полезные ресурсы--> | <!--Полезные ресурсы--> | ||
Текущая версия на 10:10, 19 декабря 2013
Содержание
- 1 Авторы и участники проекта
- 2 Тема исследования группы
- 3 Проблемный вопрос (вопрос для исследования)
- 4 Гипотеза исследования
- 5 Цели исследования
- 6 Результаты проведённого исследования
- 7 Постановка задачи
- 8 Аналитическое решение
- 9 Пробная модель
- 10 Итоговая программа
- 11 Вывод
- 12 Полезные ресурсы
- 13 Другие документы
Авторы и участники проекта
Тема исследования группы
Моделирование физических явлений с помощью программ в рамках проекта "Учимся программировать"
Проблемный вопрос (вопрос для исследования)
Как в вашей области используется программы?
Гипотеза исследования
Мы считаем что, профессия "программист" весьма востребована в современном информационном обществе. Программисты пользуются спросом во всех научных и социальных областях, в том числе и физике. Все научно-исследовательские институты пользуются услугами программистов для точного вычисления физических констант путем моделирования естественных процессов.К примеру на супер компьютерах была поставлена гипотеза существования "Базона Хикса", которая, в последствии, была успешно проверенна на большом адронном коллайдере.
Цели исследования
- В соответствии с проблемным вопросом выбрать физические явления, моделирование которых будет производится на программах, написанных на языке С++.
- Аналитически интерпретировать поставленную задачу.
- Выделить ключевые пункты моделируемого явления.
- Проанализировать полученные результаты и составить рабочую программу исследуемого явления.
Результаты проведённого исследования
Постановка задачи
Целью нашего исследования является проверка второго закона Кеплера: "Каждая планета движется в плоскости, проходящей через центр Солнца, причём за равные промежутки времени радиус-вектор, соединяющий Солнце и планету, описывает равные площади."
Применительное к нашей Солнечной системе, с этим законом связаны два понятия: перигелий — ближайшая к Солнцу точка орбиты, и афелий — наиболее удалённая точка орбиты. Таким образом, из второго закона Кеплера следует, что планета движется вокруг Солнца неравномерно, имея в перигелии большую линейную скорость, чем в афелии.
Наша экспериментальная модель будет представлять собой спутник, вращающийся вокруг Земли.
Аналитическое решение

Согласно доказательству второго закона Кеплера в аналитическом виде подберем необходимые численные методы, для вычисления соответствующих параметров в цифровом виде. Для этого наиболее подходящим решением является метод Рунге — Кутты четвёртого порядка:
Пробная модель
На данном этапе нам необходимо определиться со средой в которой будет написана наша программа. Наиболее подходящая по своей вычислительной мощи и объектно ориентированному подходу является среда Visual С++.
Для наглядности в нашей программе должна присутствовать и графическая часть, по этому важным параметром будет подключение библиотек MFC.
Создаем наш проект:
В программе Microsoft Visual Studio нажимаем "создать проект"
![]()
Далее появляется мастер создания проекта. Нам необходимо выбрать среду в которой будем программировать(Visual C++ с поддержкой MFC) и пройти дальнейшие рекомендации по выбору проекта. Так как мы не создаем особо сложный проект, нам будет достаточно одного документа.
![]()
![]()
Нажимаем кнопку готово и переходим непосредственно к созданию платформы и рабочего кода программы. Во вкладке "окно ресурсов" выбираем папку Dialog и элемент, который там находится. Заполняем его необходимыми элементами из панели Toolbar.
![]()
Двойным нажатием на элемент мастер направляет нас в раздел описания данного элемента. Здесь прописывается код, который должен исполняться при использовании данного элемента.
![]()
Итоговая программа
На данном этапе необходимо провести отладку программы: определить, все ли параметры работают корректно, нет ли каких либо ошибок. Добавляются (по мере необходимости) дополнительные параметры.
Проведя отладку, мы можем при помощи программы проверить, выполняется ли второй закон Кеплера.
![]()
Как видно из результатов, мы получили практически одинаковые отношения площадей, что говорит о правильной работе программы. Расхождения в пятом знаке после запятой объясняются неточностью используемых констант и погрешностями, возникающими при использовании итерационного метода.
Вывод
В результате проведенной работы была раскрыта практическая ценность программирования для физики. Вышеописанное демонстрирует возможности моделирования и расчетов физических явлений, что несомненно играет важную роль в развитии этой науки.
Несмотря на то, что данная программа не занимает особых вычислительных ресурсов у системы, она довольно подробно и наглядно демонстрирует все преимущества используемой программной среды С++, и, на наш взгляд способна заинтересовать старшеклассников в дальнейшем развитии мира IT - технологий.
Полезные ресурсы
Портал с большим количеством книг, справочников, примеров исходного кода, на языке С++
Основы программирования (алгоритмы, циклы, функции)
Ресурс состоит из видеороликов и практических занятий по С++, совмещенных с консультациями автора
Основы объектно-ориентированного программирования на С++
Учебник по вики
Сборник руководств по продуктам Microsoft Office