Full text

Совершенствование методики изучения основ компьютерного моделирования предполагает разработку простых компьютерных моделей физических, технических, биологических и социальных систем, которые были бы понятны студентам и школьникам [1, 2]. При этом следует применять такие программные средства, которые не вызовут сложностей в процессе обучения. Курсы информатики для школ и вузов предполагают освоение электронных таблиц Excel. Это многофункциональный табличный процессор, включающий в себя электронные таблицы, средства визуального программирования и графический модуль, с помощью которого можно получить круговые и столбчатые диаграммы, построить графики и поверхности [3, 4]. Пакет Excel позволяет решить множество различных задач, связанных с нахождением производных, интегралов, численным решением дифференциальных уравнений, построением графиков и т. д. Можно предположить, что применение табличного процессора Excel при изучении физики и компьютерного моделирования будет способствовать более глубокому пониманию рассматриваемых вопросов.

Проблема использования процессора MS Excel при изучении информатики, математики, физики и других дисциплин неоднократно поднималась различными учеными-методистами [5–7]. Известные руководства по Excel (например, [8, 9]) не дают полного представления обо всех особенностях применения электронных таблиц при моделировании физических систем. Настоящая статья посвящена использованию макросов VBA (Visual Basic Application) для решения задач школьного и вузовского курсов физики по теме «Колебательное движение». Методологической основой этой работы являются монографии и учебные пособия Л. А. Булавина, Н. В. Выгорницкого, Н. И. Лебовки [10], В. Д. Боева, Р. П. Сыпченко [11], М. Вулфсона, Г. Перта [12], Х. Гулда, Я. А. Тобочника [13], Н. Джиордано [14], Н. Н. Калиткина [15], С. Кунина [16], С. В. Поршнева [17], В. И. Ращикова, А. С. Рошаль [18], В. А. Саранина [19], А. Самарского, А. П. Михайлова [20], Н. Д. Угриновича [21].

Существует два способа решения задач с помощью табличного процессора Excel: 1) табулирование функций и построение графиков без использования макросов; 2) написание макроса – небольшой программы, создаваемой пользователем в специальном блоке. Макрос создается в специальном окне на языке Visual Basic; он может содержать цикл по времени, координате, использоваться для нахождения интеграла, производной, многократного пересчета элементов массива и т. д. В некоторых задачах с помощью программ VBA рассчитываются координаты движущихся частиц, решается соответствующее уравнение в частных производных, проводится серия испытаний и т. д. Для создания макроса в Excel 2010 нужно выбрать: Вид  Макросы. В появившееся окно следует ввести или скопировать текст программы, которую будет выполнять компьютер после нажатия на клавишу F5. Макрос берет данные из соответствующих ячеек документа Excel и, выполнив расчеты, записывает результаты вычислений в другие ячейки. Получается таблица, на основе которой с помощью графического модуля можно получить графики той или иной зависимости.

Метод компьютерного моделирования [22, 23] целесообразно применять тогда, когда другие способы исследования изучаемой системы менее результативны либо слишком трудоемки и сложны с математической точки зрения. Это в полной мере относится к расчету механических и электрических колебаний. Ниже представлена серия задач на моделирование колебательных процессов в различных механических и электрических системах путем создания макросов в Excel. При этом используется метод Эйлера, который приводит к правильному результату при достаточно малом шаге по времени  [24–31]. В предлагаемых задачах для измерения физических величин используются условные единицы. Обсуждаемые методы могут применяться и для моделирования других систем.

 

Задача 1. Методами компьютерного моделирования изучите вынужденные колебания пружинного маятника при различных параметрах системы и начальных условиях  и . Постройте графики , , , а также фазовую кривую в осях  и .

Из второго закона Ньютона следует:

, , ,

, , , .

Используется программа 1, получающиеся графики представлены на рис. 1. Видно, что  и  колеблются в противофазе, а  опережает  на четверть периода (фаза ).

 

 

 

Рис. 1. Вынужденные колебания при различных частотах вынуждающей силы

 

 

Программа 1

m = 0.3: k = 15: r = 0.15: w = 6: dt = 0.002: t = 0

While t < 25

t = t + dt: i = i + 1: F = 3 * Sin(w * t): a = (F – k * x – r * v) / m: v = v + a * dt

x = x + v * dt: Cells(i, 1) = t: Cells(i, 2) = a: Cells(i, 3) = v: Cells(i, 4) = x

Wend

Предложенная компьютерная модель позволяет убедиться в том, что при  фазовая траектория стремится к некоторому множеству точек фазовой плоскости, которое называется аттрактором (рис. 2). Допустим, система имеет параметры: 0.2, 10, 0.2, частота вынуждающей силы 8. Промоделируем вынужденные колебания и рассчитаем фазовые траектории при начальных условиях: 1) 0.5, –2; 2) –0.8, 2. Получившиеся результаты приведены на рис. 2.1 и 2.2 соответственно. Независимо от начального состояния (оно показано черной точкой) через некоторое время система переходит в установившийся режим, соответствующий одному и тому же эллиптическому аттрактору. То, что аттрактором является эллипс, доказывает правильность решения.

 

 

Рис. 2. Фазовые кривые на плоскости  и . Резонансная кривая

 

Задача 2. Используя решение предыдущей задачи, проведите серию вычислительных экспериментов при различных частотах  и постройте резонансную кривую .

Механический резонанс состоит в резком увеличении амплитуды вынужденных колебаний , когда частота вынуждающей силы  совпадает с собственной частотой колебательной системы . Вычислим частоту собственных колебаний  (если 0.2, 10, то 7). С помощью программы 1 промоделируем вынужденные колебания, когда частота вынуждающей силы  изменяется вблизи . По получающимся таблице или графику  определим установившуюся амплитуду колебаний  при различных . На основе полученных результатов построим график зависимости амплитуды колебаний от частоты вынуждающей силы  (рис. 2.3). При приближении  к собственной частоте  происходит увеличение амплитуды вынужденных колебаний, наступает механический резонанс.

 

Задача 3. Промоделируйте автоколебательную систему, описанную уравнением Ван-дер-Поля: .

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

, , .

 

Используется программа 2; она выводит результаты вычислений через 20 оборотов цикла.

Программа 2

t = 0: dt = 0.003: m = 0.7: k = 0.6: b = 0.15: x = 0.02

While t < 200

t = t + dt: i = i + 1: a = (b * (1 – x * x) * v – k * x) / m

v = v + a * dt: x = x + v * dt

If i Mod 20 = 0 Then

Cells(i / 20, 1) = t: Cells(i / 20, 2) = a

Cells(i / 20, 3) = v: Cells(i / 20, 4) = x: End If

Wend

 

 

 

Рис. 3. Моделирование генератора Ван-дер-Поля

 

Полученные таблица и графики приведены на рис. 3. Как и в случае с вынужденными колебаниями, при  фазовая кривая автоколебаний стремится к аттрактору. Форма и размеры аттрактора не зависят от начальных условий, а определяются особенностями системы и ее параметрами (то есть видом дифференциального уравнения и входящими в него коэффициентами). В этом легко убедиться, повторив моделирование при других начальных условиях  и .

 

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

Для моделирования резонанса напряжений используются формулы:

 

, , , ,

, , , .

 

Здесь  – собственная частота колебательного контура. Программа 3 создает таблицу, в столбцах которой записываются значения частоты , силы тока , напряжения на резисторе , на катушке индуктивности , на конденсаторе  и тангенса сдвига фаз .

Сдвиг фаз между током и напряжением  вычисляют в седьмом столбце с помощью стандартной функции ATAN( ), исходя из значений в шестом столбце. Вблизи собственной частоты контура 1291 рад/с имеет место резонанс напряжений: , , а . Получившиеся графики ,  и  изображены на рис. 4.

 

Программа 3

R = 10: L = 0.02: C = 0.00003: U = 120

For i = 1 To 50

w = 200 + 50 * i: XL = w * L: XC = 1 / w / C

Z = Sqr(R * R + (XL – XC) * (XL – XC))

Tok = U / Z: UR = Tok * R: UL = Tok * XL: UC = Tok * XC

Cells(i, 1) = w: Cells(i, 2) = Tok: Cells(i, 3) = UR:

Cells(i, 4) = UL: Cells(i, 5) = UC: Cells(i, 6) = (XL – XC) / R

Next

 

 

 

Рис. 4. Электрический резонанс: графики ,  и

Задача 5. Маятник Дафинга представляет собой шарик, находящийся внутри потенциальной ямы с двумя углублениями так, что его потенциальная энергия . Изучите хаотические колебания шарика в случае, когда на него действует периодически изменяющаяся сила .

На шарик внутри потенциальной ямы действует возвращающая сила: . Вынужденные колебания маятника Дафинга описываются уравнением: . Для его решения может быть использована программа 4.

Программа 4

F = 1: k = 4: r = 0.5: m = 1: w = 2.3: dt = 0.001: fi = 2.64: faza = 1: t=0

While t < 80

j = j + 1: t = t + dt: z = Cos(w * t + faza)

a = (F * Cos(w * t) – k * (x * x * x – x) – r * v) / m

v = v + a * dt: x = x + v * dt

If j Mod 20 = 0 Then

Cells(j / 20, 1) = t: Cells(j / 20, 2) = x : Cells(j / 20, 3) = v

End If

Wend

 

 

 

Рис. 5. Маятник Дафинга: графики ,  и фазовая кривая.

           

Получившиеся графики ,  и фазовая кривая представлены на рис. 5. Видно, что при заданных параметрах системы, амплитуде и частоте вынуждающей силы происходят хаотические колебания. Шарик, совершив несколько колебаний в одном углублении, перескакивает в другое. Его движение неустойчивое, сильно зависит от начальных условий; фазовая кривая имеет многочисленные самопересечения.

 

Задача 6. Промоделируйте странный аттрактор Лоренца, уравнения которого имеют вид: , , .

Эта система дифференциальных уравнений описывает движение конвекционных потоков в атмосфере. Конечно-разностные уравнения выглядят так:

 

, , ,

, , .

Используется программа 5. Получившиеся фазовая кривая и график хаотических колебаний приведены на рис. 6. Система эволюционирует так, что фазовая кривая описывает закрученную восьмерку, захватывающую две большие области фазового пространства, образованного осями ,  и . Аттрактор Лоренца называется странным потому, что его фазовая кривая имеет фрактальную структуру.

 

 

 

Рис. 6. Странный аттрактор Лоренца: хаотическое движение

 

Программа 5

a = 15: b = 30: c = 2.2: dt = 0.001

x = 20: y = 20: z = 5

While i< 20000

i = i + 1: x = x + a * (-x + y) * dt

y = y + (b * x – y – x * z) * dt: z = z + (-c * z + x * y) * dt

If i Mod 10 = 0 Then Cells(i / 10, 1) = i * dt

If i Mod 10 = 0 Then Cells(i / 10, 2) = x

If i Mod 10 = 0 Then Cells(i / 10, 3) = y

If i Mod 10 = 0 Then Cells(i / 10, 4) = z

Wend

 

Рассмотренные выше задачи рассчитаны на студентов педагогических вузов, обучающихся по профилям «Физика», «Математика», «Информатика». Их использование предусматривает формирование профессиональной компетентности в области компьютерного моделирования систем и применения вычислительных экспериментов в учебном процессе. Некоторые из представленных выше компьютерных моделей могут быть проанализированы на уроках информатики в школе.

Выбор электронных таблиц Excel обусловлен тем, что этот программный продукт имеет большие возможности и изучается в современной школе. Если преподаватель вуза хорошо ориентируется в других средах программирования или специализированных пакетах программ, то он может несколько занятий посвятить созданию компьютерных моделей и решению задач на другом языке программирования. При этом наличие решения той или иной задачи в среде Excel только упрощает дело. В любом случае освоение дисциплины «Компьютерное моделирование» требует изучения простых и эффективных алгоритмов, позволяющих численно интегрировать дифференциальные уравнения и моделировать простые явления, а также овладения методами создания несложных программ простыми средствами.

При обсуждении задач на моделирование колебательного движения в педагогическом вузе может быть использована следующая методика. Преподаватель на лекции формулирует условие той или иной задачи, создает рисунок, записывает дифференциальные и конечно-разностные уравнения, объясняет алгоритм решения и обсуждает используемые компьютерные программы. На следующем занятии, проводимом в компьютерном классе, студенты создают соответствующий файл Excel, набирают программы в модуле для макросов, отлаживают их и проводят серию вычислительных экспериментов. Условия задачи, программу и результат решения студенты записывают в тетрадь. Каждая программа позволяет решить целую совокупность задач при различных параметрах системы, начальных условиях и внешних воздействиях. При необходимости преподаватель создает PDF-документ, который содержит список заданий и программы макросов; он размещается на всех компьютерах класса. Студенты работают самостоятельно; те, кто быстро справился с первым заданием, переходят ко второму и т. д. Решение большего числа задач приводит к получению более высокой оценки.

Настоящая работа содержит решение проблемы использования электронных таблиц MS Excel для моделирования некоторых физических систем, которая имеет существенное значение в области внедрения ИТ в учебный процесс школы и вуза. Автор лично использовал эти и другие компьютерные модели в работе со студентами педагогического вуза и убедился в том, что их применение способствует пониманию численных методов решения дифференциальных уравнений, установлению межпредметных связей между математикой, физикой, информатикой и повышению интереса к этим дисциплинам. Они могут быть использованы на практических занятиях по компьютерному моделированию, при выполнении различных конкурсных, курсовых и дипломных работ, организации учебно-исследовательских проектов.