CONTROL OF THE UNITS OF MEASUREMENT OF PHYSICAL QUANTITIES IN MATHEMATICAL SIMULATION ON PYTHON
Abstract and keywords
Abstract (English):
The thesis reveals the problem of units of measurement of physical quantities in mathematical simulation of technological processes using the Python programming language. General information about the purpose and capabilities of the “Pint” module is given. It is shown the module allows you to perform mathematical calculations with taking control of units of measurement

Keywords:
mathematical simulation, units of measurement, Python programming language, ‘Pint module
Text
Publication text (PDF): Read Download

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

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

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

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

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

Работая с модулем “Pint” разработчик математической модели для обозначения физической величины должен использовать не стандартный тип переменной языка Python, а экземпляр специального класса этого модуля. Данный класс позволяет хранить в своём экземпляре не только значение физической величины, но также и ее размерность. Кроме того, он содержит в себе методы преобразования значения физической величины в другие виды размерностей, а также контролирует соответствие размерностей при выполнении с ними различных математических операций. Например, при суммировании двух потоков, расходы которых заданы в разных единицах измерения, разработчик математической модели должен привести все расходы к единой единицы измерения, и только после этого выполнять требуемые операции над ними. Без подобного преобразования интерпретатор Python выполнит формальное арифметическое сложение значений без учета различий в их метрике, допустив, тем самым, ошибку по сути. Однако, выполняя расчеты с экземплярами класса модуля “Pint”, разработчик модели избегает подобных ошибок, так как перевод к единой единице измерения в математических операциях будет выполняться автоматически. Попытка сложить значения, которые относятся к различным видам расхода (массовый и объемные расходы), приведет к выдаче экземпляром класса “Pint” ошибки. Это не позволит осуществить формальное выполнение арифметических действий без учета их физического смысла и предотвратит ошибку в расчетах.

References

1. Poling, B.E., Prausnitz, J.M., O’Connell J.P. The Properties of Gas and Liquids. 5th ed. - NY: McGraw-Hill, 2003. - 803 p.

Login or Create
* Forgot password?