В статье про матричный подход к получению безразмерных величин, мы не рассматривали, почему в коде ищется нуль-пространство для матрицы. Восполним этот пробел.
Итак, допустим для некоторой задачи есть набор исходных величин, характеризующих процесс. Мы знаем, что в соответствии с Пи-теоремой Бакингема, можно сформировать безразмерные числа (определенное количество) из этих величин, умножая и деля друг на друга данные исходные величины. Безразмерных чисел будет меньше, чем исходных единиц измерения. Это помогает упростить эксперимент, да еще и позволяет масштабировать процессы. Об этом и есть книга [1].
Для нашего примера, мы даже не будем вдаваться в суть постановки. Нам достаточно набора исходных единиц измерения. Пусть он такой:
Интересно, что в книге [1] Пи-теорема сама по себе дана в матричной форме:
“Любое физическое соотношение n физических величин между собой может быть редуцировано к соотношению между m = n — r взаимно независимых безразмерных групп, где r — ранг матрицы размерностей.”
Формирование матрицы размерностей из исходных величин
В данной задаче, базовых единиц три — килограмм (m), метр (l) и секунда (T). Из них получаются все единицы исходных величин. Каждая строка матрицы соответствует определенной базовой единице. Первая строка — килограммам, вторая метрам, третья — времени, секундам. Столбец соответствует единице измерения исходной величины. То есть, первый столбец соответствует паскалям, второй — кубометрам в секунду и так далее. На пересечениях строки и столбца пишется показатель степени базовой единицы в единице измерения исходной величины. То есть например, показателем секунд в выражении Паскаля является -2, поэтому в первом столбце, на третьей строке записана цифра -2. Столбцы и строки для краткости обозначим не единицами измерения, а величинами.
| rho d nu | dp q l x1
m | 1 0 0 | 1 0 0 x2
l | -3 1 2 | -1 3 1 x = x3
T | 0 0 -1 | -2 -1 0 x4
core residual x5
x6
Редуцирование
Итого, нам нужно найти линейные комбинации показателей (вектор коэффициентов, x), такие что уравнение Ax = 0 выполняется. То есть линейная комбинация показателей (а это соответствует перемножению и делению исходных величин) становится безразмерной. Умножение каждой строки матрицы A на такой вектор x, мы получаем какую то дробь в которой делятся и умножаются исходные величины, а значит их показатели линейно комбинируются по найденному для нашей системы решению.
При этом то, что матрица A не квадратная приводит к наличию основных (core) и свободных переменных. То-есть если мы определим, например x1, x2 и x3, то они будут выражены через x4, x5 и x6. Последние называются свободными переменными. Их можно выбирать как угодно, чтобы получить частные решения системы Ax = 0.
Редуцирование ведется методом сложения/вычитания строк, помноженных на множитель. Мы не будем этот процесс тут приводить. Любую матрицу можно привести к ступенчатой форме линейными манипуляциями со строками. Мы покажем лишь результат редуцирования. Для любопытствующих, выкладки для этой самой матрицы есть в книге [1], стр. 19.
rho d nu | dp q l
1 0 0 | 1 0 0
0 1 0 | -2 1 1
0 0 1 | 2 1 0
Как работают линейные комбинации
В результате предыдущего параграфа мы имеем матрицу с единичным левым блоком (rho, d, nu). А это значит, что значения вектора x, а именно x1 ,x2, x3 могут быть легко выражены из трех строк системы, то есть:
или
Свободные переменные мы выбираем как хотим, и примем их так, чтобы не было зависимости:
Вариант 1:
Вариант 2:
Вариант 3:
Для первого варианта имеем полный вектор:
x1 -x4 -1
x2 2*x4 - x5 - x6 2
x' = x3 = -2*x4 - x5 = -2
x4 1 1
x5 0 0
x6 0 0
Вот этот вектор x’, если его помножить на первую строку в матрице А(1,:), дает ноль. Это значит, что показатели степеней килограммов у произведения исходных величин, которое соответствует A(1,:)*x’, будут обнуляться. Безразмерная величина «по килограммам» получится. Проверим по всем базовым единицам:
-1
2
1 0 0 | 1 0 0 * -2 = -1 + 1 = 0 (килограммы обнуляются)
1
0
0
-1
2
-3 1 2 | -1 3 1 * -2 = 3 + 2 - 4 - 1 = 0 (метры тоже обнуляются)
1
0
0
-1
2
0 0 -1 | -2 -1 0 * -2 = 2 - 2 = 0 (и секунды обнуляются)
1
0
0
Вывод: действительно этот вектор является набором показателей исходных единиц измерения, при котором базовые единицы измерения исчезнут, сократятся. Этот вектор соответствует вот такому произведению/делению исходных единиц:
Для варианта 2 и варианта 3 мы так же получим ещё две безразмерных величины. Именно поэтому, при решении задачи обезразмеривания данного процесса в книге [1] ищется нуль пространство, состоящее из трех таких векторов.
Литература
[1] — Marko Zlokarnik — Scale-up in Chemical Engineering, 2nd, Completely Revised and Extended Edition, 2006