Результаты исследований учащихся в проекте Учимся программировать

Материал из НГПУ им. К.Минина
Перейти к: навигация, поиск

Авторы и участники проекта

Авторы и участники проекта

Соколов Андрей

Васильев Дмитрий

Участники группы физики

Тема исследования группы

Тема исследования группы

Моделирование физических явлений с помощью программ в рамках проекта "Учимся программировать"

Проблемный вопрос (вопрос для исследования)

Проблемный вопрос (вопрос для исследования)

Как в вашей области используется программы?

Гипотеза исследования

Гипотеза исследования

Мы считаем что, профессия "программист" весьма востребована в современном информационном обществе. Программисты пользуются спросом во всех научных и социальных областях, в том числе и физике. Все научно-исследовательские институты пользуются услугами программистов для точного вычисления физических констант путем моделирования естественных процессов.К примеру на супер компьютерах была поставлена гипотеза существования "Базона Хикса", которая, в последствии, была успешно проверенна на большом адронном коллайдере.

Цели исследования

Цели исследования
  • В соответствии с проблемным вопросом выбрать физические явления, моделирование которых будет производится на программах, написанных на языке С++.
  • Аналитически интерпретировать поставленную задачу.
  • Выделить ключевые пункты моделируемого явления.
  • Проанализировать полученные результаты и составить рабочую программу исследуемого явления.


Результаты проведённого исследования

Результаты проведённого исследования


Постановка задачи

Постановка задачи

Целью нашего исследования является проверка второго закона Кеплера: "Каждая планета движется в плоскости, проходящей через центр Солнца, причём за равные промежутки времени радиус-вектор, соединяющий Солнце и планету, описывает равные площади."
Применительное к нашей Солнечной системе, с этим законом связаны два понятия: перигелий — ближайшая к Солнцу точка орбиты, и афелий — наиболее удалённая точка орбиты. Таким образом, из второго закона Кеплера следует, что планета движется вокруг Солнца неравномерно, имея в перигелии большую линейную скорость, чем в афелии.
СоколовВасильевВторойЗаконКеплера.svg.png Наша экспериментальная модель будет представлять собой спутник, вращающийся вокруг Земли.


Аналитическое решение

Аналитическое решение

СоколовВасильевТеория.jpg
Согласно доказательству второго закона Кеплера в аналитическом виде подберем необходимые численные методы, для вычисления соответствующих параметров в цифровом виде. Для этого наиболее подходящим решением является метод Рунге — Кутты четвёртого порядка:
СоколовВасильевРунгеКутта.jpg


Пробная модель

Пробная модель

На данном этапе нам необходимо определиться со средой в которой будет написана наша программа. Наиболее подходящая по своей вычислительной мощи и объектно ориентированному подходу является среда Visual С++. Для наглядности в нашей программе должна присутствовать и графическая часть, по этому важным параметром будет подключение библиотек MFC.

Создаем наш проект:
В программе Microsoft Visual Studio нажимаем "создать проект"
СоколовВасильевПМ1.jpg

Далее появляется мастер создания проекта. Нам необходимо выбрать среду в которой будем программировать(Visual C++ с поддержкой MFC) и пройти дальнейшие рекомендации по выбору проекта. Так как мы не создаем особо сложный проект, нам будет достаточно одного документа.
СоколовВасильевПМ2.jpg

СоколовВасильевПМ3.jpg

Нажимаем кнопку готово и переходим непосредственно к созданию платформы и рабочего кода программы. Во вкладке "окно ресурсов" выбираем папку Dialog и элемент, который там находится. Заполняем его необходимыми элементами из панели Toolbar.
СоколовВасильевПМ4.jpg

Двойным нажатием на элемент мастер направляет нас в раздел описания данного элемента. Здесь прописывается код, который должен исполняться при использовании данного элемента.
СоколовВасильевИП1.png СоколовВасильевИП2.jpg СоколовВасильевИП4.jpg


Итоговая программа

Итоговая программа

На данном этапе необходимо провести отладку программы: определить, все ли параметры работают корректно, нет ли каких либо ошибок. Добавляются (по мере необходимости) дополнительные параметры.
Проведя отладку, мы можем при помощи программы проверить, выполняется ли второй закон Кеплера.

СоколовВасильевИП5.jpg

Как видно из результатов, мы получили практически одинаковые отношения площадей, что говорит о правильной работе программы. Расхождения в пятом знаке после запятой объясняются неточностью используемых констант и погрешностями, возникающими при использовании итерационного метода.

Архив с программой

Вывод

Вывод

В результате проведенной работы была раскрыта практическая ценность программирования для физики. Вышеописанное демонстрирует возможности моделирования и расчетов физических явлений, что несомненно играет важную роль в развитии этой науки.
Несмотря на то, что данная программа не занимает особых вычислительных ресурсов у системы, она довольно подробно и наглядно демонстрирует все преимущества используемой программной среды С++, и, на наш взгляд способна заинтересовать старшеклассников в дальнейшем развитии мира IT - технологий.

Полезные ресурсы

Полезные ресурсы

Другие документы

Другие документы