1function [bWin,zn,w1]=targbm(bp,b,x,n,order,w,z)
2
3
4if n <= order
5 bWin = [bp(end-order+n+1:end); b(1:n)];
6else
7 bWin = b(n-order+1:n,:);
8end
9
10
11
12 z(n,:)= x(n,:) - (w'*bWin)';
13
14
15 if any(~isfinite(z(n,:))), error('Output has blown up'), end
16 w1=w;
17zn=z;
18end