Бюллетень науки и практики /Bulletin of Science and Practice Т. 9. №7. 2023
https ://www.bulletennauki.ru https://doi.org/10.33619/2414-2948/92
УДК 371.54/2 https://doi.org/10.33619/2414-2948/92/51
МОДЕЛИРОВАНИЕ ФИЗИЧЕСКИХ ЯВЛЕНИЙ И ПРОЦЕССОВ В VPYTHON
©Бабаев Д. Б., SPIN-код: 7812-1808, д-р пед. наук, Кыргызская академия образования,
г. Бишкек, Кыргызстан, [email protected] ©Матисаков Ж. К., Ошский технологический университет им. акад. М.М. Адышева,
г. Ош, Кыргызстан
MODELING PHYSICAL PHENOMENA AND PROCESSES IN VPYTHON
©Babaev D., SPIN-code: 7812-1808, Dr. habil., Kyrgyz Academy of Education, Bishkek, Kyrgyzstan, [email protected] ©Matisakov Zh., Osh Technological University named by M.M. Adyshev, Osh, Kyrgyzstan
Аннотация. Для описания физических явлений разрабатываются сложные модели, использующие инструментальные среды и разные языки программирования. Когда явление недоступно нашему чувству, его описание носит косвенный характер и понимание может быть затруднено для студентов. При получении прямой визуализации явления, недоступного чувству, можно достичь более глубокое понимание, за счет эффективности таких методов обучения. Использование различных инструментов визуализации для преподавания необходимо студентам, чтобы лучше понять физические явления и сформулировать соответствующие ментальные модели. В настоящей работе представлен простой инструмент визуализации 3D-объектов и графиков, предназначенный для студентов с минимальным опытом программирования. Целью представленного исследования является определение роли простых компьютерных программных кодов в совершенствовании методов обучения в физических лабораториях. Студенты узнают о важности виртуальной лаборатории как элемента визуализации при изучении физики.
Abstract. To describe physical phenomena, complex models are developed using tool environments and different programming languages. When a phenomenon is inaccessible to our sense, its description is indirect, and understanding can be difficult for students. By obtaining a direct visualization of a phenomenon inaccessible to the senses, a deeper understanding can be achieved, due to the effectiveness of such teaching methods. The use of various visualization tools for teaching is necessary for students to better understand physical phenomena and formulate appropriate mental models. This paper presents a simple visualization tool for 3D objects and graphs, designed for students with minimal programming experience. The purpose of the presented study is to determine the role of simple computer program codes in improving teaching methods in physical laboratories. Students will learn about the importance of the virtual laboratory as an element of visualization in the study of physics.
Ключевые слова: компьютерное моделирование, 3D-визуализация, физические лаборатории, методы обучения, инструмент визуализации 3D-объектов и графиков.
Keywords: computer modeling, 3D visualization, physical laboratories, teaching methods, VPython.
Несомненно, лаборатория является важным средством обучения, поскольку
Бюллетень науки и практики /Bulletin of Science and Practice Т. 9. №7. 2023
https ://www.bulletennauki.ru https://doi.org/10.33619/2414-2948/92
непосредственный опыт наблюдения и обработки научных материалов превосходит другие методы развития понимания и оценки. Смит (1991) утверждал, что большинство научных теорий основаны на большом количестве очень сложных экспериментов. Он предположил, что, если темы лекций должны быть проиллюстрированы, это должно быть сделано с использованием аудиовизуальных средств или демонстраций [1].
Кроме того, наблюдаются, многие навыки, которые студенты приобретают в лаборатории, устарели. Лабораторные занятия оказываются полезными для учащихся со средними и низкими показателями успеваемости по предварительным тестам. Однако практический процесс преподавания и обучения в лабораториях можно улучшить, внедрив более эффективную технологию обучения за счет использования программного обеспечения в компьютерных классах. В данном случае центральным аспектом является моделирование сложных явлений реального мира. Физическая модель основана на том, что мы считаем фундаментальными принципами; его цель состоит в том, чтобы предсказать или объяснить наиболее важные аспекты реальной ситуации. Моделирование обязательно включает в себя приближения и упрощение допущений, которые позволяют детально проанализировать систему. Вычислительное моделирование сейчас так же важно, как теория и эксперимент в современной науке и технике. Современные разработки в компьютерных языках и компьютерном оборудовании расширили использование программ, кодов и библиотек с минимальными навыками программирования. В настоящее время преподаватели и студенты могут создавать, распространять и улучшать исходные коды для решения или иллюстрации упражнений по физике.
Python — самый простой в изучении и самый удобный в использовании язык программирования, который широко используется. Одной из сильных сторон Python является то, что он поставляется полной стандартной библиотекой. Его можно использовать для процедурного, объектно-ориентированного программирования [2].
Язык Python и его семейство пакетов составляют переменную экосистему для вычислений. Пакет или модуль — это набор связанных методов, собранных вместе в библиотеку подпрограмм. Для создания трехмерных визуализаций и матриц с помощью Python необходимо включить дополнительный модуль VPython (Python плюс пакет Visual).
Visual Python (VPython) — это язык программирования Python плюс модуль трехмерной графики под названием Visual, созданный Дэвидом Шерером в 2000 году под руководством Брюса Шервуда и Рут Чабай и выпущен под лицензией GNU Public License [3].
При использовании VPython окно отображения показывает объект в 3D, центр окна отображения находится в (0, 0, 0). Ось +x направлена вправо, ось +y направлена вверх, а ось +z направлена из-за пределов экрана к нам. Можно создавать различные формы, такие как сфера, стрелка, прямоугольник, цилиндр, текст, метка и т. д. Программа требует от пользователя ввода значений параметров, описывающих физические характеристики и определения типа анимируемого объекта. Единицы являются относительными и могут быть выделены в виде комментария с использованием решетки # и доходить до конца физической строки. Вывод любых операторов печати, которые выполняются в программе, поступает в окно вывода, которое представляет собой прокручиваемое текстовое окно. Когда запустится программа, появятся два новых окна; один отображает созданный объект, а другой отображает текст. Окно вывода текста, также называемое окном «Оболочка», отображает любой текст, который указывается в программе для печати, а также отображает любые сообщения об ошибках, которые помогут найти ошибки в программном коде. Окно Shell также используется для отображения любого текста, который указывается программе
Бюллетень науки и практики / Bulletin of Science and Practice Т. 9. №7. 2023
https ://www.bulletennauki.ru https://doi.org/10.33619/2414-2948/92
напечатать; часто для печати окончательных результатов.
В этом исследовании построим простые вычислительные модели, основанные на фундаментальных физических принципах. Используя VPython, вычислительную среду, основанную на языке программирования Python, создадим простую вычислительную модель, которая создает навигационную трехмерную анимацию. Вычислительное моделирование позволяет нам анализировать сложные системы, которые потребуют очень сложной математики или вообще не могут быть проанализированы без компьютера. В центре внимания этой статьи будет отдельная программа, разработанная для создания 3D-визуализации специально для эксперимента, проводимого в лабораториях перед их выполнением, что дает студентам возможность наблюдать за динамической эволюцией поведения системы, понимать и изменять эти выражения без какой-либо трудности. Такие анимации обеспечивают визуализацию полей и движений. В этом исследовании будем моделировать электростатическое поле электрического диполя. Электрический диполь — система двух равных по модулю разноименных точечных зарядов (+Q, -Q), расстояние l между которыми значительно меньше расстояния до рассматриваемых точек поля [4].
С помощью компьютерного языка VPython мы сможем моделировать физические явления, что поможет нам визуализировать и сделать физические лаборатории более интересными. Смоделируем «Электростатическое поле электрического диполя», чтобы понять, как возникает электростатическое поле и как направлены напряженности электростатического поля (Рисунок). Для успешной реализации моделирования нам необходимо знать величины напряженности электростатического поля Е.
В программе надо указать некоторые основные переменные, без которых компьютерная программа не запустится. def E(rq,ro,q): k = 9e9 r = ro-rq
Etemp = k*q*norm(r)/mag(r)**2 return(Etemp) q = 3e-9 s = 0.001
ql = sphere(pos=vector(s/2,0,0),radius=s/2, color=color.red)
q2 = sphere(pos=vector(-s/2,0,0),radius=s/2, color=color.cyan)
N = 16
theta = 0
dtheta = 2*pi/N
R = 0.005
Escale = 4e-9
Чтобы указать направления напряженности электростатического поля Е используем цикл while. Цикл — это инструкция, которая говорит VPython многократно выполнять ряд задач, пока программа не будет соответствовать некоторому критерию. while theta<2*pi:
ro = R*vector(cos(theta),sin(theta),0) Ed = E(q1.pos,ro,q)+E(q2.pos,ro,-q) arrow(pos=ro, axis=Escale*Ed, color=color.yellow) theta = theta + dtheta
Бюллетень науки и практики / Bulletin of Science and Practice Т. 9. №7. 2023
https ://www.bulletennauki.ru https://doi.org/10.33619/2414-2948/92
ж
N /
Nv v
_ /
\
Рисунок: Моделирование отношения заряда электрона к массе
Представление физики более чем одним методом приводит к более легкому пониманию. Смысл этого исследования заключается в том, чтобы привлечь студентов к физике, предлагая новый взгляд на теоретические концепции и эксперименты. Сочетая теоретические знания с простыми навыками программирования, студенты смогут симулировать и моделировать физические эксперименты перед их выполнением в лабораториях.
С помощью представленной программы легко решать упражнения и задачи, и студенты получают от нее разные преимущества: сверяют лабораторные результаты с результатами, полученными на компьютере, код легко меняется в соответствии с потребностями, и в значительной степени они получают четкое представление о том, как решать связанные с физикой расчеты.
Список литературы:
1. Bufasi E., Lakrad K. Improving teaching techniques using Visual Python: A case study in physics laboratories // International Journal of Scientific and Technology Research. 2019. V. 8. №12. P. 161-163.
2. Summerfield M. Programming in Python 3: a complete introduction to the Python language. Addison-Wesley Professional, 2010.
3. Scherer D., Dubois P., Sherwood B. VPython: 3D interactive scientific graphics for students // Computing in Science & Engineering. 2000. V. 2. №5. P. 56-62. https://doi.org/10.1109/5992.877397
4. Трофимова Т. И. Курс физики. М.: Академия, 2006. 560 с.
References:
1. Bufasi, E., & Lakrad, K. (2019). Improving teaching techniques using Visual Python: A case study in physics laboratories. International Journal of Scientific and Technology Research, 8(12), 161-163.
2. Summerfield, M. (2010). Programming in Python 3: a complete introduction to the Python language. Addison-Wesley Professional.
® I
Бюллетень науки и практики / Bulletin of Science and Practice https://www.bulletennauki.ru
Т. 9. №7. 2023 https://doi.org/10.33619/2414-2948/92
3. Scherer, D., Dubois, P., & Sherwood, B. (2000). VPython: 3D interactive scientific graphics for students. Computing in Science & Engineering, 2(5), 56-62. https://doi.org/10.1109/5992.877397
4. Trofimova, T. I. (2006). Kurs fiziki. Moscow. (in Russian).
Работа поступила в редакцию 09.06.2023 г.
Принята к публикации 16.06.2023 г.
Ссылка для цитирования:
Бабаев Д. Б., Матисаков Ж. К. Моделирование физических явлений и процессов в VPython // Бюллетень науки и практики. 2023. Т. 9. №7. С. 370-374. https://doi.org/10.33619/2414-2948/92/51
Cite as (APA):
Babaev, D., & Matisakov, Zh. (2023). Modeling Physical Phenomena and Processes in
VPython. Bulletin of Science and Practice, 9(7), 370-374. (in Russian). https://doi.org/10.33619/2414-2948/92/51
® I