algdeintrlv

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

Синтаксис

deintrlvd = algdeintrlv(data,num,'takeshita-costello',k,h)
deintrlvd = algdeintrlv(data,num,'welch-costas',alph)

Описание

deintrlvd = algdeintrlv(data,num,'takeshita-costello',k,h) восстанавливает исходное упорядоченное расположение элементов в data использование таблицы сочетания, которая алгебраически выведена с помощью метода Такесита-Костелло. num число элементов в data если data вектор или количество строк data если data матрица с несколькими столбцами. В методе Такесита-Костелло, num должна быть степень 2. Мультипликативный фактор, k, должно быть нечетное целое число меньше, чем num, и циклический сдвиг, h, должно быть неотрицательное целое число меньше, чем num. Если data матрица с несколькими строками и столбцами, функциональные процессы столбцы независимо.

deintrlvd = algdeintrlv(data,num,'welch-costas',alph) использует валлийский-Costas метод. В валлийском-Costas методе, num+1 должно быть простое число. alph целое число между 1 и num это представляет примитивный элемент конечного поля GF (num+1).

Использовать эту функцию в качестве инверсии algintrlv функция, используйте те же входные параметры в обеих функциях, за исключением data входной параметр. В этом случае две функции являются инверсиями в том смысле, что применение algintrlv сопровождаемый algdeintrlv оставляет данные без изменений.

Примеры

свернуть все

Этот пример использует метод Такесита-Костелло algintrlv и algdeintrlv.

Сгенерируйте случайные символы данных, чтобы чередоваться. Количество строк входных данных, num, должна быть степень двойки.

num = 16; 
ncols = 3; 
data = rand(num,ncols)
data = 16×3

    0.8147    0.4218    0.2769
    0.9058    0.9157    0.0462
    0.1270    0.7922    0.0971
    0.9134    0.9595    0.8235
    0.6324    0.6557    0.6948
    0.0975    0.0357    0.3171
    0.2785    0.8491    0.9502
    0.5469    0.9340    0.0344
    0.9575    0.6787    0.4387
    0.9649    0.7577    0.3816
      ⋮

Чередуйте символы с помощью метода Такесита-Костелло. Установитесь мультипликативный коэффициент, k, до нечетного целого числа меньше, чем num, и циклический сдвиг, h, до неотрицательного целого числа меньше, чем num.

k = 3;
h = 4;
intdata = algintrlv(data,num,'takeshita-costello',k,h)
intdata = 16×3

    0.9572    0.6555    0.1869
    0.2785    0.8491    0.9502
    0.1576    0.7431    0.7655
    0.0975    0.0357    0.3171
    0.8147    0.4218    0.2769
    0.1270    0.7922    0.0971
    0.9058    0.9157    0.0462
    0.9575    0.6787    0.4387
    0.5469    0.9340    0.0344
    0.1419    0.0318    0.6463
      ⋮

Устраните чередование символов, чтобы получить первоначальный заказ.

deintdata = algdeintrlv(intdata,num,'takeshita-costello',k,h)
deintdata = 16×3

    0.8147    0.4218    0.2769
    0.9058    0.9157    0.0462
    0.1270    0.7922    0.0971
    0.9134    0.9595    0.8235
    0.6324    0.6557    0.6948
    0.0975    0.0357    0.3171
    0.2785    0.8491    0.9502
    0.5469    0.9340    0.0344
    0.9575    0.6787    0.4387
    0.9649    0.7577    0.3816
      ⋮

Ссылки

[1] Heegard, Крис, и Стивен Б. Викер, турбокодирование, Бостон, Kluwer академические издатели, 1999.

[2] Takeshita, O. Y. и Д. Дж. Костелло младший, “Новые Классы Алгебраического Interleavers для Турбокодов”, Proc. 1 998 IEEE Международный Симпозиум по Теории информации, Бостону, 16-21 августа 1998. p. 419.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

Представлено до R2006a