Что такое тензоры, зачем они нужны и что с ними можно делать?


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

 

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

 

Вместо того, чтобы объединить все определяющие свойства тензора в одно длинное и непонятное определение, разобьём его на три части и разберём каждую часть по-отдельности.

 

 

1. Тензор – математическое представление некоторого объекта в пространстве.

 

Под представлением обычно понимается таблица значений, причём таблица не обязательно в привычном нам двумерном виде, как, например, компоненты матрицы. В случае тензора таблица может быть многомерной или даже бесконечномерной. Число измерений, в которых существует рассматриваемый объект, определяет размерность тензора.

 

 

2. Если система координат, в которой находится объект, изменяется, это влечёт за собой изменение компонент тензора.

 

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

 

Чтобы было понятнее, сразу обратимся к примеру: пусть на оси Х расположен вектор, начало которого лежит в нуле, а координата конца равна 3 (по оси Х). Теперь растянем ось Х в 3 раза, оставляя сам вектор нетронутым. В новой системе координат наш вектор будет иметь по оси Х координату 1. Таким образом, при растяжении системы координат в 3 раза, сам вектор «растянулся» относительно этой системы в 1/3 раз. Это пример контравариантности.

 

 

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

 

Почему же градиент конвариантен? Рассмотрим функцию двух переменных f = 2x + 3y. Найдём её частные производные:

 

 

 

Градиент, таким образом, имеет координаты (2, 3). А теперь снова растянем нашу систему координат, например, в N раз. Тогда:

 

 

Как можно видеть, при растяжении координат градиент функции f растянулся вместе с ними. Это пример конвариантности.

 

 

3. Существуют такие величины, которые остаются неизменными при преобразовании компонент тензора.

 

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

 

Скаляр – это тензор нулевого ранга. Вектор – тензор первого ранга. Тензор третьего ранга, как можно догадаться, – это матрица.

 

Тензор, как объект, не изменяется от изменения системы координат. Изменяются только его компоненты. Компоненты тензора как бы подгоняются под изменившуюся систему координат, но от этого сам объект не меняется.

 

Например, рассмотрим поле температур в комнате, где Вы сидите. Каждая точка комнаты обладает своей температурой, и температура в каждой точке – это просто число, скаляр. Всё поле температур (совокупность всех этих точек) – это тензор. И если Вы начнёте двигать или растягивать воображаемые оси своей комнаты, то температура в ней под воздействием Вашего воображения, очевидно, не изменится =) Каждая точка будет и дальше обладать той же самой температурой, независимо от координат.

 

 

-------------- ⊰ ∮ ⊱ --------------

 

 

Рассмотрим базовые свойства тензора. Во-первых, тензоры одинаковой структуры можно складывать друг с другом. Сложение покомпонентно и аналогично сложению матриц, которое я разбирал в этой статье. Умножение тензора на скаляр также аналогично умножению матрицы на скаляр: каждая компонента тензора умножается на этот скаляр. На этом останавливаться не будем, а перейдём сразу к умножению тензоров друг на друга.

 

Пусть имеются две системы: А и В. Пусть первая система – это монетка, а вторая – игральный кубик, чтобы было повеселей =) Назовём пространство состояний первой системы SA. Это пространство состояний будет состоять из двух элементов: О (орёл) и Р (решка). Пространство состояний SB второй системы, в свою очередь, будет включать в себя шесть элементов: 1, 2, 3, 4, 5 и 6 по количеству очков на каждой стороне игрального кубика.

Тензор состояний первой системы представим в виде матрицы-столбца, а второй – в виде матрицы-строки:

 

 

Найдём тензорное произведение двух этих тензоров. Тензорное произведение обозначается как

 

 

А в матричном виде тензорное произведение превратится в матрицу 2х6:

 

 

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

 

 

В общем случае тензорное произведение, как и произведение матричное, некоммутативно.

 

 

-------------- ⊰ ∮ ⊱ --------------

 

 

Ещё одна операция над тензорами, которую нельзя не упомянуть – свёртка тензора. Интуитивно понятно, что свёртка связана с уменьшением размерности, а в нашем случае – с уменьшением ранга тензора. Проще понять это свойство на известном нам примере из школьной математики. При скалярном произведении двух векторов в результате, как известно, получается просто число, скаляр (отсюда и название этой операции). А скалярное произведение вектора на самого себя даёт нам длину этого вектора.

 

Свёртка тензоров в чём-то схожа по смыслу со скалярным произведением векторов и возможна только с тензорами более второго ранга. При свёртке ранг тензора уменьшается на 2, и, таким образом, любой тензор чётного ранга можно свернуть в скаляр (тензор нулевого ранга), а любой тензор нечётного ранга – в тензор первого ранга, т.е. в вектор.

 

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

 

Надеюсь, что эта лекция хоть немного помогла Вам в понимании понятия тензора. Спасибо за внимание!

Предмет: Основы высшей математики | | | Теги: математика, матрицы, высшая математика, тензоры, векторы, линейная алгебра
Другие лекции по данной тематике:
Всего комментариев: 0
Имя *:
Email *:
Все смайлы
Код *:
close