Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clear;
- close all
- l = 45;
- T0 = 2;
- f0 = l/T0;
- t = 0:1/1000*T0:T0;
- f1 = (2/T0)^(1/2)*cos(2*pi*f0*t);
- f2 = (2/T0)^(1/2)*sin(2*pi*f0*t);
- % доказательство пункт 2
- f11 = sqrt(sum(f1.*f1));
- f22 = sqrt(sum(f2.*f2));
- f1 = f1./f11;
- f2 = f2./f22;
- scal1 = (sum(f1.*f1));
- disp('j = k');
- disp(scal1);
- scal2 = (sum(f1.*f2));
- disp('j != k');
- disp(scal2);
- scal3 = (sum(f2.*f2));
- disp('k = j');
- disp(scal3);
- %часть 2
- q = 4;
- i0 = [0, 0, 1, 1];
- i1 = [0, 1, 0, 1];
- Am = 1;
- s_x = zeros(0,q);
- s_y = zeros(0,q);
- for i = 1:q
- s_x(i) = Am*(1-(2*i0(i)/(sqrt(q)-1)));
- s_y(i) = Am*(1-(2*i1(i)/(sqrt(q)-1)));
- end
- figure(3);
- for i=1:q
- plot(s_x(i), s_y(i),'o','Color', 'k');
- hold on;
- end
- axis([-2 2,-2,2]);
- grid on;
- %часть 3 - разбиение на области
- % h = voronoi(s_x,s_y);
- % set(h,'LineWidth',2);
- d = zeros(0,q);
- for i = 1:q
- j= i+1;
- if(i==2)
- j= 4;
- end
- if(i==3)
- j= 1;
- end
- if(i==4)
- j= 3;
- end
- d(i) = sqrt(sum(s_x(i)-s_y(j))^2);
- end
- d = d./2; %середины
- %обновленные координаты
- x = zeros(0,q);
- y = zeros(0,q);
- for i = 1:q
- if(i==1)
- x(i) = s_x(i);
- y(i) = s_y(i) - d(i);
- end
- if(i==2)
- x(i) = s_x(i+1);
- y(i) = s_y(i)+d(i);
- end
- if(i==3)
- x(i) = s_x(i)+d(i);
- x(i+1) = s_x(i+1)+d(i+1);
- y(i) = s_y(i+1);
- y(i+1) = s_y(i-1);
- end
- end
- %нужно разбить пополам полученные координаты для ебаного лайна
- x1 = zeros(0,q);
- x2 = d - 1;
- y1 = d - 1;
- y2 = zeros(0,q);
- x1(1) = 3; x1(4) = -3; %по иксу от -3 до 3
- y2(1) = -3; y2(4) = 3;
- for i = 2:3
- x1(i) = x(i-1);
- y2(i) = y(i-1);
- end
- line(x1,y1,'Color', 'k','LineWidth',3); %по горизонтали
- line(x2,y2,'Color', 'k','LineWidth',3); %по вертикали
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement