ПРИЛОЖЕНИЕПри изучении многомерных СП, т. е. случайных функций многих переменных, приходится оперировать с многомерными массивами данных. Удобным математическим аппаратом для такого анализа являются многомерные матрицы и тензоры [16, 21], элементы теории которых изложены в первой части этого приложения в удобной для применения форме. При решении различных задач обработки изображений и в других приложениях нередко требуется возводить в большие степени и обращать различные матрицы. Во второй части приложения приведены сведения из изящной теории матричных функций [7], применение которых позволяет выполнить эти операции с небольшими вычислительными затратами.
1. МНОГОМЕРНЫЕ МАТРИЦЫ И ТЕНЗОРЫ
Рассмотрим способы задания линейных преобразований скаляров, векторов и многомерных массивов. Напомним, что преобразование y=y(x) линейного пространства элементов x в линейное пространство элементов y называется линейным, если y(cx) = cy(x) и y(x+x1) = y(x) + y(x1) для любого скаляра c и любых x и x1. Любое линейное преобразование скалярных величин x в скалярные величины y может быть представлено в форме y = a1x, где a1 – скаляр. Это соотношение запишем в виде y1 = a1x1. Для задания преобразования векторов в векторы необходимо задать зависимость каждой из компонент вектора от компонент вектора . В случае линейности преобразования эта зависимость имеет вид (П.1) Здесь aij – постоянные коэффициенты, которые представим в виде матрицы A. В матричных обозначениях (П.1) может быть записано как . (П.2) Рассмотрим теперь преобразование -матриц X = {xij} в -матрицы Y = {yij}. Для линейности преобразования нужно, чтобы компоненты матрицы Y линейно зависели от компонент X: , где aijkl – постоянные коэффициенты. Обобщая эти частные случаи, можно сделать вывод, что любое линейное преобразование m-мерных массивов в n–мерные массивы может быть задано равенством , (П.3) где – постоянные для данного преобразования коэффициенты. Обозначая совокупность этих коэффициентов через A, можно, по аналогии с (П.2), представить (П.3) в краткой форме Y=AX при очевидных соглашениях о смысле этой записи. Итак, для задания линейного преобразования массива размерности m в массив размерности n необходимо задать массив коэффициентов размерности m+n. Матрицей размерности n называется совокупность действительных или комплексных чисел . При этом n называется размерностью матрицы A, а – ее размерами. При n=1 и M1=1 получаем скаляр; при n=1 и M1=m – вектор; при n=2 – обычную (двумерную) -матрицу , которую представляют в виде таблицы чисел (рис. П.1).
Рис. П.1. Трехмерную матрицу можно представить как трехмерную таблицу чисел, а графически изобразить "послойно", обозначая направления изменения соответствующих индексов. Например, на рис. П.2 изображена трехмерная матрица размеров . В трехмерном пространстве две таблицы, разделенные на рисунке пунктиром, находились бы одна за другой. Рис. П.2.
На рис. П.3 изображена четырехмерная матрица размеров . Подобным образом можно изобразить графически матрицу любой размерности. Если в n-мерной матрице A фиксировать какие-нибудь m ее индексов, а остальные оставить изменяющимися, то получится (n-m)-мерная матрица, называемая сечением матрицы A. Например, матрица справа от пунктира на рис. П.2 является (i3=2)-сечением, а вторая строка слева от пунктира – (i1=2, i3=1)-сечением матрицы A.
Рис. П.3.
Умножение матрицы на число и сумма (разность) матриц одинаковых размеров определяются так же, как и для двумерных матриц. Умножение многомерных матриц аналогично умножению двумерных матриц, но более разнообразно и выполняется с применением правил тензорного исчисления зацепления, свертывания или сокращения индексов: если некоторый индекс встречается в выражении дважды, то выражение должно быть по этому индексу просуммировано. Например, . Индексы, по которым производится суммирование, называются немыми. Индексы, не являющиеся немыми, называются свободными. После выполнения суммирования по немому индексу i данный индекс в результирующем выражении исчезает, поэтому немой индекс может быть заменен любым другим, не встречающимся в выражении, например, aijxj=aikxk. Свободные же индексы в результирующем выражении сохраняются. Применяя описанное правило, можно получать различные произведения одних и тех же матриц, варьируя совокупность немых индексов. Например, для матриц A и B, изображенных на рис. П.1 и рис. П.2, можно образовать произведения: , (П.4) , (П.5) (П.6) и т. д. При использовании формулы (П.4) умножение трехмерной матрицы A на четырехмерную B приводит к семимерной матрице F, получающейся умножением каждого элемента матрицы A на каждый элемент матрицы B. Такое произведение называется прямым или внешним, все индексы в нем свободные, обозначается оно . В (П.5) произведением тех же матриц является пятимерная матрица G, так как третий индекс матрицы A и третий индекс матрицы B обозначены одним символом k, т. е. являются немыми и после суммирования исчезают. Например, элемент g42121 = a42kb12k1 = a421b1211 + a422b1221. В (П.6) результатом умножения является трехмерная матрица, так как немых индексов уже два – k и l. Например, элемент . Произведения, в которых имеются немые индексы, называются (в отличие от внешних произведений) внутренними и могут быть выполнены в два этапа: сначала выполняется прямое произведение, а затем свертываются нужные пары индексов, т. е. заменяются одним. Как и при умножении двумерных матриц, необходимо соответствие размеров. Например, для выполнимости (П.6) необходимо, чтобы размеры и матриц A и B удовлетворяли условиям: и . Свертывание по каждому индексу уменьшает размерность прямого произведения на два. Следовательно, при умножении двух матриц размерностей m и n можно получить матрицы размерностей m+n, m+n-2, …, |m-n|. Если m=n, то результатом умножения может быть даже скаляр, как, например, в произведении {aij}{bji}. В этих обозначениях обычное умножение двумерных матриц записывается в виде {aik}{bkj}, умножение матрицы на вектор – {aij}{xj}, скалярное произведение векторов – {xi}{yi}. При этом отпадает необходимость в символе операции транспонирования: записывается как {aij}{xi}. Если в многомерной матрице переставить местами индексы, то получится, вообще говоря, другая матрица, называемая изомерой матрицы A. Количество изомер равно n! Например, если в -матрице (рис. П.1) переставить местами i2 и i3, то получится -матрица, показанная на рис. П.4. Такие операции являются обобщением операции транспонирования двумерных матриц. Если все изомеры совпадают между собой, то матрица A называется симметричной. Естественным образом определяется произведение трех и более матриц, например, . При этом операции сложения матриц, умножения их на число и перемножения обладают, как и в случае двумерных матриц, свойствами ассоциативности, коммутативности и дистрибутивности, кроме коммутативности умножения матриц, которое выполняется только с точностью до изомеры.
Рис. П.4.
Иногда удобно группировать индексы многомерных матриц, например, обозначить матрицу как , где и . При этом групповой индекс во всех операциях над матрицами выступает как единое целое, и индексы, входящие в и , не могут быть переставлены. Матрица имеет только две изомеры: и , а не (m+n)! , и при m=n может оказаться симметричной, даже если не симметрична. Как уже отмечалось, каждое линейное преобразование m-мерных массивов в n-мерные массивы может быть записано в виде , (П.7) где и . И наоборот, каждая m+n-мерная матрица определяет некоторое линейное преобразование по формуле (П.7). Если, кроме этого, Z=BY – линейное преобразование , то суперпозиция этих двух преобразований Z=B(AX)=(BA)X имеет матрицу . Если базис, т. е. систему координат линейного пространства, сменить, то это приведет и к изменению матрицы данного преобразования, т. е. каждому линейному преобразованию будет соответствовать совокупность многомерных матриц. В тензорном анализе n-мерная матрица называется тензором ранга n, если выполнены некоторые условия, связанные с изменением элементов этой матрицы при замене системы координат. Например, выражение «тензор линейного преобразования» означает матрицу этого преобразования в соответствующей системе координат. В рамках задач данного пособия не требуется преобразований различных координат, поэтому упомянутые условия выполнены и справедлива тензорная терминология. Например, если – СП и , то будем называть тензором преобразования СП в СП . Здесь же отметим, что применительно к СП удобнее записывать индексы компонент тензоров только снизу, используя верхний индекс как временной. Особое значение имеют многомерные тензоры четной размерности 2n вида , где групповые индексы и имеют одинаковые размеры . Такие тензоры называются квадратными. Они задают линейные преобразования массивов в массивы тех же размеров. Это сближает многомерные квадратные матрицы с квадратными двумерными. Единичной матрицей называется квадратная матрица , где – символ Кронекера. Она задает тождественное преобразование EX=X. Матрицей, обратной к квадратной матрице , называется матрица такая, что и . Обратную матрицу можно вычислить следующим образом. Пронумеруем все значения группового индекса числами от 1 до и составим двумерную матрицу , где , которая называется разверткой матрицы A и определяется с точностью до одновременной перестановки строк и столбцов. Детерминантом матрицы A будем называть детерминант ее развертки: . Очевидно, что детерминант не зависит от способа развертки. Если , то матрица A называется неособенной, а ее развертка имеет обратную матрицу . Применяя к процедуру, обратную развертке, получим искомую обратную матрицу . Рассмотрим теперь операции дифференцирования тензоров, составленных из функций. Если имеется скалярная функция a(x) одного скалярного переменного x, то ее производная определяется обычным способом. Если – векторная функция скалярного аргумента x, то ее производная по x определяется как , т. е. следует взять производную по x от каждой из компонент вектора . Производная тензора , зависящего от одного скалярного переменного x, определяется аналогично: , т. е. тензор дифференцируется поэлементно. Пусть – скалярная функция векторного аргумента . Ее можно рассматривать и как функцию n скалярных переменных : . Она имеет n частных производных , из которых можно составить вектор , называемый производной функции по векторной переменной . В общем случае скалярной функции тензорного аргумента ее производная определяется равенством и является тензором той же размерности, что и X. Пусть – векторная функция векторного аргумента . Производной функции по вектору называется матрица , составленная из частных производных всех компонент векторной функции по всем компонентам ее аргумента, что можно записать в сокращенном виде, как . (П.8) По аналогии с (П.8), производная тензора ранга n по тензору ранга m определяется как (П.9) и является тензором ранга n+m. Очевидно, что dX/dX = E – единичный тензор. Рассмотрим тензор и дадим его аргументу приращение , т. е. дадим каждому аргументу приращение ; тогда тензор получит приращение , состоящее из приращений его составляющих. Линейная часть приращения , т. е. дифференциал, определяется равенством . Отсюда следует, что тензор , составленный из дифференциалов его составляющих, может быть записан в следующей форме: . Если – зависимый тензор, то , т. е. , поэтому . (П.10) Формулы дифференцирования сложных тензорных функций аналогичны их скалярным вариантам: поэтому первый дифференциал имеет инвариантную форму (П.10) независимо от того, является зависимым или независимым переменным. Производные и дифференциалы высших порядков определяются как . Столь же легко обобщается дифференцирование скалярных функций k переменных на аналогичные тензорные: . (П.11) При этом полный дифференциал определяется выражением . (П.12) Это определение можно распространить и на составные тензоры. Пусть , где – тензоры, тогда X называется составным тензором. Составной тензор, вообще говоря, не является тензором в обычном смысле. Действительно, пусть – тензор размеров и – тензор размеров , тогда тензором в обычном смысле не является, так как эту совокупность чисел нельзя представить в виде потому, что в Х есть, например, элемент , но нет элемента . В составном тензоре значения одних индексов ограничиваются значениями других, а в несоставном каждый индекс принимает значения независимо от остальных. Совокупность является тензором, если все составляющие – тензоры одинаковых размеров. Пусть , – составные тензоры и , тогда , , что является обобщением формул (П.11) и (П.12). Отметим следующие правила тензорного дифференцирования: , , , , , где B – произвольный постоянный тензор и – симметричный тензор. Рассмотрим ряд Тейлора для скалярной функции двух скалярных переменных : который можно представить в виде где тензор ; тензор приращений и – прямое n-кратное произведение . Полученное выражение – полная аналогия ряда Тейлора скалярной функции одной скалярной переменной. В несколько более общем случае скалярной функции любого тензорного аргумента имеем разложение . (П.13) Если задана система таких функций, составляющая тензорную функцию тензорного аргумента , то, записывая (П.13) для каждой из них и образуя тензоры из однотипных членов этих рядов, получаем тензорный ряд Тейлора , (П.14) по форме не отличающийся от ряда Тейлора скалярной функции одного скалярного аргумента.
|