matlab 如何进行复数的 fft运算
答案:1 悬赏:50 手机版
解决时间 2021-11-26 20:02
- 提问者网友:容嬷嬷拿针来
- 2021-11-26 04:12
matlab 如何进行复数的 fft运算
最佳答案
- 五星知识达人网友:佘樂
- 2021-11-26 05:50
默认,刚刚开始,在没有给i定义情况下,
i代表虚数的。
比如 5-i4
matlab里输入,5+(-i*4)或者5-i*4
matlab里FFT函数可以直接运用,如,b=fft(a);
如果,想看代码,打开fft.m文件看看。追问我是想读取外部txt中的128个16进制数据(实部和虚部分别有128个)让后对128个点进行fft计算追答clear;
clc;
a=textread('a.txt','%s')';
alpha=hex2dec(a)';
[wenjian_ming,lujing_ming] = uigetfile('c:\a.txt','xxxx');
fid=fopen(strcat(lujing_ming,wenjian_ming),'r');
data=[];
while ~feof(fid)
m=fscanf(fid,'%3x',[1 inf]);
data=[data;m];
end
alpha=data;
dlmwrite('c:\b.txt',alpha,'delimiter', ' ')
fid=fopen('c:\d.txt','w');
fprintf(fid,'%d ',alpha');
alpha2=alpha(1:2:length(alpha)-mod(length(alpha)+1,2));
dlmwrite('c:\c.txt',alpha2,'delimiter', ' ')
plot(1:length(alpha2),alpha2)
以上,读取进行16禁止转换10禁止。
你在需要的地方加个FFT或在这个结果上在读取进行FFT计算。追问你好 非常感谢 还有个疑问 我外部的数据文件虚部和实部分开的 有两个txt文件,需要读取后合成一个复数进行fft运算 我的qq304191130 希望请教你一下追答简单啊,两个都读取后转换10进制,这时就是两个序列了,虚数部分*i就可以了,然后两个合成一个序列(这里可以按照你的想法,来组合),举个简单例子,实属部分假设是A矩阵,虚数部分是B矩阵,合成一个矩阵C,那么可以写成C=[A,B];这样就可以简单的组合在一起了。
如果是一提一个组合,那样也简单。
假设A=[1 2 3];
B=[4 5 6];B=i*B(根据需要);
C(1,1:2:6)=A;
C(1,2:2:6)=B;
这样就C就满足要求了。
然后对C进行FFT变换。
DT_FFT=fft(C);
然后对 DT_FFT储存成TXT格式就可以了。
i代表虚数的。
比如 5-i4
matlab里输入,5+(-i*4)或者5-i*4
matlab里FFT函数可以直接运用,如,b=fft(a);
如果,想看代码,打开fft.m文件看看。追问我是想读取外部txt中的128个16进制数据(实部和虚部分别有128个)让后对128个点进行fft计算追答clear;
clc;
a=textread('a.txt','%s')';
alpha=hex2dec(a)';
[wenjian_ming,lujing_ming] = uigetfile('c:\a.txt','xxxx');
fid=fopen(strcat(lujing_ming,wenjian_ming),'r');
data=[];
while ~feof(fid)
m=fscanf(fid,'%3x',[1 inf]);
data=[data;m];
end
alpha=data;
dlmwrite('c:\b.txt',alpha,'delimiter', ' ')
fid=fopen('c:\d.txt','w');
fprintf(fid,'%d ',alpha');
alpha2=alpha(1:2:length(alpha)-mod(length(alpha)+1,2));
dlmwrite('c:\c.txt',alpha2,'delimiter', ' ')
plot(1:length(alpha2),alpha2)
以上,读取进行16禁止转换10禁止。
你在需要的地方加个FFT或在这个结果上在读取进行FFT计算。追问你好 非常感谢 还有个疑问 我外部的数据文件虚部和实部分开的 有两个txt文件,需要读取后合成一个复数进行fft运算 我的qq304191130 希望请教你一下追答简单啊,两个都读取后转换10进制,这时就是两个序列了,虚数部分*i就可以了,然后两个合成一个序列(这里可以按照你的想法,来组合),举个简单例子,实属部分假设是A矩阵,虚数部分是B矩阵,合成一个矩阵C,那么可以写成C=[A,B];这样就可以简单的组合在一起了。
如果是一提一个组合,那样也简单。
假设A=[1 2 3];
B=[4 5 6];B=i*B(根据需要);
C(1,1:2:6)=A;
C(1,2:2:6)=B;
这样就C就满足要求了。
然后对C进行FFT变换。
DT_FFT=fft(C);
然后对 DT_FFT储存成TXT格式就可以了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯