close all, clear all, clc
[ X, T ] = simplenarx_dataset;
neto = narxnet;
[ Xo, Xoi, Aoi, To ] = preparets( neto, X, {},T );
to = cell2mat(To);
varto = var(to,1)
[neto tro Yo Eo Xof Aof ] = train(neto,Xo,To,Xoi,Aoi );
view(neto)
NMSEo = mse(Eo)/varto
netc = closeloop(neto);
T2 = T; T2(1:end) = {0};
[ Xc, Xci, Aci, Tc ] = preparets( netc, X, {}, T2 );
whos Xc Xci Aci Tc
[ Yc Xcf Acf ] = netc(Xc, Xci, Aci );
yc = cell2mat(Yc);
nerrc = (to-yc)/sqrt(varto);
figure;
subplot(211), hold on;
plot( to, 'b', 'linewidth', 3);
plot( yc, 'r--', 'linewidth',2);
legend( 'TARGET', 'ZERO-IC PREDICTIONS' )
xlabel( 'TIME' )
ylabel( 'OUTPUT' );
title(' ZERO INITIAL CONDITION PREDICTIONS')
subplot(212)
plot(nerrc, 'k' ,'linewidth',3);
legend( ' ZERO-IC PREDICTION ERROR ' )
xlabel( ' TIME ' )
ylabel('NORMALIZED ERROR');
Best Answer