u = 0.9; aX = zeros(2000, 1); aY = zeros(2000, 1); X = zeros(2000, 1); Y = zeros(2000, 1); X(1) = 0.3; Y(1) = 0.3; for i=2:2000 x = X(i - 1); y = Y(i - 1); t = 0.4 - 6 / (1 + x * x + y * y); X(i) = 1 + u * (x * cos(t) - y * sin(t)); Y(i) = u * (x * sin(t) + y * cos(t)); end for i=1:1500 aX(i) = X(i+1); aY(i) = Y(i+1); end X = X'; Y = Y'; aX = aX'; aY = aY'; a = mapminmax(X); b = mapminmax(Y); p = [a' b']'; a = mapminmax(aX); b = mapminmax(aY); t = [a' b']'; net = newff([-1 1; -1 1],[20,20,20,20,2],{'tansig','tansig','tansig','tansig','purelin'}); net = init(net); net.trainParam.show = 1; net.trainParam.epochs = 300; net.trainParam.goal = 1e-5; [net,tr]=train(net,p,t);