The inverse of the continous Fractional Fourier Transform (FrFT)
12 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hello,
I'm trying to use this pre-programmed function of the continuous fractional Fourier transform (FrFT) for 1-D arrays available on this website:
Precisely, the one which is the core of the rest of codes (2D,discret ..etc).
It takes as entry parameters, a 1-D array to transform i.e: X, and the transform fractional order i.e: a, it works fine for the forward transform
F = FrFT(X,a)
But I couldn't get the inverse transform when I tried to obtain the inverse transform to recover the 1D original array X:
Xr = FrFT(F,-a)
Xr obtained values are completely different from the original X values, can anyone tell me what is wrong here, please?
As far as i know, one of the properties of the FrFT, its inverse is obtained by taking the FrFT of the negatif of its order, i.e FrFT with order -a.
Regards,
2 comentarios
Tzila Ajamian
el 20 de Mzo. de 2017
Hello Sir, I'm trying to apply the same work that you tried before 4 years. So can you give me some advices from your experience? Did you reach a solution?
Best regards,
Respuestas (3)
Kritika
el 5 de Nov. de 2014
hello sir,
Even I am trying to do the same thing but with a different frft code and its result are not coming correct. If you can help me with it then let me know so that i can share my program with you.
1 comentario
zoubir
el 13 de Feb. de 2023
Hello sir
i have this prb can u help me
Error using .*
Integers can only be combined with integers of the same class, or scalar doubles.
Error in frft (line 31)
fI(m, n) = 1/sqrt(M*N) * sum(sum(I.*exp(-2*pi*1i*((m-1)*U/(M) + (n-1)*V/(N))).*(abs(U/(M))+abs(V/(N)))^alpha));
then i did the double but the same prb
Error using .*
Integers can only be combined with integers of the same class, or scalar doubles.
Error in frft (line 31)
fI(m, n) = 1/sqrt(M*N) * sum(sum(I.*exp(-2*pi*1i*((m-1)*U/(M) + (n-1)*V/(N))).*(double(abs(U/(M))+abs(V/(N))))^alpha));
Torben Purz
el 11 de Oct. de 2018
Hello, I think I figured out how to fix this without a lot of work. Just add this line:
if (a<0), a = 2+a; end
above the if(a==0) condition. After applying the inverse transform you need to flip your array then. If you think about it, applying first a (FrFT) and then -a (iFrFT) you end up with a "total" a of 2, so you need to flip your end result.
Hope that helps!
2 comentarios
zoubir
el 13 de Feb. de 2023
Hello sir
i have this prb can u help me
Error using .*
Integers can only be combined with integers of the same class, or scalar doubles.
Error in frft (line 31)
fI(m, n) = 1/sqrt(M*N) * sum(sum(I.*exp(-2*pi*1i*((m-1)*U/(M) + (n-1)*V/(N))).*(abs(U/(M))+abs(V/(N)))^alpha));
then i did the double but the same prb
Error using .*
Integers can only be combined with integers of the same class, or scalar doubles.
Error in frft (line 31)
fI(m, n) = 1/sqrt(M*N) * sum(sum(I.*exp(-2*pi*1i*((m-1)*U/(M) + (n-1)*V/(N))).*(double(abs(U/(M))+abs(V/(N))))^alpha));
aaru sri
el 21 de En. de 2019
i m also trying vsame thing but not getting its inverse correct
0 comentarios
Ver también
Categorías
Más información sobre Discrete Fourier and Cosine Transforms en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!