fs=8000;N=1000000; %采样频率和数据点数
n=0:N-1;t=n/fs; %时间序列
V1=50.00;V2=50.00;
x=V1*cos(2*pi*f1*t)+V2*cos(2*pi*f2*t); %输入信号
%i=b1*(exp(b2*x)-1) %指数函数模型
%i=c1*sin(c2*x) %三角函数模型
%i=d1*tanh(d2*x) %双曲正切函数模型
i=a0+a1*x+a2*x.^2+a3*x.^3+a4*x.^4+a5*x.^5+a6*x.^6+a7*x.^7;
%多项式模型
y=fft(i,N); %对信号进行快速傅里叶变换
mag=2*abs(y)./N; %求得快速傅里叶变换后的振幅
f=n*fs/N; %频率序列
power=10*log((((mag).^2)*50)*10^(3))./log(10);
%将振幅变换为功率,单位
是 dBm
figure(1)
plot(f(1:N/2),power(1:N/2)); %绘出奈奎斯特频率之前随频率变化的振
幅
axis([100 1000 -300 60]) %坐标范围
xlabel('frequency/Hz'); %标注横坐标名称
ylabel('Power/dBm'); %标注纵坐标名称
%可以根据需求选择哪种非线性模型,需要自己设置各个模型的系数,如
a1,b1,c1,d1
评论0