Help for some functions



Well, for a start, fft requires two arrays, each of which must be of length
a power of 2.  So here's one way:

x:make_array(flonum,64);
y:make_array(flonum,64);
for i:0 thru 63 do x[i]:float(random(1000));
for i:0 thru 63 do y[i]:float(random(1000));
fft(x,y);

Since the operations are performed in place, the arrays x and y now contain
the real and imaginary parts of the transform.

ift(x,y);

And now the arrays x and y contain the real and imaginary parts of the
original data (with some rounding errors).  I don't think this sort of
operation is Maxima's strength - if you want a free Matlab-like package
which includes ffts you should investigate Scilab.

-Alasdair

On Mon, Oct 6, 2008 at 9:40 PM, ????? ??????? <mparmpaklo at gmail.com> wrote:

> Hello,
>
> i am a postgraduate student in Applied Informatics and i am using maxima
> about a month.
>
> I have problem using some functions of maxima and i will need your help.
>
> The functions that i cannot understand are these: fft, ifft, dgesvd and
> gamma.
>
> 1) fft
>
> I would like to do compute this:
>
>
> x: makelist(i*random(1000),i,1,100);
> b:fft(x);
>
> but i get an error.
>
> I used to perform this operation in matlab like this, but i can't figure
> out how this function works.
>
>
> 2) ifft
>
> I would like to do compute this:
>
>
> x: makelist(i*random(1000),i,1,100);
> b:ift(x);
>
> but i get an error.
>
>
> 3) dgesvd
>
> h [i, j] := (1 + i*random(1000) + j)/(j*random(1000))+random(1000);
> x: genmatrix(h,10,10);
> b: dgesvd(x);
>
> but again i get an error.
>
>
>
> 4) gamma
>
> h [i, j] := (1 + i*random(1000) + j)/(j*random(1000))+random(1000);
> x: genmatrix(h,10,10);
> b: gamma(x);
>
> but again i get an error.
>
>
>
>
> I use Maxima 5-16.3 under Windows.
>
>
> Thank you anyway,
> Nick
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>
>


-- 
Blog: http://amca01.wordpress.com