encsttc.m

来自「sttc」· M 代码 · 共 54 行

M
54
字号
function [s,data_mod,v] = encsttc(g1,g2,input,M)

[a b]= size(input);
v1 = length(g1)-1;
v2 = length(g2)-1;
v = v1+v2; % memory degree
m =log2 (M);     

% serial to paralel
n_kol = b/m;
for index=0:n_kol-1
    c(:,index+1) = input(1,(m * index)+1:m*(index+1));
end

temp = zeros (m,v);

for k=0:n_kol-1 % time
    % initialzation
    for in=0:v-2
        temp(:,v-in)=temp(:,v-in-1);
    end
    temp(:,1)=c(:,k+1);
    
    % symbol = g*c
    for l=1:m
        for j=0:v1
            stemp1(l,j+1)= g1(l,j+1)*temp(1,j+1);
        end
        for j=0:v2
            stemp2(l,j+1)= g2(l,j+1)*temp(2,j+1);
        end
        shat(l,k+1) = sum(sum(stemp1)) + sum(sum(stemp2));
        stemp1=[];stemp2=[];
    end
    temp;
end
s = mod(shat,M);
[n m]=size(s);
data_mod=[];

% Mapper QPSK from symbol STTC
for a=1:n
    for b=1:m
        if s(a,b)==[0]
            data_mod(a,b) = 1+i;
        elseif s(a,b)==[1]
            data_mod(a,b) = 1-i;
        elseif s(a,b)==[2]
            data_mod(a,b) = -1-i;
        elseif s(a,b)==[3]
            data_mod(a,b) = -1+i;
        end;
    end;
end;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?