МОДЕЛИРОВАНИЕ РАЗМЕРНОСТИ СИСТЕМЫ ФИЗИЧЕСКИХ ВЕЛИЧИН СРЕДСТВАМИ ЯЗЫКА PASCALABC

Статья опубликована в рамках: Международной научно-практической интернет-конференции «Актуальные проблемы методики обучения информатике в современной школе» (Россия, г.Москва, МПГУ,16 — 17 февраля 2016г.)

МОДЕЛИРОВАНИЕ РАЗМЕРНОСТИ СИСТЕМЫ ФИЗИЧЕСКИХ ВЕЛИЧИН СРЕДСТВАМИ ЯЗЫКА PASCALABC

Богданов Алексей Александрович
Институт математики, информационных и космических технологий
Северный (Арктический) федеральный университет им. М.В. Ломоносова
Россия, e-mail: a2bogdanov@yandex.ru

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

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

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

В качестве такой модели будет интересно рассмотреть представление размерности физических величин в виде векторов, хранимых в массивах целых чисел. Для обозначения размерности одной физической величины достаточно одного вектора фиксированной длины. Длина вектора определяется широтой охвата курса физики.

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

В таком представлении размерность физических величин механики можно представить в следующем виде:

  • время (1,0,0), [с1] = [с];
  • расстояние (0,1,0), [м1] = [м];
  • масса (0,0,1), [кг1] = [кг];
  • площадь (0,2,0), [м2];
  • ускорение (-2,1,0), [с-2 м1] = [м12] = [м/с2];
  • сила (-2,1,1), [с-2 м1 кг] = [кг м/с2] = [Н];
  • работа/энергия (-2,2,1), [с-2 м2 кг] = [кг м22] = [Дж];
  • мощность (-3,2,1), [с-3 м2 кг] = [кг м23] = [Вт];

Теперь можно написать алгоритм проверки корректности формул физики (с точностью до констант!). Например, кинетическая энергия

E = m*V^2/2: (0,0,1)+(-1,1,0)*2 = (-2,2,1)
=> получили размерность энергии.

Рассмотрим модель данных разрабатываемого приложения.

Вектор фиксированной длины удобно представлять в виде массива. В языке Pascal для вектора фиксированной длины целых чисел можно ввести свой тип данных и в дальнейшем использовать только его. Такой тип данных также должен включать название физической величины, её краткое обозначение и уникальное имя единицы измерения, если для физической величины есть собственная единица измерения.

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

Для вычисления операций умножения и деления размерностей физических величин потребуется описать в виде функций операции сложения и деления векторов.

Для ввода вектора необходимо реализовать алгоритм простого парсера, который разбирает выражение из операций умножения и деления, обозначаемых символом пробела [‘ ’] и деления [‘/’]. Для простоты, возведение в степень будем обозначать целым числом, вплотную следующим за символом. Например, строка «м2» обозначает площадь. А строка «Н/м2» или «F/S» будет давать размерность давления. Применение встроенной функции Split позволяет разделить строку сначала на числитель и знаменатель знаком деления, а затем пробелом на элементы.

Элементы строки могут быть кратким обозначением физической величины или единицей измерения физической величины. Для простоты, можно обозначать краткие имена физических величин латинскими буквами (F,S,V,v,ro,a,m,t,…), а единицы измерения кириллицей (м, с, Н, Па, Дж, Вт, …). Такая договоренность, упрощает реализацию алгоритма поиска размерностей в списке, т.к. искать нужно по разным полям типа.

Алгоритм парсера на вход получает выражение и переводит его в размерность в виде целочисленного вектора.

Полученный функционал можно использовать в различных сценариях. Рассмотрим некоторые из них.

Первоначально список размерностей физических величин пуст. И ученик, заполняет его вводом с клавиатуры или из файла конфигурации, в зависимости от реализации своей версии программы.

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

С расширением количества понятий, хранимых в списке, можно реализовать несколько сценариев тренажера для интенсификации процесса запоминания. Например, по названию физической величины ввести ее представление в виде выражения базовых единиц измерения или собственной единицы измерения. Или наоборот, по выражению базовых единиц измерения или собственной единицы измерения определить название физической величины.

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

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

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

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

ЛИТЕРАТУРА

  1. Программный учебно-методический комплекс по решению физических задач в школе // Труды X Юбилейной Международной научно-практической конференции «Современные ИТ в образовании», МГУ ВМК 2015.

Отправить ответ

Уведомить о
avatar
Sort by:   newest | oldest | most voted
Т.Б. Захарова

Уважаемый Алексей Александрович! Безусловно, реализация межпредметных связей остается одной из важнейших дидактических задач. Конечно, надо в образовательном процессе по информатике использовать материал из различных предметных областей, в том числе и из физики. На мой взгляд, Вы предлагаете интересный вариант решения некоторых аспектов этой среьёзной проблемы. Ваш опыт будет полезен нашим коллегам. Спасибо Вам!

wpDiscuz