Why does poly2trellis generate a different trellis for equivalent inputs?
19 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
David Jenks
el 14 de Sept. de 2017
Comentada: David Jenks
el 20 de Sept. de 2017
I am new to MATLAB and am trying to generate test data for a convolutional encoder. I used the following code to generate a trellis using the octal numbers(171 133) for my CodeGenerator parameter. I then tried using the string form to generate the same trellis, but obviously based on the output the second trellis is different. Why are the two trellises different?
>> msg=[1 0 1 0 1 0 1 0];
>> cg1 = [ 171 133 ];
>> cg2 = { '1+x+x^2+x^3+x^6', '1+x^2+x^3+x^5+x^6'};
>> tr1=poly2trellis(7, cg1);
>> tr2=poly2trellis(7, cg2);
>> isequal(tr1,tr2)
ans = logical 0
0 comentarios
Respuesta aceptada
Suze Zhang
el 20 de Sept. de 2017
Hi David,
The reason that the outputs of the two trellis are not equal is that when converting the coefficients of the the 6th degree polynomials to octal number representations, it should start with the highest degree. For your example,
>> cg2 = { '1+x+x^2+x^3+x^6', '1+x^2+x^3+x^5+x^6'};
The corresponding two octal numbers would be 1001111 and 1101101, which are 117 and 155.
>>tr1=poly2trellis(7, [117, 155]);
This tr1 will be equal to tr2 in your example code.
Más respuestas (0)
Ver también
Categorías
Más información sobre Error Detection and Correction en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!