Advertisement
Guest User

Sosatb

a guest
Apr 24th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 4.18 KB | None | 0 0
  1. function hemm
  2.     clc, clear, close all;
  3.    
  4.     x0 = [1, 1, 1, 1, 1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1, 1, 1, 1, 1, 1];
  5. %   y0 = [1, 1, 1, 1, 1, 1,
  6. %           1,-1,-1,-1,-1, 1,
  7. %           1,-1,-1,-1,-1, 1,
  8. %           1,-1,-1,-1,-1, 1,
  9. %           1,-1,-1,-1,-1, 1,
  10. %           1,-1,-1,-1,-1, 1,
  11. %           1,-1,-1,-1,-1, 1,
  12. %           1,-1,-1,-1,-1, 1,
  13. %           1,-1,-1,-1,-1, 1,
  14. %           1,-1,-1,-1,-1, 1,
  15. %           1,-1,-1,-1,-1, 1,
  16. %          -1,-1,-1,-1,-1,-1];
  17.     y1 = [-1,-1,-1,-1,-1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1, 1,-1, 1,-1,-1, 1,-1,-1, 1, -1, 1,-1,-1,-1, 1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 1,-1,-1,-1,-1,-1, 1,-1,-1,-1,-1,-1, 1,-1,-1,-1,-1,-1, 1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1];
  18.     y0 = [1, 1, 1, 1, 1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1, 1,-1,-1,-1,-1, 1,-1,-1,-1,-1,-1,-1];
  19.     x1 = [-1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 1 -1 -1 -1 1 -1 1 -1 -1 1 -1 -1 1 -1 1 -1 -1 -1 1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1];
  20.     x2 = [1 1 1 1 1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 1 1 1 1 1];
  21.     x3 = [1 1 1 1 1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 1 1 1 1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1];
  22.     x4 = [1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 1 1 1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1];
  23.     x5 = [1 1 1 1 1 1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 1 1 1 1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 1 1 1 1 1 1];
  24.     x6 = [-1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 1 1 1 1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 1 1 1 1];
  25.     x7 = [1 1 1 1 1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1];
  26.     x8 = [1 1 1 1 1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 1 1 1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 1 1 1 1];
  27.     x9 = [1 1 1 1 1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 1 1 1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1];
  28.    
  29.     y9 = [1 1 1 -1 1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 -1 1 1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1];
  30.     K = 10;
  31.     W = 1/2*[x0; x1; x2; x3; x4; x5; x6; x7; x8; x9];
  32.     T = 72/2;%?
  33.     E = 0.1;
  34.     V = zeros(K);
  35.     for i=1:K
  36.         for j=1:K
  37.             if(i==j)
  38.                 V(i, j) = 1;
  39.             else
  40.                 V(i, j) = -E;
  41.             end
  42.         end
  43.     end
  44.     obr(y1)
  45.     Hemm(W, V, T, y1, K)
  46.     obr(y9)
  47.     Hemm(W, V, T, y9, K)
  48.     obr(y0)
  49.     Hemm(W, V, T, y0, K)
  50.     Hemm(W, V, T, x6, K)
  51. end
  52.  
  53. function f = F(z, T)
  54.     if(z<=0)
  55.         f = 0;
  56.     end
  57.     if(z>0 && z<=T)
  58.         f = z;
  59.     end
  60.     if(z>=T)
  61.         f = T;
  62.     end
  63. end
  64.  
  65. function f = Hemm(W, V, T, y, K)
  66.     S = 0;
  67.     Y1 = W*y' + T;
  68.     Y2 = V*Y1;
  69.     for i=1:K
  70.         Y2(i) = F(Y2(i), T);
  71.         S = S + (Y1(i) - Y2(i)).^2;
  72.     end
  73.     while(S>0.1)
  74.         S = 0;
  75.         Y1 = Y2;
  76.         Y2 = V*Y1;
  77.         for i=1:K
  78.             Y2(i) = F(Y2(i), T);
  79.             S = S + (Y1(i) - Y2(i)).^2;
  80.         end
  81.     end
  82.     f = Y2;
  83. end
  84.  
  85. function [y1] = obr(y)
  86.     y1 = zeros(12,6);
  87.     for i=1:12
  88.         for j=1:6
  89.             y1(i,j) = y(6*(i-1)+j);
  90.         end
  91.     end
  92. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement