Результаты исследований учащихся в проекте Учимся программировать: различия между версиями
(→Вывод) |
|||
Строка 113: | Строка 113: | ||
<div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;font-size:14px;"> | <div style="padding:10px;color:black;border:1px dashed #60DBFF;margin-top:5px;font-size:14px;"> | ||
В результате проведенной работы была раскрыта практическая ценность программирования для физики. Вышеописанное демонстрирует возможности моделирования и расчетов физических явлений, что несомненно играет важную роль в развитии этой науки.<br> | В результате проведенной работы была раскрыта практическая ценность программирования для физики. Вышеописанное демонстрирует возможности моделирования и расчетов физических явлений, что несомненно играет важную роль в развитии этой науки.<br> | ||
+ | Несмотря на то, что данная программа не занимает особых вычислительных ресурсов у системы, она довольно подробно и наглядно демонстрирует все преимущества используемой программной среды С++, и, на наш взгляд способна заинтересовать старшеклассников в дальнейшем развитии мира IT - технологий. | ||
</div> | </div> | ||
Версия 19:41, 18 декабря 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