% Foliensatz EDS-F6, Abschnitt 1.2 CORDIC. Simulation des Algorithmus.
% Matlab/Octave-Programm gen_const_real.m zur Erzeugung der Konstanten
% letzte Aenderung: 29.06.2016
% Autor: G. Kemnitz

% Erzeugung der Konstantentabelle
N=16;
SCS = 1;
printf('constant AtanTab: t_dat_array(0 to %d) := (', N-1);
for idx=0:N-1
 atan_idx = atan(1.0*2^-idx);
 printf('%10.9f', atan_idx);
 if idx<N-1 printf(', ');
 else       printf(');\n');
 end;
 SCS = SCS * cos(atan_idx);
end;
printf('constant SCS: t_dat := %10.9f;\n', SCS);

%Erzeugung der Testbeispiele
N_test = 21;
printf('constant test_dat: t_test_dat(1 to %d) := (\n', N_test);
for idx=1:N_test
 phi = pi * (idx-11)/20;
 printf('%5d=>(%8.5f, %8.5f, %8.5f)', idx, phi, sin(phi), cos(phi)); 
 if idx<N_test printf(',\n');
 else          printf(');\n');
 end;
end; 

