神经网络辨识系统

clc;close all;clear;y(1)= 0;k=1;u(k)= sin(2*pi*k/250);f(k)= 0.6*sin(pi*u(k))+0.3*sin(3*pi*u(k))+0.1*sin(5*pi*u(k));y(k+1)= 0.3*y(k)+f(k);for k=2:100 u(k)= sin(2*pi*k/250); f(k)= 0.6*si
摘要由CSDN通过智能技术生成
clc;close all;clear;

y(1)= 0;
k=1;
u(k)= sin(2*pi*k/250);
f(k)= 0.6*sin(pi*u(k))+0.3*sin(3*pi*u(k))+0.1*sin(5*pi*u(k));
y(k+1)= 0.3*y(k)+f(k);

for k=2:100
    u(k)= sin(2*pi*k/250);
    f(k)= 0.6*sin(pi*u(k))+0.3*sin(3*pi*u(k))+0.1*sin(5*pi*u(k));
    y(k+1)= 0.3*y(k)+0.6*y(k-1)+f(k); 
end

P= [u(2:100);y(2:100);y(1:99)];
T= [y(3:101)];
net= newff(minmax(P),[20,20,1],{'tansig','tansig','purelin'},'trainlm','learngdm','msereg');
[net,tr] = train(net,P,T);

Q= [u(2:100);y(2:100);y(1:99)];
nety= sim(net,Q);
plot(1:99,y(1:99),'b',3:101,nety(1:99),'r');
legend('系统输出','系统辨识');


% clc;close all;clear;
% 
% y(1)= 0;
% 
% for k=1:100
%     u(k)= sin(2*pi*k/25)+sin(2*pi*k/10);
%     f(k)= u(k).^3;
%     y(k+1)= y(k)/(1+y(k).^2)+f(k);
% end
% 
% P=
  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值