Skip to main content
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
Bumped by Community user
added 129 characters in body
Source Link
  1. What are exactly the ĉ symbols? From the scheme it looks like the vector ĉ is just a part of the vector y(k) that we choose via the decision block.

    What are exactly the ĉ symbols? From the scheme it looks like the vector ĉ is just a part of the vector y(k) that we choose via the decision block.

  2. How to implement this block scheme in MATLAB? I have done most of it but I'm not sure how to implement the switch between training and tracking.

    What is the decision block and how it works? How does it decides which symbols to consider and which ones to eliminate?

  3. How to implement this block scheme in MATLAB? I have done most of it but I'm not sure how to implement the switch between training and tracking.

  1. What are exactly the ĉ symbols? From the scheme it looks like the vector ĉ is just a part of the vector y(k) that we choose via the decision block.
  2. How to implement this block scheme in MATLAB? I have done most of it but I'm not sure how to implement the switch between training and tracking.
  1. What are exactly the ĉ symbols? From the scheme it looks like the vector ĉ is just a part of the vector y(k) that we choose via the decision block.

  2. What is the decision block and how it works? How does it decides which symbols to consider and which ones to eliminate?

  3. How to implement this block scheme in MATLAB? I have done most of it but I'm not sure how to implement the switch between training and tracking.

deleted 16 characters in body
Source Link
for k = 1:2*length(trainSymtx)

    for i = NN+1:2*length(trainSymtx)-N-1
    
        currSymbols = train_syms_real(i-N+1N:i+N+1i+N); 
        y(k) = tapWeights * currSymbols';

        if mod(k, 2) == 0  % considero solo 'k' pari  
       
           a = k/2;
           error = y(k) - trainSymtx(a);
           x = conj(train_syms_real(i-N+1N:i+N+1i+N));         
           tapWeights = tapWeights - stepSize * error * x;

        end
    end
 end
for b = 1:2*length(trainSymtx)

    for m = NN+1:2*length(trainSymtx)-N-1
    
        currSymbols = train_syms_real(m-N+1N:m+N+1m+N);
        y(b) = tapWeights * currSymbols';

        if mod(b, 2) == 0  
       
           w = b/2;
           c_est(w) = y(wb);
           error_est = y(b) - c_est(w);
           x = conj(train_syms_real(m-N+1N:m+N+1m+N));
           tapWeights = tapWeights - stepSize * error_est * x;

        end
    end
 end
for k = 1:2*length(trainSymtx)

    for i = N:2*length(trainSymtx)-N-1
    
        currSymbols = train_syms_real(i-N+1:i+N+1); 
        y(k) = tapWeights * currSymbols';

        if mod(k, 2) == 0  % considero solo 'k' pari  
       
           a = k/2;
           error = y(k) - trainSymtx(a);
           x = conj(train_syms_real(i-N+1:i+N+1));         
           tapWeights = tapWeights - stepSize * error * x;

        end
    end
 end
for b = 1:2*length(trainSymtx)

    for m = N:2*length(trainSymtx)-N-1
    
        currSymbols = train_syms_real(m-N+1:m+N+1);
        y(b) = tapWeights * currSymbols';

        if mod(b, 2) == 0  
       
           w = b/2;
           c_est(w) = y(w);
           error_est = y(b) - c_est(w);
           x = conj(train_syms_real(m-N+1:m+N+1));
           tapWeights = tapWeights - stepSize * error_est * x;

        end
    end
 end
for k = 1:2*length(trainSymtx)

    for i = N+1:2*length(trainSymtx)-N
    
        currSymbols = train_syms_real(i-N:i+N); 
        y(k) = tapWeights * currSymbols';

        if mod(k, 2) == 0  % considero solo 'k' pari  
       
           a = k/2;
           error = y(k) - trainSymtx(a);
           x = conj(train_syms_real(i-N:i+N));         
           tapWeights = tapWeights - stepSize * error * x;

        end
    end
 end
for b = 1:2*length(trainSymtx)

    for m = N+1:2*length(trainSymtx)-N
    
        currSymbols = train_syms_real(m-N:m+N);
        y(b) = tapWeights * currSymbols';

        if mod(b, 2) == 0  
       
           w = b/2;
           c_est(w) = y(b);
           error_est = y(b) - c_est(w);
           x = conj(train_syms_real(m-N:m+N));
           tapWeights = tapWeights - stepSize * error_est * x;

        end
    end
 end
edited body
Source Link
for k = 1:2*length(trainSymtx)

    for i = 1N:2*length(trainSymtx)-2*NN-1
    
        currSymbols = train_syms_real(Ni-N+iN+1:2*N+ii+N+1); 
        y(k) = tapWeights * currSymbols';

        if mod(k, 2) == 0  % considero solo 'k' pari  
       
           a = k/2;
           error = y(k) - trainSymtx(a);
           x = conj(train_syms_real(Ni-N+iN+1:2*N+ii+N+1));         
           tapWeights = tapWeights - stepSize * error * x;

        end
    end
 end
for b = 1:2*length(trainSymtx)

    for m = 1N:2*length(trainSymtx)-2*NN-1
    
        currSymbols = train_syms_real(Nm-N+mN+1:2*N+mm+N+1);
        y(b) = tapWeights * currSymbols';

        if mod(b, 2) == 0  
       
           w = b/2;
           c_est(w) = y(w);
           error_est = y(b) - c_est(w);
           x = conj(train_syms_real(Nm-N+mN+1:2*N+mm+N+1));
           tapWeights = tapWeights - stepSize * error_est * x;

        end
    end
 end
for k = 1:2*length(trainSymtx)

    for i = 1:2*length(trainSymtx)-2*N
    
        currSymbols = train_syms_real(N-N+i:2*N+i); 
        y(k) = tapWeights * currSymbols';

        if mod(k, 2) == 0  % considero solo 'k' pari  
       
           a = k/2;
           error = y(k) - trainSymtx(a);
           x = conj(train_syms_real(N-N+i:2*N+i));         
           tapWeights = tapWeights - stepSize * error * x;

        end
    end
 end
for b = 1:2*length(trainSymtx)

    for m = 1:2*length(trainSymtx)-2*N
    
        currSymbols = train_syms_real(N-N+m:2*N+m);
        y(b) = tapWeights * currSymbols';

        if mod(b, 2) == 0  
       
           w = b/2;
           c_est(w) = y(w);
           error_est = y(b) - c_est(w);
           x = conj(train_syms_real(N-N+m:2*N+m));
           tapWeights = tapWeights - stepSize * error_est * x;

        end
    end
 end
for k = 1:2*length(trainSymtx)

    for i = N:2*length(trainSymtx)-N-1
    
        currSymbols = train_syms_real(i-N+1:i+N+1); 
        y(k) = tapWeights * currSymbols';

        if mod(k, 2) == 0  % considero solo 'k' pari  
       
           a = k/2;
           error = y(k) - trainSymtx(a);
           x = conj(train_syms_real(i-N+1:i+N+1));         
           tapWeights = tapWeights - stepSize * error * x;

        end
    end
 end
for b = 1:2*length(trainSymtx)

    for m = N:2*length(trainSymtx)-N-1
    
        currSymbols = train_syms_real(m-N+1:m+N+1);
        y(b) = tapWeights * currSymbols';

        if mod(b, 2) == 0  
       
           w = b/2;
           c_est(w) = y(w);
           error_est = y(b) - c_est(w);
           x = conj(train_syms_real(m-N+1:m+N+1));
           tapWeights = tapWeights - stepSize * error_est * x;

        end
    end
 end
edited title
Link
Loading
Source Link
Loading