Функция complex
Функция complex создает комплексный тензор из двух вещественных тензоров.
Первым параметром функция принимает тензор действительных частей,
вторым параметром - тензор мнимых частей.
Тензоры должны иметь одинаковую форму.
Возвращает тензор с комплексным типом данных.
Синтаксис
torch.complex(real, imag)
Пример
Давайте создадим комплексный тензор из двух одномерных тензоров:
import torch
real = torch.tensor([1, 2, 3])
imag = torch.tensor([4, 5, 6])
t = torch.complex(real, imag)
print(t)
Результат выполнения кода:
tensor([1.+4.j, 2.+5.j, 3.+6.j])
Пример
Создадим двумерный комплексный тензор:
import torch
real = torch.tensor([
[1, 2],
[3, 4],
])
imag = torch.tensor([
[5, 6],
[7, 8],
])
t = torch.complex(real, imag)
print(t)
Результат выполнения кода:
tensor([
[1.+5.j, 2.+6.j],
[3.+7.j, 4.+8.j],
])
Пример
Попробуем создать комплексный тензор с разными типами данных:
import torch
real = torch.tensor([1.5, 2.5], dtype=torch.float64)
imag = torch.tensor([3.5, 4.5], dtype=torch.float64)
t = torch.complex(real, imag)
print(t.dtype)
Результат выполнения кода:
torch.complex128
Пример
Комплексный тензор можно использовать в математических операциях:
import torch
real = torch.tensor([1, 2])
imag = torch.tensor([3, 4])
t1 = torch.complex(real, imag)
t2 = torch.complex(real + 1, imag + 1)
res = t1 + t2
print(res)
Результат выполнения кода:
tensor([3.+7.j, 5.+9.j])