root/applications/dual/SIDP/Kopie (2) - finalni implementace/update_hyperstate.m @ 1153

Revision 1113, 2.4 kB (checked in by zimamiro, 14 years ago)
Line 
1function [H_new ny zero range eigvec]=update_hyperstate(H_old, ny)
2H_new=zeros(size(H_old));
3H_new(1,:,:)=H_old(1,:,:);
4next_u=zeros(1,size(ny,2));
5
6%generate trajectories
7for j=1:size(H_old,2)
8    eta=H_old(1,j,1);
9    beta=H_old(1,j,2);
10    best_control=-ny(1,j);
11   
12    for i=1:size(H_old,1)-1       
13        s=randn;
14        pom=sqrt(1+best_control^2);
15        eta=abs(eta+beta*best_control+pom*s);
16        beta=abs(pom*beta+best_control*s);
17        H_new(i+1,j,:)=[eta beta];
18        if i+1<size(H_old,1)
19            index=find_in_hyperstate5([eta beta],H_old(i+1,:,:));
20            best_control=-ny(i,index);
21        end
22    end
23end
24
25%make box
26pom=zeros(size(H_new,2),2);
27for i=2:size(H_new,1)
28    pom(:,:)=H_new(i,:,:); 
29    [H_new(i,:,:) zero(i,:) range(i,:) eigvec(i,:,:)]=make_box4(pom); %rovnomerne rozmisti body v zasazenem regionu
30    %plot(H_new(i,:,1), H_new(i,:,2),'b.' ); hold on; plot(pom(:,1),pom(:,2), 'g.' ); plot(H_old(i,:,1),H_old(i,:,2), 'r.' ); hold off
31end
32
33%kopirovani stareho ny* do H_new 
34for i=2:size(H_new,1)
35    for j=1:size(H_new,2)
36        pom(1,:)=H_new(i,j,:);
37        index=find_in_hyperstate5(pom,H_old(i,:,:));
38        next_u(j)=ny(i,index);
39    end
40    ny(i,:)= next_u;
41end
42
43        %vypis(:,:)=H_new(:,:,1);
44        %save 'eta2.txt' vypis -ASCII;
45        %vypis(:,:)=H_new(:,:,2);
46        %save 'Beta2.txt' vypis -ASCII;
47        %                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 save 'ny2.txt' ny -ASCII;   
48       
49end
Note: See TracBrowser for help on using the browser.