On Mon, Oct 28, 2013 at 3:36 PM, Prasanth N P
<address@hidden> wrote:
Can anybody help me in solving this problem.
I have to do the fft of a set of samples with Octave interpreter function in C++. I want to get the same result set as those obtained from octave prompt. My input is a file 'buffer' with 1024 number of samples. My octave program is.
load 'buffer'
setenv ("GNUTERM", "x11")
l=1024;
v=fft(buffer,l);
V = abs(v);
save output V;
and final ouput saved in a file 'output'.
and my c++ interpreter program is
ColumnVector input_vector (1024, 0.0);
fp = fopen("buffer","r");
if (fp == NULL)
return 0;
for (ucI=0; ucI< 1024; ucI++)
fscanf(fp, "%d\n", input_vector.fortran_vec () + ucI);
fclose(fp);
octave_value_list input;
input(0) = input_vector;
octave_value_list output = feval ("fft", input, 1);
octave_value_list final_output = feval ("abs", output, 1);
ColumnVector output_vector = final_output(0).column_vector_value ();
and also result set saved in a file 'output' and I am plotted these two in octave prompt. But I have got two entirely different plot with these two. Is there any issue with my c++ code? Please help me asap.