root/applications/dual/SIDP/SIDPS/matlab/rizeni.m @ 1185

Revision 1181, 0.9 kB (checked in by zimamiro, 14 years ago)
Line 
1function  [ztrata u y b P]=rizeni(H,C,system,apriori,seed)
2%RAND
3sigma=system.sigma;
4horizont=system.horizont;
5
6y=zeros(1,horizont);
7b=zeros(1,horizont);
8P=zeros(1,horizont);
9u=zeros(1,horizont-1);
10ztrata=0;
11
12y(1)=apriori.y0;
13b(1)=apriori.b0;
14P(1)=apriori.P0;
15
16    for i=1:horizont
17        eta=abs(y(i))/sigma;
18        beta=abs(b(i))/sqrt(P(i));
19               
20        %plot(H,'b.'); hold on; plot(index, beta,'r.'); hold off           
21       
22        ny=eta*beta/(1+beta^2)+interpol(beta,H,C);
23        %ny=(eta*beta/(1+beta^2)+C(index)*abs(rand));               
24        znamenko=sign(y(i)*((-1)^(b(i)<0)));
25        u(i)=-ny*sigma/sqrt(P(i))*znamenko;
26       
27        y(i+1)=y(i)+system.b*u(i)+sigma*seed(i);
28        K=u(i)*P(i)/(P(i)*u(i)^2+sigma^2);
29        b(i+1)=b(i)+K*(y(i+1)-y(i)-b(i)*u(i));
30        P(i+1)=(1-K*u(i))*P(i);   
31       
32        ztrata=ztrata+y(i+1)^2;
33    end
34   
35 end
Note: See TracBrowser for help on using the browser.