📄 fbianhuan.m
字号:
load A;%%从电科院测量仪器中可以得到原始PCC点数据:为次侧数据
a=data(:,2)*700;%%电压数据
b=data(:,5)*2+data(:,7)*3;%%电流数据
%分成1000*50的数据矩阵
for t=1:50
c(:,t)=a((1000*t-999):1000*t,1);
d(:,t)=b((1000*t-999):1000*t,1);
end
q=fft(c)/500;w=fft(d)/500;
q=q(2,:);w=w(2,:);
u1=(abs(q))'/1.414;
u2=(angle(q))';
i1=(abs(w))'/1.414;
i2=(angle(w))'+3.14;
% ux=u1.*cos(u2);
%uy=u1.*sin(u2);
ux=u1.*cos(0);%取电压相位为0
uy=u1.*sin(0);
%U=complex(ux,uy);
%i3=ones(1440,1)*0;
%ix=i1.*cos(i2);
%iy=i1.*sin(i2);
ix=i1.*cos(i2-u2);
iy=i1.*sin(i2-u2);
%I=complex(ix,iy);
%y=ux.*iy+ix.*uy;
%x=[iy,ix,-(ix.*ix+iy.*iy)];
%{采用模型Vpccx==vsx+zsy*ipccy-zsxipccx}
x1_60=[iy,-ix];
y1_60=ux;
%for t=1:10
for i=1:50;
for j=1:2
E(i,j)=[x1_60(i,j)-mean(x1_60(:,j))]/sqrt(var(x1_60(:,j),1));
F(i,1)=[y1_60(i,1)-mean(y1_60(:,1))]/sqrt(var(y1_60(:,1),1));
end
end
for n=1:2;
Q=sqrt((F.')*E*(E.')*F);
W1=((E.')*F)/Q;
%[W1,M1,L1]=RegrPLS(E,F,2)
T1=E*W1;Q1=(T1.')*T1;
P1=((E.')*T1)./Q1;
E1=E-T1*(P1.');
T(:,n)=T1;
W2(:,n)=W1;
P2(:,n)=P1;
E=E1;
end
W3(:,1)=W2(:,1);
W3(:,2)=(eye(2)-W2(:,1)*(P2(:,1).'))*W2(:,2);
%W3(:,3)=(eye(2)-W2(:,1)*(P2(:,1).'))*(eye(2)-W2(:,2)*(P2(:,2).'))*W2(:,3)
% W3(:,m)=c\ T(:,m);
R=regress(F,T);
A=R(1,1)*W3(:,1)+R(2,1)*W3(:,2);%+R(3,1)*W3(:,3);
% A(1,1)=R(1,1)*W3(1,1)+R(2,1)*W3(2,1)+R(3,1)*W3(3,1);
% A(1,2)=R(1,1)*W3(1,2)+R(2,1)*W3(2,2)+R(3,1)*W3(3,2);
% A(1,3)=R(1,1)*W3(1,3)+R(2,1)*W3(2,3)+R(3,1)*W3(3,3);
zy(1,1)=sqrt(var(y1_60(:,1),1))* A(1,1)/sqrt(var(x1_60(:,1),1));
zx(1,1)=sqrt(var(y1_60(:,1),1))* A(2,1)/sqrt(var(x1_60(:,2),1));
%B(1,3)=sqrt(var(y(:,1),1))* A(3,1)/sqrt(var(x(:,3),1));
%for n=1:500;
% a(n,:)=i(2,(256*n-255):256*n);
%end
Vsx(1,1)=[(A(1,1)*mean(x1_60(:,1))/sqrt(var(x1_60(:,1),1))+A(2,1)*mean(x1_60(:,2))/sqrt(var(x1_60(:,2),1)))]*sqrt(var(y1_60(:,1),1));%+A(3,1)*mean(x1_60(:,3))/sqrt(var(x1_60(:,3),1)))]*sqrt(var(y1_60(:,1),1));
Vsx(1,1) =mean(y1_60)-Vsx(1,1);
end
%{采用模型Vpccx*ipccy-vpy*ipx==vsx*ipy-vsy*ipccx+zsy*(ipccx*ipccx+ipccy*ipccy)}
x=[-ix,iy,(ix.*ix+iy.*iy)];
y=ux.*iy-uy.*ix;
for i=1:50;
for j=1:3
E(i,j)=[x(i,j)-mean(x(:,j))]/sqrt(var(x(:,j),1));
F(i,1)=[y(i,1)-mean(y(:,1))]/sqrt(var(y(:,1),1));
end
end
for n=1:3;
Q=sqrt((F.')*E*(E.')*F);
W1=((E.')*F)/Q;
% [W1,M1,L1]=RegrPLS(E,F,2)
T1=E*W1;Q1=(T1.')*T1;
P1=((E.')*T1)./Q1;
E1=E-T1*(P1.');
T(:,n)=T1;
W2(:,n)=W1;
P2(:,n)=P1;
E=E1;
end
W3(:,1)=W2(:,1);
W3(:,2)=(eye(3)-W2(:,1)*(P2(:,1).'))*W2(:,2);
W3(:,3)=(eye(3)-W2(:,1)*(P2(:,1).'))*(eye(3)-W2(:,2)*(P2(:,2).'))*W2(:,3);
% W3(:,m)=c\ T(:,m);
R=regress(F,T);
A=R(1,1)*W3(:,1)+R(2,1)*W3(:,2)+R(3,1)*W3(:,3);
% A(1,1)=R(1,1)*W3(1,1)+R(2,1)*W3(2,1)+R(3,1)*W3(3,1);
% A(1,2)=R(1,1)*W3(1,2)+R(2,1)*W3(2,2)+R(3,1)*W3(3,2);
% A(1,3)=R(1,1)*W3(1,3)+R(2,1)*W3(2,3)+R(3,1)*W3(3,3);
vsy=sqrt(var(y(:,1),1))* A(1,1)/sqrt(var(x(:,1),1));
vsx=sqrt(var(y(:,1),1))* A(2,1)/sqrt(var(x(:,2),1));
zy=sqrt(var(y(:,1),1))* A(3,1)/sqrt(var(x(:,3),1));
%for n=1:500;
% a(n,:)=i(2,(256*n-255):256*n);
%end
%a=(A(1,1)*mean(x(:,1))/sqrt(var(x(:,1),1))+A(2,1)*mean(x(:,2))/sqrt(var(x(:,2),1))+A(3,1)*mean(x(:,3))/sqrt(var(x(:,3),1)))/sqrt(var(y(:,1),1));
% b=(A(1,1)*sqrt(var(y(:,1),1)))/sqrt(var(x(:,1),1))+A(2,1)*sqrt(var(y(:,1),1)))/sqrt(var(x(:,2),1))+A(3,1)*sqrt(var(y(:,1),1)))/sqrt(var(x(:,3),1));
%a=((A(1,1)*mean(x(:,1))/sqrt(var(x(:,1),1))+A(2,1)*mean(x(:,2))/sqrt(var(x(:,2),1))+A(3,1)*mean(x(:,3))/sqrt(var(x(:,3),1))))*sqrt(var(y(:,1),1));
%a=a-mean(y);
a=(A(1,1)*mean(x(:,1))/sqrt(var(x(:,1),1))+A(2,1)*mean(x(:,2))/sqrt(var(x(:,2),1))+A(3,1)*mean(x(:,3))/sqrt(var(x(:,3),1)))*sqrt(var(y(:,1),1));
a=mean(y)-a;
end
%{采用模型Vpccy==vsy-zsy*ipccx-zsx*ipccy}
x1_60=[-iy,-ix];
y1_60=uy;
for i=1:50;
for j=1:2
E(i,j)=[x1_60(i,j)-mean(x1_60(:,j))]/sqrt(var(x1_60(:,j),1));
F(i,1)=[y1_60(i,1)-mean(y1_60(:,1))]/sqrt(var(y1_60(:,1),1));
end
end
for n=1:2;
Q=sqrt((F.')*E*(E.')*F);
W1=((E.')*F)/Q;
%[W1,M1,L1]=RegrPLS(E,F,2)
T1=E*W1;Q1=(T1.')*T1;
P1=((E.')*T1)./Q1;
E1=E-T1*(P1.');
T(:,n)=T1;
W2(:,n)=W1;
P2(:,n)=P1;
E=E1;
end
W3(:,1)=W2(:,1);
W3(:,2)=(eye(2)-W2(:,1)*(P2(:,1).'))*W2(:,2);
%W3(:,3)=(eye(2)-W2(:,1)*(P2(:,1).'))*(eye(2)-W2(:,2)*(P2(:,2).'))*W2(:,3)
% W3(:,m)=c\ T(:,m);
R=regress(F,T);
A=R(1,1)*W3(:,1)+R(2,1)*W3(:,2);%+R(3,1)*W3(:,3);
% A(1,1)=R(1,1)*W3(1,1)+R(2,1)*W3(2,1)+R(3,1)*W3(3,1);
% A(1,2)=R(1,1)*W3(1,2)+R(2,1)*W3(2,2)+R(3,1)*W3(3,2);
% A(1,3)=R(1,1)*W3(1,3)+R(2,1)*W3(2,3)+R(3,1)*W3(3,3);
zx(1,1)=sqrt(var(y1_60(:,1),1))* A(1,1)/sqrt(var(x1_60(:,1),1));
zy(1,1)=sqrt(var(y1_60(:,1),1))* A(2,1)/sqrt(var(x1_60(:,2),1));
%B(1,3)=sqrt(var(y(:,1),1))* A(3,1)/sqrt(var(x(:,3),1));
%for n=1:500;
% a(n,:)=i(2,(256*n-255):256*n);
%end
Vsy(1,1)=[(A(1,1)*mean(x1_60(:,1))/sqrt(var(x1_60(:,1),1))+A(2,1)*mean(x1_60(:,2))/sqrt(var(x1_60(:,2),1)))]*sqrt(var(y1_60(:,1),1));%+A(3,1)*mean(x1_60(:,3))/sqrt(var(x1_60(:,3),1)))]*sqrt(var(y1_60(:,1),1));
Vsy(1,1) =mean(y1_60)-Vsy(1,1);
end
%{采用模型Vpccx*ipccx+vpy*ipy==vsx*ipx+vsy*ipccy-zsx*(ipccx*ipccx+ipccy*ipccy)}
x=[ix,iy,-(ix.*ix+iy.*iy)];
y=ux.*ix+uy.*iy;
for i=1:50;
for j=1:3
E(i,j)=[x(i,j)-mean(x(:,j))]/sqrt(var(x(:,j),1));
F(i,1)=[y(i,1)-mean(y(:,1))]/sqrt(var(y(:,1),1));
end
end
for n=1:3;
Q=sqrt((F.')*E*(E.')*F);
W1=((E.')*F)/Q;
% [W1,M1,L1]=RegrPLS(E,F,2)
T1=E*W1;Q1=(T1.')*T1;
P1=((E.')*T1)./Q1;
E1=E-T1*(P1.');
T(:,n)=T1;
W2(:,n)=W1;
P2(:,n)=P1;
E=E1;
end
W3(:,1)=W2(:,1);
W3(:,2)=(eye(3)-W2(:,1)*(P2(:,1).'))*W2(:,2);
W3(:,3)=(eye(3)-W2(:,1)*(P2(:,1).'))*(eye(3)-W2(:,2)*(P2(:,2).'))*W2(:,3);
% W3(:,m)=c\ T(:,m);
R=regress(F,T);
A=R(1,1)*W3(:,1)+R(2,1)*W3(:,2)+R(3,1)*W3(:,3);
% A(1,1)=R(1,1)*W3(1,1)+R(2,1)*W3(2,1)+R(3,1)*W3(3,1);
% A(1,2)=R(1,1)*W3(1,2)+R(2,1)*W3(2,2)+R(3,1)*W3(3,2);
% A(1,3)=R(1,1)*W3(1,3)+R(2,1)*W3(2,3)+R(3,1)*W3(3,3);
vsx=sqrt(var(y(:,1),1))* A(1,1)/sqrt(var(x(:,1),1));
vsy=sqrt(var(y(:,1),1))* A(2,1)/sqrt(var(x(:,2),1));
zx=sqrt(var(y(:,1),1))* A(3,1)/sqrt(var(x(:,3),1));
%for n=1:500;
% a(n,:)=i(2,(256*n-255):256*n);
%end
%a=(A(1,1)*mean(x(:,1))/sqrt(var(x(:,1),1))+A(2,1)*mean(x(:,2))/sqrt(var(x(:,2),1))+A(3,1)*mean(x(:,3))/sqrt(var(x(:,3),1)))/sqrt(var(y(:,1),1));
% b=(A(1,1)*sqrt(var(y(:,1),1)))/sqrt(var(x(:,1),1))+A(2,1)*sqrt(var(y(:,1),1)))/sqrt(var(x(:,2),1))+A(3,1)*sqrt(var(y(:,1),1)))/sqrt(var(x(:,3),1));
%a=((A(1,1)*mean(x(:,1))/sqrt(var(x(:,1),1))+A(2,1)*mean(x(:,2))/sqrt(var(x(:,2),1))+A(3,1)*mean(x(:,3))/sqrt(var(x(:,3),1))))*sqrt(var(y(:,1),1));
%a=a-mean(y);
a=(A(1,1)*mean(x(:,1))/sqrt(var(x(:,1),1))+A(2,1)*mean(x(:,2))/sqrt(var(x(:,2),1))+A(3,1)*mean(x(:,3))/sqrt(var(x(:,3),1)))*sqrt(var(y(:,1),1));
a=mean(y)-a;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -