commit
3938778d78
|
|
@ -0,0 +1,60 @@
|
|||
function [const,Lz,Lw,L1,U1]=Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,...
|
||||
T,transKmin,transKmax,lineI,lineJ,balNode,mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,...
|
||||
pgNum,pgvNum,xNum,capNum,capK,capKmin,capKmax,pgNode,pvNode,dhx,dgx,L1,U1,LZ,UW,l,u,y,r,capBi,Vmin,Vmax,hx)
|
||||
%程序功能:预计算过程,形成扰动KKT方程不平衡量矩阵
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 形成目标函数的一阶偏导矩阵▽f(.)
|
||||
if(opfGoal==2)
|
||||
dPG=ones(pgNum,1);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==1)
|
||||
dPG=2*a(pgNode).*PG(pgNode)+b(pgNode);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==3)
|
||||
dfT=-1*transG.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=2*sum(G.*(EE-EE'));
|
||||
dff=2*sum(G.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
else if(opfGoal==4)
|
||||
dfT=1*transB.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=-2*sum(B.*(EE-EE'));
|
||||
dff=-2*sum(B.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%% 不等式约束项
|
||||
gxv=[PG(pgNode);QR(pvNode);capK;e.^2+f.^2]; %约束条件当前值
|
||||
gxvx=[Pmin(pgNode);pvQmin(pvNode);capKmin.*capBi;Vmin.*Vmin]; %约束下限
|
||||
gxvs=[Pmax(pgNode);pvQmax(pvNode);capKmax.*capBi;Vmax.*Vmax]; %约束上限
|
||||
gxl=(e(lineI).*e(lineI)+f(lineI).*f(lineI)-e(lineI).*e(lineJ)-f(lineI).*f(lineJ)).*GIJ+(e(lineI).*f(lineJ)-e(lineJ).*f(lineI)).*BIJ;%线路功率当前值
|
||||
gxlx=-ones(lineNum,1)*1000; %线路约束下限
|
||||
gxls=ones(lineNum,1)*1000; %线路约束上限
|
||||
gxT=T;
|
||||
gxTx=transKmin; %变比下限
|
||||
gxTs=transKmax; %变比上限
|
||||
|
||||
gx=[gxT;gxv;gxl]; %组合所有约束条件
|
||||
gxx=[gxTx;gxvx;gxlx];
|
||||
gsx=[gxTs;gxvs;gxls];
|
||||
Lz=gx-l-gxx;
|
||||
Lw=gx+u-gsx;
|
||||
%% 形成修正方程常数项向量
|
||||
muUL=mu*(U1-L1);
|
||||
BB1=UW*Lw-LZ*Lz-muUL*ones(r,1);
|
||||
BB=dhx*y-dfx+dgx*BB1; %修正方程常数项ψ(.,μ)
|
||||
balN=transNum+pgvNum+capNum+nodeNum+balNode;
|
||||
balN1=transNum+pgvNum+capNum+balNode;
|
||||
BB(balN,1)=0; %保持平衡节点电压虚部不变,始终为0,则常数项平衡节点处置0
|
||||
BB(balN1,1)=0; %保持平衡节点电压实部不变
|
||||
const=[BB;hx]; %修正方程常数项向量
|
||||
|
|
@ -0,0 +1,425 @@
|
|||
118 179 100 100 0.1
|
||||
1.e-5 2
|
||||
1 69
|
||||
0
|
||||
1 1 2 0.0303 0.0999 0.0127
|
||||
2 1 3 0.0129 0.0424 0.00541
|
||||
3 4 5 0.00176 0.00798 0.00105
|
||||
4 3 5 0.0241 0.1080 0.0142
|
||||
5 5 6 0.0119 0.0540 0.00713
|
||||
6 6 7 0.00459 0.0208 0.00275
|
||||
7 8 9 0.00244 0.0305 0.5810
|
||||
9 9 10 0.00258 0.0322 0.6150
|
||||
10 4 11 0.0209 0.0688 0.00874
|
||||
11 5 11 0.0203 0.0682 0.00869
|
||||
12 11 12 0.00595 0.0196 0.00251
|
||||
13 2 12 0.0187 0.0616 0.00786
|
||||
14 3 12 0.0484 0.1600 0.0203
|
||||
15 7 12 0.00862 0.0340 0.00437
|
||||
16 11 13 0.02225 0.0731 0.00938
|
||||
17 12 14 0.0215 0.0707 0.00908
|
||||
18 13 15 0.0744 0.2444 0.03134
|
||||
19 14 15 0.0595 0.1950 0.0251
|
||||
20 12 16 0.0212 0.0834 0.0107
|
||||
21 15 17 0.0132 0.0437 0.0222
|
||||
22 16 17 0.0454 0.1801 0.0233
|
||||
23 17 18 0.0123 0.0505 0.00649
|
||||
24 18 19 0.01119 0.0493 0.00571
|
||||
25 19 20 0.0252 0.1170 0.0149
|
||||
26 15 19 0.0120 0.0394 0.00505
|
||||
27 20 21 0.0183 0.0849 0.0108
|
||||
28 21 22 0.0209 0.0970 0.0123
|
||||
29 22 23 0.0342 0.1590 0.0202
|
||||
30 23 24 0.0135 0.0492 0.0249
|
||||
31 23 25 0.0156 0.0800 0.0432
|
||||
33 25 27 0.0318 0.1630 0.0882
|
||||
34 27 28 0.01913 0.0855 0.0108
|
||||
35 28 29 0.0237 0.0943 0.0119
|
||||
37 8 30 0.00431 0.0504 0.2570
|
||||
38 26 30 0.00799 0.0860 0.4540
|
||||
39 17 31 0.0474 0.1563 0.01995
|
||||
40 29 31 0.0108 0.0331 0.00415
|
||||
41 23 32 0.0317 0.1153 0.05865
|
||||
42 31 32 0.0298 0.0985 0.01255
|
||||
43 27 32 0.0229 0.0755 0.00963
|
||||
44 15 33 0.0380 0.1244 0.01597
|
||||
45 19 34 0.0752 0.2470 0.0316
|
||||
46 35 36 0.00224 0.0102 0.00124
|
||||
47 35 37 0.0110 0.0497 0.00659
|
||||
48 33 37 0.0415 0.1420 0.0183
|
||||
49 34 36 0.00871 0.0268 0.00284
|
||||
50 34 37 0.00256 0.0094 0.00429
|
||||
52 37 39 0.0321 0.1060 0.0135
|
||||
53 37 40 0.0593 0.1680 0.0210
|
||||
54 30 38 0.00464 0.0540 0.2110
|
||||
55 39 40 0.0184 0.0605 0.00776
|
||||
56 40 41 0.0145 0.0487 0.00611
|
||||
57 40 42 0.0555 0.1830 0.0233
|
||||
58 41 42 0.0410 0.1350 0.0172
|
||||
59 43 44 0.0608 0.2454 0.03034
|
||||
60 34 43 0.0413 0.1681 0.02113
|
||||
61 44 45 0.0224 0.0901 0.0112
|
||||
62 45 46 0.0400 0.1356 0.0166
|
||||
63 46 47 0.0380 0.1270 0.0158
|
||||
64 46 48 0.0601 0.1890 0.0236
|
||||
65 47 49 0.0191 0.0625 0.00802
|
||||
66 42 49 0.03575 0.1615 0.0860
|
||||
67 45 49 0.0684 0.1860 0.0222
|
||||
68 48 49 0.0179 0.0505 0.00629
|
||||
69 49 50 0.0267 0.0752 0.00937
|
||||
70 49 51 0.0486 0.1370 0.0171
|
||||
71 51 52 0.0203 0.0588 0.00698
|
||||
72 52 53 0.0405 0.1635 0.02029
|
||||
73 53 54 0.0263 0.1220 0.0155
|
||||
74 49 54 0.03976 0.1450 0.0734
|
||||
75 54 55 0.0169 0.0707 0.0101
|
||||
76 54 56 0.00275 0.00955 0.00366
|
||||
77 55 56 0.00488 0.0151 0.00187
|
||||
78 56 57 0.0343 0.0966 0.0121
|
||||
79 50 57 0.0474 0.1340 0.0166
|
||||
80 56 58 0.0343 0.0966 0.0121
|
||||
81 51 58 0.0255 0.0719 0.00894
|
||||
82 54 59 0.0503 0.2293 0.0299
|
||||
83 56 59 0.04069 0.12243 0.05525
|
||||
84 55 59 0.04739 0.2158 0.02823
|
||||
85 59 60 0.0317 0.1450 0.0188
|
||||
86 59 61 0.0328 0.1500 0.0194
|
||||
87 60 61 0.00264 0.0135 0.00728
|
||||
88 60 62 0.0123 0.0561 0.00734
|
||||
89 61 62 0.00824 0.0376 0.0049
|
||||
91 63 64 0.00172 0.0200 0.1080
|
||||
93 38 65 0.00901 0.0986 0.5230
|
||||
94 64 65 0.00269 0.0302 0.1900
|
||||
95 49 66 0.0090 0.04595 0.0248
|
||||
96 62 66 0.0482 0.2180 0.0289
|
||||
97 62 67 0.0258 0.1170 0.0155
|
||||
99 66 67 0.0224 0.1015 0.01341
|
||||
100 65 68 0.00138 0.0160 0.3190
|
||||
101 47 69 0.0844 0.2778 0.03546
|
||||
102 49 69 0.0985 0.3240 0.0414
|
||||
104 69 70 0.0300 0.1270 0.0610
|
||||
105 24 70 0.10221 0.4115 0.05099
|
||||
106 70 71 0.00882 0.0355 0.00439
|
||||
107 24 72 0.0488 0.1960 0.0244
|
||||
108 71 72 0.0446 0.1800 0.02222
|
||||
109 71 73 0.00866 0.0454 0.00589
|
||||
110 70 74 0.0401 0.1323 0.01684
|
||||
111 70 75 0.0428 0.1410 0.0180
|
||||
112 69 75 0.0405 0.1220 0.0620
|
||||
113 74 75 0.0123 0.0406 0.00517
|
||||
114 76 77 0.0444 0.1480 0.0184
|
||||
115 69 77 0.0309 0.1010 0.0519
|
||||
116 75 77 0.0601 0.1999 0.02489
|
||||
117 77 78 0.00376 0.0124 0.00632
|
||||
118 78 79 0.00546 0.0244 0.00324
|
||||
119 77 80 0.01077 0.03318 0.0350
|
||||
120 79 80 0.0156 0.0704 0.00945
|
||||
121 68 81 0.00175 0.0202 0.4040
|
||||
123 77 82 0.0298 0.0853 0.04087
|
||||
124 82 83 0.0112 0.03665 0.01898
|
||||
125 83 84 0.0625 0.1320 0.0129
|
||||
126 83 85 0.0430 0.1480 0.0174
|
||||
127 84 85 0.0302 0.0641 0.00617
|
||||
128 85 86 0.0350 0.1230 0.0138
|
||||
129 86 87 0.02828 0.2074 0.02225
|
||||
130 85 88 0.0200 0.1020 0.0138
|
||||
131 85 89 0.0239 0.1730 0.0235
|
||||
132 88 89 0.0139 0.0712 0.00969
|
||||
133 89 90 0.01631 0.06515 0.0794
|
||||
134 90 91 0.0254 0.0836 0.0107
|
||||
135 89 92 0.00791 0.03827 0.0481
|
||||
136 91 92 0.0387 0.1272 0.01634
|
||||
137 92 93 0.0258 0.0848 0.0109
|
||||
138 92 94 0.0481 0.1580 0.0203
|
||||
139 93 94 0.0223 0.0732 0.00938
|
||||
140 94 95 0.0132 0.0434 0.00555
|
||||
141 80 96 0.0356 0.1820 0.0247
|
||||
142 82 96 0.0162 0.0530 0.0272
|
||||
143 94 96 0.0269 0.0869 0.0115
|
||||
144 80 97 0.0183 0.0934 0.0127
|
||||
145 80 98 0.0238 0.1080 0.0143
|
||||
146 80 99 0.0454 0.2060 0.0273
|
||||
148 94 100 0.0178 0.0580 0.0302
|
||||
149 95 96 0.0171 0.0547 0.00737
|
||||
150 96 97 0.0173 0.0885 0.0120
|
||||
151 98 100 0.0397 0.1790 0.0238
|
||||
152 99 100 0.0180 0.0813 0.0108
|
||||
153 100 101 0.0277 0.1262 0.0164
|
||||
154 92 102 0.0123 0.0559 0.00732
|
||||
155 101 102 0.0246 0.1120 0.0147
|
||||
156 100 103 0.0160 0.0525 0.0268
|
||||
157 100 104 0.0451 0.2040 0.02705
|
||||
158 103 104 0.0466 0.1584 0.02035
|
||||
159 103 105 0.0535 0.1625 0.0204
|
||||
160 100 106 0.0605 0.2290 0.0310
|
||||
161 104 105 0.00994 0.0378 0.00493
|
||||
162 105 106 0.0140 0.0547 0.00717
|
||||
163 105 107 0.0530 0.1830 0.0236
|
||||
164 105 108 0.0261 0.0703 0.09222
|
||||
166 108 109 0.0105 0.0288 0.0038
|
||||
167 103 110 0.03906 0.1813 0.02305
|
||||
168 109 110 0.0278 0.0762 0.0101
|
||||
169 110 111 0.0220 0.0755 0.0100
|
||||
170 110 112 0.0247 0.0640 0.0310
|
||||
171 17 113 0.00913 0.0301 0.00384
|
||||
172 32 113 0.0615 0.2030 0.0259
|
||||
173 32 114 0.0135 0.0612 0.00814
|
||||
174 27 115 0.0164 0.0741 0.00986
|
||||
175 114 115 0.0023 0.0104 0.00138
|
||||
176 68 116 0.00034 0.00405 0.0820
|
||||
177 12 117 0.0329 0.1400 0.0179
|
||||
178 75 118 0.01450 0.04810 0.00599
|
||||
179 76 118 0.0164 0.0544 0.00678
|
||||
0
|
||||
5 -0.4
|
||||
37 -0.25
|
||||
45 .1
|
||||
46 .1
|
||||
79 .2
|
||||
83 .1
|
||||
110 .06
|
||||
0
|
||||
1 8 5 0.0 0.0267 0.9850 0.9 1.1 1
|
||||
2 25 26 0.0 0.0382 0.9600 0.9 1.1 1
|
||||
3 17 30 0.0 0.0388 0.9600 0.9 1.1 1
|
||||
4 37 38 0.0 0.0375 0.9350 0.9 1.1 1
|
||||
5 59 63 0.0 0.0386 0.9600 0.9 1.1 1
|
||||
6 61 64 0.0 0.0268 0.9850 0.9 1.1 1
|
||||
7 65 66 0.0 0.0370 0.9350 0.9 1.1 1
|
||||
8 68 69 0.0 0.0370 0.9350 0.9 1.1 1
|
||||
9 80 81 0.0 0.0370 0.9350 0.9 1.1 1
|
||||
10 92 100 0.0648 0.2950 1. 0.9 1.1 0
|
||||
11 106 107 0.0530 0.1830 1. 0.9 1.1 0
|
||||
0
|
||||
1 0. 0. 51. 27.
|
||||
2 0. 0. 20. 9.
|
||||
3 0. 0. 39. 10.
|
||||
4 -9. 0. 30. 12.
|
||||
5 0. 0. 0. 0.
|
||||
6 0. 0. 52. 22.
|
||||
7 0. 0. 19. 2.
|
||||
8 -28. 0. 0. 0.
|
||||
9 0. 0. 0. 0.
|
||||
10 450. 0. 0. 0.
|
||||
11 0. 0. 70. 23.
|
||||
12 85. 0. 47. 10.
|
||||
13 0. 0. 34. 16.
|
||||
14 0. 0. 14. 1.
|
||||
15 0. 0. 90. 30.
|
||||
16 0. 0. 25. 10.
|
||||
17 0. 0. 11. 3.
|
||||
18 0. 0. 60. 34.
|
||||
19 0. 0. 45. 25.
|
||||
20 0. 0. 18. 3.
|
||||
21 0. 0. 14. 8.
|
||||
22 0. 0. 10. 5.
|
||||
23 0. 0. 7. 3.
|
||||
24 -13. 0. 0. 0.
|
||||
25 220. 0. 0. 0.
|
||||
26 314. 0. 0. 0.
|
||||
27 -9. 0. 62. 13.
|
||||
28 0. 0. 17. 7.
|
||||
29 0. 0. 24. 4.
|
||||
30 0. 0. 0. 0.
|
||||
31 7. 0. 43. 27.
|
||||
32 0. 0. 59. 23.
|
||||
33 0. 0. 23. 9.
|
||||
34 0. 0. 59. 26.
|
||||
35 0. 0. 33. 9.
|
||||
36 0. 0. 31. 17.
|
||||
37 0. 0. 0. 0.
|
||||
38 0. 0. 0. 0.
|
||||
39 0. 0. 27. 11.
|
||||
40 -46. 0. 20. 23.
|
||||
41 0. 0. 37. 10.
|
||||
42 -59. 0. 37. 23.
|
||||
43 0. 0. 18. 7.
|
||||
44 0. 0. 16. 8.
|
||||
45 0. 0. 53. 22.
|
||||
46 19. 0. 28. 10.
|
||||
47 0. 0. 34. 0.
|
||||
48 0. 0. 20. 11.
|
||||
49 204. 0. 87. 30.
|
||||
50 0. 0. 17. 4.
|
||||
51 0. 0. 17. 8.
|
||||
52 0. 0. 18. 5.
|
||||
53 0. 0. 23. 11.
|
||||
54 48. 0. 113. 32.
|
||||
55 0. 0. 63. 22.
|
||||
56 0. 0. 84. 18.
|
||||
57 0. 0. 12. 3.
|
||||
58 0. 0. 12. 3.
|
||||
59 155. 0. 277. 113.
|
||||
60 0. 0. 78. 3.
|
||||
61 160. 0. 0. 0.
|
||||
62 0. 0. 77. 14.
|
||||
63 0. 0. 0. 0.
|
||||
64 0. 0. 0. 0.
|
||||
65 391. 0. 0. 0.
|
||||
66 392. 0. 39. 18.
|
||||
67 0. 0. 28. 7.
|
||||
68 0. 0. 0. 0.
|
||||
69 516.4 0. 0. 0.
|
||||
70 0. 0. 66. 20.
|
||||
71 0. 0. 0. 0.
|
||||
72 -12. 0. 0. 0.
|
||||
73 -6. 0. 0. 0.
|
||||
74 0. 0. 68. 27.
|
||||
75 0. 0. 47. 11.
|
||||
76 0. 0. 68. 36.
|
||||
77 0. 0. 61. 28.
|
||||
78 0. 0. 71. 26.
|
||||
79 0. 0. 39. 32.
|
||||
80 477. 0. 130. 26.
|
||||
81 0. 0. 0. 0.
|
||||
82 0. 0. 54. 27.
|
||||
83 0. 0. 20. 10.
|
||||
84 0. 0. 11. 7.
|
||||
85 0. 0. 24. 15.
|
||||
86 0. 0. 21. 10.
|
||||
87 4. 0. 0. 0.
|
||||
88 0. 0. 48. 10.
|
||||
89 607. 0. 0. 0.
|
||||
90 -85. 0. 78. 42.
|
||||
91 -10. 0. 0. 0.
|
||||
92 0. 0. 65. 10.
|
||||
93 0. 0. 12. 7.
|
||||
94 0. 0. 30. 16.
|
||||
95 0. 0. 42. 31.
|
||||
96 0. 0. 38. 15.
|
||||
97 0. 0. 15. 9.
|
||||
98 0. 0. 34. 8.
|
||||
99 -42. 0. 0. 0.
|
||||
100 252. 0. 37. 18.
|
||||
101 0. 0. 22. 15.
|
||||
102 0. 0. 5. 3.
|
||||
103 40. 0. 23. 16.
|
||||
104 0. 0. 38. 25.
|
||||
105 0. 0. 31. 26.
|
||||
106 0. 0. 43. 16.
|
||||
107 -22. 0. 28. 12.
|
||||
108 0. 0. 2. 1.
|
||||
109 0. 0. 8. 3.
|
||||
110 0. 0. 39. 30.
|
||||
111 36. 0. 0. 0.
|
||||
112 -43. 0. 25. 13.
|
||||
113 -6. 0. 0. 0.
|
||||
114 0. 0. 8. 3.
|
||||
115 0. 0. 22. 7.
|
||||
116 -184. 0. 0. 0.
|
||||
117 0. 0. 20. 8.
|
||||
118 0. 0. 33. 15.
|
||||
0
|
||||
1 .955 -5. 15.
|
||||
4 .998 -300. 300.
|
||||
6 .99 -13. 50.
|
||||
8 1.015 -300. 300.
|
||||
10 1.05 -147. 200.
|
||||
12 .99 -35. 120.
|
||||
15 .97 -10. 30.
|
||||
18 .973 -16. 50.
|
||||
19 .963 -8. 24.
|
||||
24 .992 -300. 300.
|
||||
25 1.05 -47. 140.
|
||||
26 1.015 -1000. 1000.
|
||||
27 .968 -300. 300.
|
||||
31 .967 -300. 300.
|
||||
32 .964 -14. 42.
|
||||
34 .984 -8. 24.
|
||||
36 .98 -8. 24.
|
||||
40 .97 -300. 300.
|
||||
42 .985 -300. 300.
|
||||
46 1.005 -100. 100.
|
||||
49 1.025 -85. 210.
|
||||
54 .955 -300. 300.
|
||||
55 .952 -8. 23.
|
||||
56 .954 -8. 15.
|
||||
59 .985 -60. 180.
|
||||
61 .995 -100. 300.
|
||||
62 .998 -20. 20.
|
||||
65 1.005 -67. 200.
|
||||
66 1.05 -67. 200.
|
||||
69 1.01 -300. 300.
|
||||
70 .984 -10. 32.
|
||||
72 .98 -100. 100.
|
||||
73 .991 -100. 100.
|
||||
74 .958 -6. 9.
|
||||
76 .943 -8. 23.
|
||||
77 1.006 -20. 70.
|
||||
80 1.04 -165. 280.
|
||||
85 .985 -8. 23.
|
||||
87 1.015 -100. 1000.
|
||||
89 1.005 -210. 300.
|
||||
90 .985 -300. 300.
|
||||
91 .98 -100. 100.
|
||||
92 .993 -3. 9.
|
||||
99 1.01 -100. 100.
|
||||
100 1.017 -50. 155.
|
||||
103 1.001 -15. 40.
|
||||
104 .971 -8. 23.
|
||||
105 .965 -8. 23.
|
||||
107 .952 -200. 200.
|
||||
110 .973 -8. 23.
|
||||
111 .98 -100. 1000.
|
||||
112 .975 -100. 1000.
|
||||
113 .993 -100. 200.
|
||||
116 1.005 -1000. 1000.
|
||||
0
|
||||
10 0. 1.25 1. 100. 600. 1
|
||||
12 0. 2.6 1.2 60. 200. 1
|
||||
25 0. 1.5 1. 50. 300. 1
|
||||
26 0. 1.5 1. 100. 400. 1
|
||||
49 0. 2.1 1. 100. 400. 1
|
||||
54 0. 2.0 1.4 20. 300. 1
|
||||
59 0. 1.6 1. 50. 350. 1
|
||||
61 0. 1.5 1. 50. 400. 1
|
||||
65 0. 1.5 1. 100. 500. 1
|
||||
66 0. 1.5 1. 100. 500. 1
|
||||
69 0. 1.0 1. 100. 800. 1
|
||||
80 0. 1.23 1. 100. 600. 1
|
||||
89 0. 1.2 1. 100. 800. 1
|
||||
100 0. 1.6 1. 100. 400. 1
|
||||
103 0. 2.5 1.2 20. 200. 1
|
||||
111 0. 2.4 1.1 10. 200. 1
|
||||
0
|
||||
1 17 0 0.1 0 0 10
|
||||
2 34 0 0.1 0.14 0 10
|
||||
3 44 0 0.1 0.1 0 10
|
||||
4 107 0 0.1 0.06 0 10
|
||||
5 82 0 0.1 0.2 0 10
|
||||
6 48 0 0.1 0.15 0 10
|
||||
7 74 0 0.1 0.12 0 10
|
||||
8 105 0 0.1 0.2 0 10
|
||||
0
|
||||
0
|
||||
0
|
||||
1 100 92 -25. 25.
|
||||
2 106 107 -18. 18.
|
||||
0
|
||||
0
|
||||
1 17 0 0.05 0 0 6
|
||||
2 34 0 0.05 0.14 0 6
|
||||
3 44 0 0.05 0.1 0 6
|
||||
4 107 0 0.05 0.06 0 6
|
||||
5 82 0 0.05 0.2 0 6
|
||||
6 48 0 0.05 0.15 0 6
|
||||
7 74 0 0.05 0.12 0 6
|
||||
8 105 0 0.05 0.2 0 6
|
||||
0
|
||||
1 17 0 0.1 0 0 6
|
||||
2 34 0 0.1 0.14 0 6
|
||||
3 44 0 0.1 0.1 0 6
|
||||
4 107 0 0.1 0.06 0 6
|
||||
5 82 0 0.1 0.2 0 6
|
||||
6 48 0 0.1 0.15 0 6
|
||||
7 74 0 0.1 0.12 0 6
|
||||
8 105 0 0.1 0.2 0 6
|
||||
0
|
||||
1 17 0 0.2 0 0 6
|
||||
2 34 0 0.2 0.14 0 6
|
||||
3 44 0 0.2 0.1 0 6
|
||||
4 107 0 0.2 0.06 0 6
|
||||
5 82 0 0.2 0.2 0 6
|
||||
6 48 0 0.2 0.15 0 6
|
||||
7 74 0 0.2 0.12 0 6
|
||||
8 105 0 0.2 0.2 0 6
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
30 41 100.0 100 0.1
|
||||
1.e-5 2
|
||||
1 1
|
||||
0
|
||||
1 1 2 0.0192 0.0575 0.0264
|
||||
2 1 3 0.0452 0.1652 0.0204
|
||||
3 2 4 0.0570 0.1737 0.0184
|
||||
4 3 4 0.0132 0.0379 0.0042
|
||||
5 2 5 0.0472 0.1983 0.0209
|
||||
6 2 6 0.0581 0.1763 0.0187
|
||||
7 4 6 0.0119 0.0414 0.0045
|
||||
8 5 7 0.0460 0.1160 0.0102
|
||||
9 6 7 0.0267 0.0820 0.0085
|
||||
10 6 8 0.0120 0.0420 0.0045
|
||||
13 9 11 0.0 0.2080 0.0
|
||||
15 12 13 0.0 0.1400 0.0
|
||||
16 12 14 0.1231 0.2559 0.0
|
||||
17 12 15 0.0662 0.1304 0.0
|
||||
18 12 16 0.0945 0.1987 0.0
|
||||
19 14 15 0.2210 0.1997 0.0
|
||||
20 16 17 0.0524 0.1923 0.0
|
||||
21 15 18 0.1073 0.2185 0.0
|
||||
22 18 19 0.0639 0.1292 0.0
|
||||
23 19 20 0.0340 0.0680 0.0
|
||||
24 10 20 0.0936 0.2090 0.0
|
||||
25 10 17 0.0324 0.0845 0.0
|
||||
26 10 21 0.0348 0.0749 0.0
|
||||
27 10 22 0.0727 0.1499 0.0
|
||||
28 21 22 0.0116 0.0236 0.0
|
||||
29 15 23 0.1000 0.2020 0.0
|
||||
30 22 24 0.1150 0.1790 0.0
|
||||
31 23 24 0.1320 0.2700 0.0
|
||||
32 24 25 0.1885 0.3292 0.0
|
||||
33 25 26 0.2544 0.3800 0.0
|
||||
34 25 27 0.1093 0.2087 0.0
|
||||
36 27 29 0.2198 0.4153 0.0
|
||||
37 27 30 0.3202 0.6027 0.0
|
||||
38 29 30 0.2399 0.4533 0.0
|
||||
39 8 28 0.0636 0.2000 0.0214
|
||||
40 6 28 0.0169 0.0599 0.0065
|
||||
41 9 10 0.0 0.1100 0.0
|
||||
0
|
||||
0
|
||||
1 6 9 0.0 0.2080 0.978 0.9 1.1 1
|
||||
2 6 10 0.0 0.5560 0.969 0.9 1.1 1
|
||||
3 4 12 0.0 0.2560 0.932 0.9 1.1 1
|
||||
4 28 27 0.0 0.3960 0.968 0.9 1.1 1
|
||||
0
|
||||
1 138.77 -6.49 0. 0.
|
||||
2 20 41.71 21.7 12.7
|
||||
3 0. 0. 2.4 1.2
|
||||
4 0. 0. 7.6 1.6
|
||||
5 15 16.66 94.2 19.
|
||||
6 0. 0. 0. 0.
|
||||
7 0. 0. 22.8 10.9
|
||||
8 60 29.31 30. 30.
|
||||
9 0. 0. 0. 0.
|
||||
10 0. 0. 5.8 2.
|
||||
11 80 6.71 0. 0.
|
||||
12 0. 0. 11.2 7.5
|
||||
13 90 3.37 0. 0.
|
||||
14 0. 0. 6.2 1.6
|
||||
15 0. 0. 8.2 2.5
|
||||
16 0. 0. 3.5 1.8
|
||||
17 0. 0. 9. 5.8
|
||||
18 0. 0. 3.2 .9
|
||||
19 0. 0. 9.5 3.4
|
||||
20 0. 0. 2.2 .7
|
||||
21 0. 0. 17.5 11.2
|
||||
22 0. 0. 0. 0.
|
||||
23 0. 0. 3.2 1.6
|
||||
24 0. 0. 8.7 6.7
|
||||
25 0. 0. 0. 0.
|
||||
26 0. 0. 3.5 2.3
|
||||
27 0. 0. 0. 0.
|
||||
28 0. 0. 0. 0.
|
||||
29 0. 0. 2.4 .9
|
||||
30 0. 0. 10.6 1.9
|
||||
0
|
||||
1 1.060 -50 50.
|
||||
2 1.043 -40. 60.
|
||||
5 1.010 -40. 40.
|
||||
8 1.010 -10. 40.
|
||||
11 1.082 -6. 24.
|
||||
13 1.071 -6. 24.
|
||||
0
|
||||
1 10. 2.0 2.0 10. 200. 1
|
||||
2 10. 1.5 2.4 10. 60. 1
|
||||
5 20. 1.8 0.8 10. 51. 1
|
||||
8 10. 1.0 1.2 10. 35. 1
|
||||
11 20. 1.8 0.8 10. 51. 1
|
||||
13 10. 1.5 2.0 10. 50. 1
|
||||
0
|
||||
1 10 0 0.1 0.19 0 6
|
||||
2 24 0 0.1 0.043 0 6
|
||||
0
|
||||
0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,127 @@
|
|||
%*******************************************************
|
||||
% 程序名称:电力系统无功优化程序
|
||||
% 程序功能:主程序
|
||||
% 程序算法:现代内点法,采用NCP函数处理离散变量
|
||||
% 目标函数:发电费用最小(1)、有功出力最小(2)、有功网损最小(3)、无功网损最小(4)
|
||||
% 编者: 韦园清
|
||||
% 编写时间:2010年11月
|
||||
%*******************************************************
|
||||
function []=OPF(filename)
|
||||
clc;
|
||||
%% 读取数据
|
||||
data=dlmread(filename);
|
||||
if data(1,1)<1780
|
||||
%读取1780节点系统格式类型的数据
|
||||
[nodeNum,lineNum,capacity,kmax,centrPara,accuracy,opfGoal,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,...
|
||||
pvQmin,pvQmax,pgNumall,pgNodeall,pgNum,pgNode,a,b,c,Pmin,Pmax,capNum,capI,capGi,capBi,capK,capKmin,capKmax,Vmin,Vmax]=readData(data);
|
||||
tic;
|
||||
%形成节点导纳矩阵
|
||||
[G,B,transY,transG,transB,transG1,transB1,transNum,lineNum,lineI,lineJ,lineB,transI,transJ,transK0,transKmin,transKmax]=formY(nodeNum,...
|
||||
mtrLine,mtrGround,mtrTrans,capI,capK);
|
||||
else
|
||||
%读取IEEE标准格式数据
|
||||
[nodeNum,lineNum,capacity,kmax,accuracy,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,pvQmin,pvQmax,...
|
||||
mtrCapacitor,pgNum,pgNode,a,b,c,Pmin,Pmax,Vmin,Vmax,centrPara]=readData_RPP(data) ;
|
||||
tic;
|
||||
%形成节点导纳矩阵
|
||||
[G,B,lineI,lineJ,lineB,transI,transJ,transK0,transNum,transKmin,transKmax,capI,capGi,capBi,capK,capKmin,capKmax,capNum,transG,transB,...
|
||||
transG1,transB1,lineNum]=formY_RPP(nodeNum,lineNum,mtrLine,mtrGround,mtrTrans,mtrCapacitor) ;
|
||||
end
|
||||
%% 初始化
|
||||
[e,f,PG,QR,Pg,Qg,T,pgvNum,xNum,m,r,l,u,z,w,x,y,mu,dmaxOut1,dmaxOut2,xz1,xz2,dmaxOut3,dmaxOut4,xz3,xz4,xz5,colmut1,hx,k2,opfGoal,times,...
|
||||
secondBegin,Tn,Tn1,capKn,capKn1,kt0,q0,mut,mub,oneTrans,oneCap,para1,para2,para3,mismatch,ifconverge]=seting(nodeNum,lineNum,transNum,transK0,...
|
||||
capNum,capK,pvQmin,pvQmax,pvNum,pvNode,pvV,pgNum,pgNode,Pmin,Pmax,Pg,Qg,centrPara);
|
||||
disp (['迭代次数 互补间隙 最大不平衡量 最优潮流目标'])
|
||||
%% 进入循环体求解
|
||||
for k=0:kmax
|
||||
[mut,mub,dNCPT,dNCPT_dt,d2NCPT_dt2,dT_Zt,transGmut,transBmut,dNCPcap,dNCP_dcap,d2NCP_dcap2,capBi_dBci,H1,N1,diagE,diagF,hx,Gap,max_hx,fx,...
|
||||
Pg,Qg,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,PGR,Tn,kt0,capKn,q0,Tn1,capKn1,T,G]=midResult(nodeNum,pgNode,opfGoal,z,l,u,w,Pg,...
|
||||
Qg,e,f,G,B,a,b,c,PG,Pd,Qd,k,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,times,mut,mub,oneTrans,oneCap,para3,accuracy,T,capK,transKmin,...
|
||||
transKmax,capKmin,capBi,mu,transNum,transG,transB,Tn,Tn1,capKn,capKn1,kt0,q0,mismatch);
|
||||
if Gap<accuracy&&max_hx<mismatch %判断互补间隙和最大不平衡量是否达到精度
|
||||
if times==1
|
||||
times=2;
|
||||
end
|
||||
if times==2
|
||||
if secondBegin==1
|
||||
[secondBegin,m,r,l,u,z,w,y,Gama,Arlfa,meritF,firstT,firstcapK,firstfx,Gap,mu,Vfirst,Pgfirst,Qgfirst]=snd_setting(secondBegin,...
|
||||
transNum,T,m,r,capNum,capK,para1,para2,fx,centrPara,e,f,Pg,Qg);
|
||||
end
|
||||
dicVar=[(T-Tn);(capK-capKn)]>accuracy; %判断靠近下界的离散量是否达到精度
|
||||
dicVar1=[(Tn1-T);(capKn1-capK)]>accuracy; %判断靠近上界的离散量是否达到精度
|
||||
ymut=dicVar.*dicVar1;
|
||||
if (sum(ymut)==0) %判断离散变量是否达到精度
|
||||
ifconverge=1;
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
mu=(centrPara*Gap)/(2*r); %计算扰动因子
|
||||
if times==1 %预计算过程
|
||||
%形成修正方程系数矩阵
|
||||
[HSB,dhx,dgx,dgxT,N1,H1,diagE,diagF,GIJ,BIJ,L1,U1,LZ,UW]=formHSB(nodeNum,balNode,balNum,opfGoal,lineNum,transNum,lineI,lineJ,transI,...
|
||||
transJ,T,transG,transB,pgNode,pvNode,G,B,e,f,pgNum,pvNum,pgvNum,xNum,capNum,capI,a,m,r,l,u,z,w,y,H1,N1,diagE,diagF);
|
||||
%形成扰动KKT方程不平衡量矩阵
|
||||
[const,Lz,Lw,L1,U1]=Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,T,transKmin,transKmax,lineI,lineJ,balNode,...
|
||||
mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,pgNum,pgvNum,xNum,capNum,capK,capKmin,capKmax,pgNode,pvNode,dhx,dgx,L1,U1,LZ,...
|
||||
UW,l,u,y,r,capBi,Vmin,Vmax,hx);
|
||||
%求解方程并更新变量
|
||||
[z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,capK,G,B]=solve(HSB,const,mu,r,nodeNum,balNode,pgNum,pvNum,xNum,transNum,capNum,capI,capBi,capK,pgNode,...
|
||||
pvNode,m,x,y,z,l,u,w,Lz,Lw,LZ,UW,dgxT,L1,U1,G,B,transI,transJ,T,transG,transB,transG1,transB1,PG,QR,Pg,Qg);
|
||||
else %光滑处理过程
|
||||
k2=k2+1;
|
||||
xz5=[xz5,k2]; %保留每次迭代光滑参数的值,用于作图
|
||||
colmut1=[colmut1,mut(1)];
|
||||
%形成修正方程系数矩阵
|
||||
[HSB,dhx,dgx,dgxT,N1,H1,diagE,diagF,GIJ,BIJ,L1,U1,LZ,UW,transG,transB,mut,mub]=snd_formHSB(nodeNum,balNode,balNum,opfGoal,lineNum,...
|
||||
transNum,lineI,lineJ,transI,transJ,T,transG,transB,pgNode,pvNode,G,B,e,f,pgNum,pvNum,pgvNum,xNum,a,m,r,l,u,z,w,y,capNum,capI,...
|
||||
mut,mub,dNCPT_dt,d2NCPT_dt2,dT_Zt,transGmut,transBmut,dNCP_dcap,d2NCP_dcap2,H1,N1,diagE,diagF);
|
||||
%形成扰动KKT方程不平衡量矩阵
|
||||
[const,Lz,Lw,L1,U1,hx,origConst,gxx,gsx]=snd_Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,lineI,lineJ,...
|
||||
balNode,mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,pgNum,pgvNum,xNum,pgNode,pvNode,dhx,dgx,L1,U1,LZ,UW,l,u,y,r,...
|
||||
dT_Zt,capNum,z,w,Vmin,Vmax,hx);
|
||||
%求解方程并更新变量
|
||||
[z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,G,B,capK,meritF]=snd_solve(HSB,const,mu,r,nodeNum,balNode,pgNum,pvNum,pgvNum,xNum,transNum,pgNode,...
|
||||
pvNode,m,Lz,Lw,LZ,UW,dgxT,L1,U1,transI,transJ,transG,transB,transG1,transB1,Tn,capKn,capNum,capI,Tn1,capKn1,x,y,z,l,u,w,...
|
||||
G,B,PG,QR,Pg,Qg,opfGoal,Gama,Arlfa,meritF,k2,T,capK,lineNum,lineI,lineJ,Pd,Qd,gxx,gsx,mut,mub);
|
||||
end
|
||||
end
|
||||
if k>=kmax
|
||||
disp '最优潮流计算不收敛!'
|
||||
disp(k)
|
||||
else
|
||||
disp '最优潮流计算收敛!'
|
||||
disp(['迭代',num2str(k),'次!'])
|
||||
end
|
||||
toc;
|
||||
%% 输出计算结果
|
||||
OutResult(G,B,balNode,e,f,T,k,Gap,fx,transI,transJ,filename,nodeNum,PGR,pgNode,QR,pvNode,capI,capK,firstT,firstcapK,Tn,Tn1,capKn,capKn1,...
|
||||
firstfx,toc,max_hx,ifconverge,Vfirst,Pgfirst,Qgfirst);
|
||||
|
||||
%% 作互补间隙和最大不平衡量收敛曲线图
|
||||
% xz=0:1:k;
|
||||
% plot(xz1,dmaxOut1,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% plot(xz2,dmaxOut2,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% xlabel('迭代次数')
|
||||
% ylabel('互补间隙')
|
||||
|
||||
% plot(xz3,dmaxOut3,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% plot(xz4,dmaxOut4,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% xlabel('迭代次数')
|
||||
% ylabel('最大不平衡量')
|
||||
|
||||
%% 作mut在迭代过程中的变化图
|
||||
% plot(xz5,colmut1,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% xlabel('第二阶段优化迭代次数')
|
||||
% ylabel('μ')
|
||||
% hold on;
|
||||
|
||||
%% 作二次优化互补间隙收敛曲线
|
||||
% plot(xz5,dmaxOut2,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% xlabel('迭代次数')
|
||||
% ylabel('互补间隙')
|
||||
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
function [e]=OutResult(G,B,balNode,e,f,T,k,Gap,fx,transI,transJ,filename,nodeNum,...
|
||||
PGR,pgNode,QR,pvNode,capI,capK,firstT,firstcapK,Tn,Tn1,capKn,capKn1,firstfx,toc,max_hx,ifconverge,Vfirst,Pgfirst,Qgfirst)
|
||||
%程序功能:输出计算结果
|
||||
%编写时间:2010年11月
|
||||
|
||||
mytime=toc;
|
||||
Y1=G+1j*B;
|
||||
V1=e+1j*f;
|
||||
NodeS=zeros(nodeNum,1);
|
||||
NodeS(pvNode)=V1(pvNode,:).*conj(Y1(pvNode,:)*V1); %计算平衡节点和PV节点的节点复功率,Y1(pvNode,:)*V1为节点的注入电流
|
||||
balanceP=real(NodeS(balNode,1)); %获取平衡节点的有功功率
|
||||
PGR(balNode,1)=balanceP;
|
||||
balanceQ=imag(NodeS(balNode,1));
|
||||
QR(balNode,1)=balanceQ;
|
||||
V=sqrt(e.^2+f.^2);
|
||||
resultFile=['result_' filename];
|
||||
fid=fopen(resultFile,'w');
|
||||
result=[k;Gap;fx;firstfx;mytime;max_hx;ifconverge]; %收敛信息
|
||||
fprintf(fid,'%2.0f %4.4e %6.6f %6.6f %4.4f %4.4e %2.0f\r\n',result);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
trans=[transI';transJ';(1./T)';(1./firstT)';(1./Tn)';(1./Tn1)']; %变压器变比结果
|
||||
fprintf(fid,'%2.0f %2.0f %5.4f %5.4f %5.4f %5.4f\r\n',full(trans));
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
nn=1:nodeNum;
|
||||
Vresult=[nn;e';f';V';Vfirst']; %节点电压结果
|
||||
fprintf(fid,'%3.0f %5.4f %5.4f %5.4f %5.4f\r\n',full(Vresult));
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
PGresult=[pgNode';PGR(pgNode)';Pgfirst(pgNode)']; %有功出力结果
|
||||
PGresult=full(PGresult);
|
||||
fprintf(fid,'%2.0f %4.4f %4.4f\r\n',PGresult);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
QRresult=[pvNode';QR(pvNode)';Qgfirst(pvNode)']; %无功出力结果
|
||||
QRresult=full(QRresult);
|
||||
fprintf(fid,'%2.0f %4.4f %4.4f\r\n',QRresult);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
Capresult=[capI';capK';firstcapK';capKn';capKn1']; %电容电抗器投入组数结果
|
||||
fprintf(fid,'%2.0f %3.2f %5.4f %3.2f %3.2f\r\n',full(Capresult));
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
fclose(fid);
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,200 @@
|
|||
function [HSB,dhx,dgx,dgxT,N1,H1,diagE,diagF,GIJ,BIJ,L1,U1,LZ,UW]=formHSB(nodeNum,balNode,balNum,opfGoal,lineNum,transNum,lineI,lineJ,...
|
||||
transI,transJ,T,transG,transB,pgNode,pvNode,G,B,e,f,pgNum,pvNum,pgvNum,xNum,capNum,capI,a,m,r,l,u,z,w,y,H1,N1,diagE,diagF)
|
||||
%程序功能:预计算过程,形成修正方程系数矩阵
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 形成等式约束雅可比矩阵
|
||||
ef1=e(transI).*e(transJ)+f(transI).*f(transJ);
|
||||
ef2=e(transI).*f(transJ)-e(transJ).*f(transI);
|
||||
ef3=e(transI).*e(transI)+f(transI).*f(transI);
|
||||
ef1G=ef1.*transG;
|
||||
ef1B=ef1.*transB;
|
||||
ef2G=ef2.*transG;
|
||||
ef2B=ef2.*transB;
|
||||
dhPTi=-ef1G+ef2B+2*ef3.*transG.*T;
|
||||
dhPTj=-ef1G-ef2B;
|
||||
dhPT=sparse(1:transNum,transI,dhPTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhPTj,transNum,nodeNum);%有功平衡方程P对变压器变比求偏导
|
||||
dhQTi=ef1B+ef2G-2*ef3.*transB.*T;
|
||||
dhQTj=ef1B-ef2G;
|
||||
dhQT=sparse(1:transNum,transI,dhQTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhQTj,transNum,nodeNum);%无功平衡方程Q对变压器变比求偏导
|
||||
dhP=sparse(1:pgNum,pgNode,ones(pgNum,1),pgNum,m);
|
||||
dhQ1=sparse(1:pvNum,pvNode,ones(pvNum,1),pvNum,nodeNum);
|
||||
dhQ=[sparse(pvNum,nodeNum) dhQ1];
|
||||
dhcapK1=sparse(1:capNum,capI,(e(capI).^2+f(capI).^2),capNum,nodeNum); %功率平衡方程对电容电抗器组数求偏导
|
||||
dhcapK=[sparse(capNum,nodeNum) dhcapK1];
|
||||
%功率方程雅可比矩阵
|
||||
deG=diagE*G;
|
||||
dfB=diagF*B;
|
||||
deB=diagE*B;
|
||||
dfG=diagF*G;
|
||||
dH1=sparse(1:nodeNum,1:nodeNum,H1,nodeNum,nodeNum);
|
||||
dN1=sparse(1:nodeNum,1:nodeNum,N1,nodeNum,nodeNum);
|
||||
Hij=-dH1-deG-dfB;
|
||||
Nij=-dN1+deB-dfG;
|
||||
Jij=dN1-dfG+deB;
|
||||
Lij=-dH1+dfB+deG;
|
||||
%合并形成功率方程雅可比矩阵
|
||||
dhJacb=[Hij Nij;Jij Lij]';
|
||||
%合并形成等式约束雅可比矩阵h(x)
|
||||
dhx=[dhPT dhQT;dhP;dhQ;dhcapK;dhJacb];
|
||||
%% 形成不等式约束雅可比矩阵▽g(x)
|
||||
dgT1=sparse(1:transNum,1:transNum,ones(transNum,1),transNum,r-lineNum);
|
||||
dglT=(e(transI).^2+f(transI).^2-e(transI).*e(transJ)-f(transI).*f(transJ)).*transG+(e(transI).*f(transJ)-e(transJ).*f(transI)).*transB;
|
||||
dgT2=sparse(1:transNum,lineNum-transNum+1:lineNum,dglT,transNum,lineNum);
|
||||
dgT=[dgT1 dgT2]; %所有不等式对变比求导的模块
|
||||
dgP=sparse(1:pgNum,transNum+1:transNum+pgNum,ones(pgNum,1),pgNum,r); %所有不等式约束对PG求导的模块
|
||||
dgQ=sparse(1:pvNum,transNum+pgNum+1:transNum+pgvNum,ones(pvNum,1),pvNum,r); %所有不等式约束对QR求导的模块
|
||||
dgcapK=sparse(1:capNum,transNum+pgvNum+1:transNum+pgvNum+capNum,ones(capNum,1),capNum,r);%所有不等式约束对capK求导的模块
|
||||
dgve=2*diagE;
|
||||
dgvf=2*diagF;
|
||||
sizeG=size(G);
|
||||
GIJ=G(sub2ind(sizeG,lineI,lineJ));
|
||||
BIJ=B(sub2ind(sizeG,lineI,lineJ));
|
||||
dgleI=(2*e(lineI)-e(lineJ)).*GIJ+f(lineJ).*BIJ;
|
||||
dgleJ=-e(lineI).*GIJ-f(lineI).*BIJ;
|
||||
dglfI=(2*f(lineI)-f(lineJ)).*GIJ-e(lineJ).*BIJ;
|
||||
dglfJ=-f(lineI).*GIJ+e(lineI).*BIJ;
|
||||
dgle=sparse(lineI,(1:lineNum),dgleI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dgleJ,nodeNum,lineNum);
|
||||
dglf=sparse(lineI,(1:lineNum),dglfI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dglfJ,nodeNum,lineNum);
|
||||
dg0=sparse(m,transNum+pgvNum+capNum);
|
||||
dgvl=[dgve dgle;dgvf dglf];
|
||||
dgef=[dg0 dgvl]; %所有不等式约束对电压实部、虚部求偏导的模块
|
||||
dgx=[dgT;dgP;dgQ;dgcapK;dgef]; %不等式约束雅克比矩阵
|
||||
%% 形成对角阵
|
||||
Z=sparse(1:r,1:r,z,r,r);
|
||||
W=sparse(1:r,1:r,w,r,r);
|
||||
L1=sparse(1:r,1:r,1./l,r,r);
|
||||
U1=sparse(1:r,1:r,1./u,r,r);
|
||||
LZ=L1*Z;
|
||||
UW=U1*W;
|
||||
%% 形成海森伯矩阵
|
||||
%目标函数的海森伯矩阵▽2f(x)
|
||||
if(opfGoal==2)
|
||||
HSdfx=sparse(xNum,xNum);
|
||||
else if(opfGoal==1)
|
||||
HSdfx=sparse(transNum+1:transNum+pgNum,transNum+1:transNum+pgNum,2*a(pgNode),xNum,xNum);%仅目标函数对PG求偏导处的对角元为非零元素,其他都为0
|
||||
else if(opfGoal==3)
|
||||
d2ftei=-2*transG.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=-2*transG.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT0=sparse(transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=2*(G-sparse(1:nodeNum,1:nodeNum,sum(G,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
else if(opfGoal==4)
|
||||
d2ftei=2*transB.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=2*transB.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT0=sparse(transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=-2*(B-sparse(1:nodeNum,1:nodeNum,sum(B,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%等式约束海森伯矩阵与拉格朗日乘子y的乘积▽2h(x)*y
|
||||
y1=y(1:nodeNum,1);
|
||||
y2=y(nodeNum+1:2*nodeNum,1);
|
||||
dhT2=2*ef3.*(transG.*y1(transI)-transB.*y2(transI)); %功率方程对变压器变比求二次偏导所得的列向量
|
||||
HSdhT=sparse(1:transNum,1:transNum,dhT2,transNum+pgvNum+capNum,transNum+pgvNum+capNum);
|
||||
eiG=e(transI).*transG;
|
||||
ejG=e(transJ).*transG;
|
||||
eiB=e(transI).*transB;
|
||||
ejB=e(transJ).*transB;
|
||||
fiG=f(transI).*transG;
|
||||
fjG=f(transJ).*transG;
|
||||
fiB=f(transI).*transB;
|
||||
fjB=f(transJ).*transB;
|
||||
ejG_fjB=ejG-fjB;
|
||||
ejGfjB=ejG+fjB;
|
||||
fjGejB=fjG+ejB;
|
||||
ejB_fjG=ejB-fjG;
|
||||
eiGfiB=eiG+fiB;
|
||||
eiG_fiB=eiG-fiB;
|
||||
eiB_fiG=eiB-fiG;
|
||||
fiGeiB=fiG+eiB;
|
||||
dP2_ei_t=(4*eiG.*T-ejG_fjB).*y1(transI)-ejGfjB.*y1(transJ);
|
||||
dP2_ej_t=-eiGfiB.*y1(transI)-eiG_fiB.*y1(transJ);
|
||||
dQ2_ei_t=(-4*eiB.*T+fjGejB).*y2(transI)+ejB_fjG.*y2(transJ);
|
||||
dQ2_ej_t=eiB_fiG.*y2(transI)+fiGeiB.*y2(transJ);
|
||||
HSdh_et=sparse(1:transNum,transI,dP2_ei_t+dQ2_ei_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_ej_t+dQ2_ej_t,transNum,nodeNum);%功率方程先对变比求偏导,再对电压实部求偏导模块
|
||||
dP2_fi_t=(4*fiG.*T-fjGejB).*y1(transI)+ejB_fjG.*y1(transJ);
|
||||
dP2_fj_t=eiB_fiG.*y1(transI)-fiGeiB.*y1(transJ);
|
||||
dQ2_fi_t=(-4*fiB.*T-ejG_fjB).*y2(transI)+ejGfjB.*y2(transJ);
|
||||
dQ2_fj_t=eiGfiB.*y2(transI)-eiG_fiB.*y2(transJ);
|
||||
HSdh_ft=sparse(1:transNum,transI,dP2_fi_t+dQ2_fi_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_fj_t+dQ2_fj_t,transNum,nodeNum);%功率方程先对变比求偏导,再对电压虚部求偏导模块
|
||||
HSdh_eft=[HSdh_et HSdh_ft];
|
||||
HSdh_tef=HSdh_eft';
|
||||
HSdhPQ=sparse(pgvNum,2*nodeNum); %功率方程先对PG、QR求偏导,再对其他变量求偏导的部分
|
||||
d2hcap_e=sparse(1:capNum,capI,2*e(capI).*y2(capI),capNum,nodeNum); %功率方程先对capK求偏导,再对e求偏导的部分
|
||||
d2hcap_f=sparse(1:capNum,capI,2*f(capI).*y2(capI),capNum,nodeNum); %功率方程先对capK求偏导,再对f求偏导的部分
|
||||
HSdhcap_ef=[d2hcap_e d2hcap_f];
|
||||
d2htPQ_ef=[HSdh_eft;HSdhPQ;HSdhcap_ef];
|
||||
HSdhtPQ=[HSdhT d2htPQ_ef];
|
||||
HSdhx1=sparse(m,pgvNum);
|
||||
%潮流方程海森矩阵
|
||||
diagy1=sparse(1:nodeNum,1:nodeNum,y1,nodeNum,nodeNum);
|
||||
diagy2=sparse(1:nodeNum,1:nodeNum,y2,nodeNum,nodeNum);
|
||||
HSdhey=-diagy1*G+diagy2*B+(-G*diagy1+B*diagy2);
|
||||
HSdhefy=diagy1*B+diagy2*G-(B*diagy1+G*diagy2);
|
||||
HSdhx2=[HSdhey HSdhefy;HSdhefy' HSdhey];
|
||||
HSdhx=[HSdhtPQ;HSdh_tef HSdhx1 HSdhcap_ef' HSdhx2];
|
||||
%形成不等式约束二阶偏导的矩阵▽2g(x)*(z+w)
|
||||
ZWcl=z(transNum+pgvNum+capNum+nodeNum+1:end)+w(transNum+pgvNum+capNum+nodeNum+1:end);
|
||||
ZWv=z(transNum+pgvNum+capNum+1:transNum+pgvNum+capNum+nodeNum)+w(transNum+pgvNum+capNum+1:transNum+pgvNum+capNum+nodeNum);
|
||||
dgeiT=((2*e(transI)-e(transJ)).*transG+f(transJ).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgejT=(-e(transI).*transG-f(transI).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgeT=sparse(1:transNum,transI,dgeiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgejT,transNum,nodeNum);%不等式约束先对变比求偏导,再对e求偏导的模块
|
||||
dgfiT=((2*f(transI)-f(transJ)).*transG-e(transJ).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfjT=(-f(transI).*transG+e(transI).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfT=sparse(1:transNum,transI,dgfiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgfjT,transNum,nodeNum);%不等式约束先对变比求偏导,再对f求偏导的模块
|
||||
HSdgefT=[dgeT dgfT];
|
||||
HSdgT=[sparse(transNum,transNum+pgvNum+capNum) HSdgefT];
|
||||
HSdgee=sparse(lineI,lineI,2*GIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineI,lineJ,GIJ.*ZWcl,nodeNum,nodeNum)...
|
||||
-sparse(lineJ,lineI,GIJ.*ZWcl,nodeNum,nodeNum)+sparse(1:nodeNum,1:nodeNum,2*ZWv,nodeNum,nodeNum);
|
||||
HSdgff=HSdgee;
|
||||
HSdgef=sparse(lineI,lineJ,BIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineJ,lineI,BIJ.*ZWcl,nodeNum,nodeNum);
|
||||
HSdgfe=HSdgef';
|
||||
HSdgx1=[HSdgee HSdgef;HSdgfe HSdgff]; %所有不等式约束对e、f求二次偏导模块
|
||||
HSdgxtPQ_0=sparse(pgvNum+capNum,xNum);
|
||||
HSdgef_0=[HSdgefT' sparse(2*nodeNum,pgvNum+capNum)];
|
||||
HSdgx=[HSdgT;HSdgxtPQ_0;HSdgef_0 HSdgx1]; %合成不等式约束海森矩阵
|
||||
%求和形成H(.)矩阵.
|
||||
dgxT=dgx'; %求dgx的转置
|
||||
MULdgx=dgx*(UW-LZ)*dgxT;
|
||||
H=HSdhx+HSdgx-HSdfx+MULdgx; %求和形成H(.)矩阵.
|
||||
%% 根据以上所求的各个矩阵合成海森伯矩阵
|
||||
HSB0=sparse(m,m);
|
||||
HSB=[H dhx;dhx' HSB0];
|
||||
balN=transNum+pgvNum+capNum+nodeNum+balNode;
|
||||
HSB(balN,:)=0; %保持平衡节点电压虚部不变,始终为0,即将海森矩阵中平衡节点虚部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN)=0;
|
||||
HSB_balN=sub2ind(size(HSB),balN,balN);
|
||||
HSB(HSB_balN)=ones(balNum,1);
|
||||
balN1=transNum+pgvNum+capNum+balNode;
|
||||
HSB(balN1,:)=0; %保持平衡节点电压实部不变,始终为0,即将海森矩阵中平衡节点实部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN1)=0;
|
||||
HSB_balN1=sub2ind(size(HSB),balN1,balN1);
|
||||
HSB(HSB_balN1)=ones(balNum,1);
|
||||
HSB=sparse(HSB);
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
function [G,B,transY,transG,transB,transG1,transB1,transNum,lineNum,lineI,lineJ,lineB,transI,transJ,transK0,transKmin,transKmax]=...
|
||||
formY(nodeNum,mtrLine,mtrGround,mtrTrans,capI,capK)
|
||||
%程序功能:形成节点导纳矩阵
|
||||
%编写时间:2010年11月
|
||||
|
||||
%变量定义:
|
||||
%G--电导矩阵,B--电纳矩阵,lineI,lineJ--节点序号,lineR--线路电阻
|
||||
%lineX--线路电抗,groundI--接地支路节点序号
|
||||
%groundR--接地支路电阻,groundX--接地支路电抗
|
||||
%transI,transJ--变压器支路节点序号
|
||||
%transR--变压器支路电阻,transX--变压器支路电抗
|
||||
%transK--变压器变比
|
||||
%transG--变压器支路等效电导,transB--变压器支路等效电纳
|
||||
|
||||
%% 利用线路和接地支路参数形成导纳矩阵
|
||||
lineI=mtrLine(:,2);
|
||||
lineJ=mtrLine(:,3);
|
||||
lineR=mtrLine(:,4);
|
||||
lineX=mtrLine(:,5);
|
||||
lineB=mtrLine(:,6);
|
||||
groundI=mtrGround(:,1);
|
||||
groundX=mtrGround(:,2);
|
||||
Yij=1./(lineR+j*lineX);
|
||||
Y1=-sparse(lineI,lineJ,Yij,nodeNum,nodeNum)-sparse(lineJ,lineI,Yij,nodeNum,nodeNum)...
|
||||
+sparse(lineI,lineI,Yij+j*lineB,nodeNum,nodeNum)+sparse(lineJ,lineJ,Yij+j*lineB,nodeNum,nodeNum)...
|
||||
+sparse(groundI,groundI,j*groundX,nodeNum,nodeNum)+sparse(capI,capI,j*capK,nodeNum,nodeNum);
|
||||
%% 加入变压器支路修改导纳矩阵
|
||||
transIall=mtrTrans(:,2);
|
||||
transJall=mtrTrans(:,3);
|
||||
transR=mtrTrans(:,4);
|
||||
transX=mtrTrans(:,5);
|
||||
transK0all=mtrTrans(:,6);
|
||||
lineNum=length(lineI)+length(transIall);
|
||||
transY=1./(transR+j*transX);
|
||||
Y1=Y1-sparse(transIall,transJall,transY./transK0all,nodeNum,nodeNum)-sparse(transJall,transIall,transY./transK0all,nodeNum,nodeNum)...
|
||||
+sparse(transIall,transIall,transY./transK0all./transK0all,nodeNum,nodeNum)+sparse(transJall,transJall,transY,nodeNum,nodeNum);
|
||||
Yt=sparse(transIall,transJall,-transY,nodeNum,nodeNum); %这样处理是因为有两台变压器两端的节点号相同,避免在更新节点导纳矩阵时只识别一台变压器
|
||||
transIJ=sub2ind(size(Yt),transIall,transJall);
|
||||
transYt=Yt(transIJ);
|
||||
transCtrl=mtrTrans(:,9);
|
||||
ctrTransNum=find(transCtrl);
|
||||
transI=transIall(ctrTransNum);
|
||||
transJ=transJall(ctrTransNum);
|
||||
transKmax=1/0.9*ones(size(transI));
|
||||
transKmin=1/1.1*ones(size(transI));
|
||||
transK0=transK0all(ctrTransNum);
|
||||
transG=real(transYt(ctrTransNum));
|
||||
transB=imag(transYt(ctrTransNum));
|
||||
transG1=-real(transY(ctrTransNum)); %之所以要取负号是因为transG、transB是作为导纳矩阵中的互导纳来用,在计算自导纳的时候注意要用-transG、-transB!!!!
|
||||
transB1=-imag(transY(ctrTransNum));
|
||||
transNum=length(transI);
|
||||
lineI=[lineI;transI]; %将线路和变压器支路的编号合并,在后面线路约束的时候同时处理
|
||||
lineJ=[lineJ;transJ];
|
||||
lineNum=lineNum-length(transIall)+transNum;
|
||||
%% 求节点导纳的幅值和相角
|
||||
[Yrows,Ycols,Y1] = find(Y1);
|
||||
G=real(Y1);
|
||||
B=imag(Y1);
|
||||
G=sparse(Yrows,Ycols,G,nodeNum,nodeNum);
|
||||
B=sparse(Yrows,Ycols,B,nodeNum,nodeNum);
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
function [G,B,lineI,lineJ,lineB,transI,transJ,transK0,transNum,transKmin,transKmax,capI,capGi,capBi,capK,capKmin,capKmax,capNum,transG,transB,transG1,transB1,lineNum]=...
|
||||
formY_RPP(nodeNum,lineNum,mtrLine,mtrGround,mtrTrans,mtrCapacitor)
|
||||
%程序功能:形成节点导纳矩阵
|
||||
%编写时间:2010年11月
|
||||
%变量定义:
|
||||
|
||||
%% 利用线路和接地支路参数形成导纳矩阵
|
||||
%线路参数
|
||||
lineI=mtrLine(:,2);
|
||||
lineJ=mtrLine(:,3);
|
||||
lineR=mtrLine(:,4);
|
||||
lineX=mtrLine(:,5);
|
||||
lineB=mtrLine(:,6);
|
||||
%接地支路数据
|
||||
groundI=mtrGround(:,2);
|
||||
groundG=mtrGround(:,3);
|
||||
groundB=mtrGround(:,4);
|
||||
%电容器参数
|
||||
capCtrl=mtrCapacitor(:,2);
|
||||
capCtrl=ones(length(capCtrl),1);
|
||||
capIall=mtrCapacitor(:,3);
|
||||
capGiall=mtrCapacitor(:,4);
|
||||
capBiall=mtrCapacitor(:,5);
|
||||
capKall=mtrCapacitor(:,6);
|
||||
capKminall=mtrCapacitor(:,7);
|
||||
capKmaxall=mtrCapacitor(:,8);
|
||||
|
||||
Yij=1./(lineR+j*lineX);
|
||||
Y1=-sparse(lineI,lineJ,Yij,nodeNum,nodeNum)-sparse(lineJ,lineI,Yij,nodeNum,nodeNum)...
|
||||
+sparse(lineI,lineI,Yij+j*lineB,nodeNum,nodeNum)+sparse(lineJ,lineJ,Yij+j*lineB,nodeNum,nodeNum)...
|
||||
+sparse(groundI,groundI,groundG+j*groundB,nodeNum,nodeNum)...
|
||||
+sparse(capIall,capIall,j*capKall,nodeNum,nodeNum);
|
||||
%保留可调电容电抗器参数
|
||||
capCtrlNode=find(capCtrl);
|
||||
capI=capIall(capCtrlNode);
|
||||
capGi=capGiall(capCtrlNode);
|
||||
capBi=capBiall(capCtrlNode);
|
||||
capK=capKall(capCtrlNode);
|
||||
capKmin=capKminall(capCtrlNode);
|
||||
capKmax=capKmaxall(capCtrlNode);
|
||||
capNum=length(capI);
|
||||
%% 加入变压器支路修改导纳矩阵
|
||||
transCtrl=mtrTrans(:,2);
|
||||
transIall=mtrTrans(:,3);
|
||||
transJall=mtrTrans(:,4);
|
||||
transR=mtrTrans(:,5);
|
||||
transX=mtrTrans(:,6);
|
||||
transK0all=mtrTrans(:,7);
|
||||
transY=1./(transR+j*transX);
|
||||
Y1=Y1-sparse(transIall,transJall,transY./transK0all,nodeNum,nodeNum)-sparse(transJall,transIall,transY./transK0all,nodeNum,nodeNum)...
|
||||
+sparse(transIall,transIall,transY./transK0all./transK0all,nodeNum,nodeNum)+sparse(transJall,transJall,transY,nodeNum,nodeNum);
|
||||
Yt=sparse(transIall,transJall,-transY,nodeNum,nodeNum); %这样处理是因为有两台变压器两端的节点号相同,避免在更新节点导纳矩阵时只识别一台变压器
|
||||
transIJ=sub2ind(size(Yt),transIall,transJall);
|
||||
transYt=Yt(transIJ);
|
||||
%保留可调变压器参数
|
||||
ctrTransNum=find(transCtrl);
|
||||
transI=transIall(ctrTransNum);
|
||||
transJ=transJall(ctrTransNum);
|
||||
transKmax=1/0.9*ones(size(transI));
|
||||
transKmin=1/1.1*ones(size(transI));
|
||||
transK0=transK0all(ctrTransNum);
|
||||
transG=real(transYt(ctrTransNum));
|
||||
transB=imag(transYt(ctrTransNum));
|
||||
transG1=-real(transY(ctrTransNum)); %之所以要取负号是因为transG、transB是作为导纳矩阵中的互导纳来用,在计算自导纳的时候注意要用-transG、-transB!!!!
|
||||
transB1=-imag(transY(ctrTransNum));
|
||||
transNum=length(transI);
|
||||
lineI=[lineI;transI]; %将线路和变压器支路的编号合并,在后面线路约束的时候同时处理
|
||||
lineJ=[lineJ;transJ];
|
||||
lineNum=lineNum+transNum;
|
||||
%% 求节点导纳的幅值和相角
|
||||
[Yrows,Ycols,Y1] = find(Y1);
|
||||
G=real(Y1);
|
||||
B=imag(Y1);
|
||||
G=sparse(Yrows,Ycols,G,nodeNum,nodeNum);
|
||||
B=sparse(Yrows,Ycols,B,nodeNum,nodeNum);
|
||||
|
|
@ -0,0 +1,188 @@
|
|||
function [mk,meritF,stepp,stepd]=linesearch(r,nodeNum,balNode,pgNum,pvNum,pgvNum,xNum,transNum,pgNode,pvNode,m,x,y,z,l,u,w,G,B,transI,transJ,transG,...
|
||||
transB,transG1,transB1,Tn,capKn,capNum,capI,Tn1,capKn1,PG,QR,Pg,Qg,dx,dl,du,dy,dz,dw,opfGoal,Gama,Arlfa,meritF,k2,mu,T,capK,lineNum,lineI,...
|
||||
lineJ,Pd,Qd,gxx,gsx,mut,mub,stepp,stepd)
|
||||
%程序功能:光滑处理过程,求步长
|
||||
%编写时间:2010年11月
|
||||
|
||||
mk=0;
|
||||
kk=k2;
|
||||
isOK=0;
|
||||
while isOK==0&&mk<10
|
||||
%更新临时变量
|
||||
xk=x+Arlfa.^mk*dx;
|
||||
lk=l+Arlfa.^mk*dl;
|
||||
uk=u+Arlfa.^mk*du;
|
||||
yk=y+Arlfa.^mk*dy;
|
||||
zk=z+Arlfa.^mk*dz;
|
||||
wk=w+Arlfa.^mk*dw;
|
||||
%更新临时控制变量和状态变量的值
|
||||
Tlastk=T;
|
||||
capKlastk=capK;
|
||||
T=xk(1:transNum,1);
|
||||
capK=xk(transNum+pgvNum+1:transNum+pgvNum+capNum);
|
||||
PG(pgNode,1)=xk(transNum+1:transNum+pgNum,1);
|
||||
QR(pvNode,1)=xk(transNum+pgNum+1:transNum+pgNum+pvNum,1);
|
||||
e=xk(transNum+pgNum+pvNum+capNum+1:transNum+pgNum+pvNum+capNum+nodeNum,1);
|
||||
f=xk(transNum+pgNum+pvNum+capNum+nodeNum+1:xNum,1);
|
||||
|
||||
%变比变化后需修正节点导纳矩阵
|
||||
G=G-sparse(transI,transI,(T.*T-Tlastk.*Tlastk).*transG1,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transG1.*(T-Tlastk),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transG1.*(T-Tlastk),nodeNum,nodeNum);
|
||||
B=B-sparse(transI,transI,(T.*T-Tlastk.*Tlastk).*transB1,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transB1.*(T-Tlastk),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transB1.*(T-Tlastk),nodeNum,nodeNum)...
|
||||
+sparse(capI,capI,capK-capKlastk,nodeNum,nodeNum);
|
||||
%% 形成等式约束雅可比矩阵
|
||||
Ezu=exp(-(T-Tn)./mut);
|
||||
Ezu_1=exp(-(Tn1-T)./mut);
|
||||
dT_Zt=1;
|
||||
dNCPT=-mut.*log(Ezu+Ezu_1); %变比对应的凝聚函数常数项
|
||||
dNCPT_dt=(Ezu-Ezu_1)./(Ezu+Ezu_1); %凝聚函数对T求一次偏导
|
||||
transGmut=transG.*dT_Zt;
|
||||
transBmut=transB.*dT_Zt;
|
||||
|
||||
Ezbu=exp((capKn-capK)./mub);
|
||||
Ezbu_1=exp((capK-capKn1)./mub);
|
||||
dNCPcap=-mub.*log(Ezbu+Ezbu_1); %电容电抗器对应的凝聚函数常数项
|
||||
dNCP_dcap=(Ezbu-Ezbu_1)./(Ezbu+Ezbu_1); %凝聚函数对capK求一次偏导
|
||||
|
||||
ef1=e(transI).*e(transJ)+f(transI).*f(transJ);
|
||||
ef2=e(transI).*f(transJ)-e(transJ).*f(transI);
|
||||
ef3=e(transI).*e(transI)+f(transI).*f(transI);
|
||||
ef1G=ef1.*transGmut;
|
||||
ef1B=ef1.*transBmut;
|
||||
ef2G=ef2.*transGmut;
|
||||
ef2B=ef2.*transBmut;
|
||||
dhPTi=-ef1G+ef2B+2*ef3.*transGmut.*T;
|
||||
dhPTj=-ef1G-ef2B;
|
||||
dhPT=sparse(1:transNum,transI,dhPTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhPTj,transNum,nodeNum);%有功平衡方程P对变压器变比求偏导
|
||||
dhQTi=ef1B+ef2G-2*ef3.*transBmut.*T;
|
||||
dhQTj=ef1B-ef2G;
|
||||
dhQT=sparse(1:transNum,transI,dhQTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhQTj,transNum,nodeNum);%无功平衡方程Q对变压器变比求偏导
|
||||
dhNCP_T=sparse(1:transNum,1:transNum,dNCPT_dt,transNum,transNum+capNum);
|
||||
dhP=sparse(1:pgNum,pgNode,ones(pgNum,1),pgNum,m);
|
||||
dhQ1=sparse(1:pvNum,pvNode,ones(pvNum,1),pvNum,m-nodeNum);
|
||||
dhQ=[sparse(pvNum,nodeNum) dhQ1];
|
||||
dhcapK1=sparse(1:capNum,capI,(e(capI).^2+f(capI).^2),capNum,nodeNum); %2011年10月5日修改,去掉.*capBi_dBci
|
||||
dhNCP_capK=sparse(1:capNum,transNum+1:transNum+capNum,dNCP_dcap,capNum,transNum+capNum);
|
||||
dhcapK=[sparse(capNum,nodeNum) dhcapK1 dhNCP_capK];
|
||||
%形成功率方程雅可比矩阵
|
||||
H1=G*e-B*f;
|
||||
N1=G*f+B*e;
|
||||
diagE=sparse(1:nodeNum,1:nodeNum,e,nodeNum,nodeNum);
|
||||
diagF=sparse(1:nodeNum,1:nodeNum,f,nodeNum,nodeNum);
|
||||
deG=diagE*G;
|
||||
dfB=diagF*B;
|
||||
deB=diagE*B;
|
||||
dfG=diagF*G;
|
||||
dH1=sparse(1:nodeNum,1:nodeNum,H1,nodeNum,nodeNum);
|
||||
dN1=sparse(1:nodeNum,1:nodeNum,N1,nodeNum,nodeNum);
|
||||
Hij=-dH1-deG-dfB;
|
||||
Nij=-dN1+deB-dfG;
|
||||
Jij=dN1-dfG+deB;
|
||||
Lij=-dH1+dfB+deG;
|
||||
dhJacb=[Hij Nij;Jij Lij]'; %合并形成功率方程的雅可比矩阵
|
||||
dhT=[dhPT dhQT dhNCP_T]; %合并形成等式约束雅可比矩阵h(x)
|
||||
dhx=[dhT;dhP;dhQ;dhcapK;dhJacb sparse(2*nodeNum,transNum+capNum)];
|
||||
%% 形成不等式约束雅可比矩阵▽g(x)
|
||||
gtransNum=0; %变比上下限约束维数,用NCP函数后,则不需要再约束其上下限
|
||||
gcapNum=0;
|
||||
dgT1=sparse(transNum,r-lineNum);
|
||||
dglT=(e(transI).^2+f(transI).^2-e(transI).*e(transJ)-f(transI).*f(transJ)).*transGmut+(e(transI).*f(transJ)-e(transJ).*f(transI)).*transBmut;
|
||||
dgT2=sparse(1:transNum,lineNum-transNum+1:lineNum,dglT,transNum,lineNum);
|
||||
dgT=[dgT1 dgT2]; %所有不等式约束对T求导的模块
|
||||
dgP=sparse(1:pgNum,gtransNum+1:gtransNum+pgNum,ones(pgNum,1),pgNum,r); %所有不等式约束对P求导的模块
|
||||
dgQ=sparse(1:pvNum,gtransNum+pgNum+1:gtransNum+pgvNum,ones(pvNum,1),pvNum,r);%所有不等式约束对Q求导的模块
|
||||
dgcapK=sparse(capNum,r); %所有不等式约束对capK求导的模块
|
||||
dgve=2*diagE;
|
||||
dgvf=2*diagF;
|
||||
sizeG=size(G);
|
||||
GIJ=G(sub2ind(sizeG,lineI,lineJ));
|
||||
BIJ=B(sub2ind(sizeG,lineI,lineJ));
|
||||
dgleI=(2*e(lineI)-e(lineJ)).*GIJ+f(lineJ).*BIJ;
|
||||
dgleJ=-e(lineI).*GIJ-f(lineI).*BIJ;
|
||||
dglfI=(2*f(lineI)-f(lineJ)).*GIJ-e(lineJ).*BIJ;
|
||||
dglfJ=-f(lineI).*GIJ+e(lineI).*BIJ;
|
||||
dgle=sparse(lineI,(1:lineNum),dgleI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dgleJ,nodeNum,lineNum);
|
||||
dglf=sparse(lineI,(1:lineNum),dglfI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dglfJ,nodeNum,lineNum);
|
||||
dg0=sparse(2*nodeNum,gtransNum+pgvNum+gcapNum);
|
||||
dgvl=[dgve dgle;dgvf dglf];
|
||||
dgef=[dg0 dgvl]; %所有不等式约束对电压实部、虚部求偏导的模块
|
||||
dgx=[dgT;dgP;dgQ;dgcapK;dgef]; %不等式约束雅克比矩阵
|
||||
%% 形成对角阵
|
||||
Z=sparse(1:r,1:r,zk,r,r);
|
||||
W=sparse(1:r,1:r,wk,r,r);
|
||||
L1=sparse(1:r,1:r,1./lk,r,r);
|
||||
U1=sparse(1:r,1:r,1./uk,r,r);
|
||||
LZ=L1*Z;
|
||||
UW=U1*W;
|
||||
Ll=(lk.*zk-mu*ones(r,1));
|
||||
Lu=(uk.*wk+mu*ones(r,1));
|
||||
|
||||
%% 形成目标函数一阶偏导矩阵▽f(.)
|
||||
if(opfGoal==2)
|
||||
dPG=ones(pgNum,1);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==1)
|
||||
dPG=2*a(pgNode).*PG(pgNode)+b(pgNode);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==3)
|
||||
dfT=-1*transG.*dT_Zt.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=2*sum(G.*(EE-EE'));
|
||||
dff=2*sum(G.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
else if(opfGoal==4)
|
||||
dfT=1*transB.*dT_Zt.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=-2*sum(B.*(EE-EE'));
|
||||
dff=-2*sum(B.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%% 不等式约束项
|
||||
gxv=[PG(pgNode);QR(pvNode);e.^2+f.^2];
|
||||
gxl=(e(lineI).*e(lineI)+f(lineI).*f(lineI)-e(lineI).*e(lineJ)-f(lineI).*f(lineJ)).*GIJ+(e(lineI).*f(lineJ)-e(lineJ).*f(lineI)).*BIJ;%线路功率当前值
|
||||
gx=[gxv;gxl]; %约束条件当前值
|
||||
Lz=gx-lk-gxx;
|
||||
Lw=gx+uk-gsx;
|
||||
muUL=mu*(U1-L1);
|
||||
BB1=UW*Lw-LZ*Lz-muUL*ones(r,1);
|
||||
BB=dhx*yk-dfx+dgx*BB1;
|
||||
BB(transNum+pgvNum+capNum+nodeNum+balNode,1)=0; %保持平衡节点电压虚部不变,始终为0,则常数项平衡节点处置0
|
||||
BB(transNum+pgvNum+capNum+balNode,1)=0;
|
||||
%% 等式约束不平衡量
|
||||
Pg(pgNode)=PG(pgNode);
|
||||
Qg(pvNode)=QR(pvNode);
|
||||
P=Pg-Pd;
|
||||
Q=Qg-Qd;
|
||||
dP=P-diagE*H1-diagF*N1;
|
||||
dQ=Q-diagF*H1+diagE*N1;
|
||||
|
||||
hx=[dP;dQ;dNCPT;dNCPcap]; %修正方程常数项h(x)
|
||||
const=[BB;hx]; %修正方程常数项向量
|
||||
L3=-L1*(Z*Lz+Ll);
|
||||
L4=U1*(W*Lw-Lu);
|
||||
L5=Lz;
|
||||
L6=Lw;
|
||||
f_NCP=[const;L3;L4;L5;L6];
|
||||
f_NCPsum=(f_NCP'*f_NCP)/2;
|
||||
maxfk=max(meritF(kk-min(10,kk)+1:end));
|
||||
f3=maxfk-Gama*(Arlfa.^mk)*meritF(kk);
|
||||
if f_NCPsum<=f3
|
||||
isOK=1; %满足条件,跳出
|
||||
else
|
||||
mk=mk+1; %不满足条件,继续搜索
|
||||
end
|
||||
end
|
||||
stepp=stepp*Arlfa.^mk;
|
||||
stepd=stepd*Arlfa.^mk;
|
||||
|
|
@ -0,0 +1,125 @@
|
|||
function [mut,mub,dNCPT,dNCPT_dt,d2NCPT_dt2,dT_Zt,transGmut,transBmut,dNCPcap,dNCP_dcap,d2NCP_dcap2,capBi_dBci,H1,N1,diagE,diagF,hx,Gap,max_hx,fx,...
|
||||
Pg,Qg,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,PGR,Tn,kt0,capKn,q0,Tn1,capKn1,T,G]=midResult(nodeNum,pgNode,opfGoal,z,l,u,w,Pg,Qg,...
|
||||
e,f,G,B,a,b,c,PG,Pd,Qd,k,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,times,mut,mub,oneTrans,oneCap,para3,accuracy,T,capK,transKmin,transKmax,...
|
||||
capKmin,capBi,mu,transNum,transG,transB,Tn,Tn1,capKn,capKn1,kt0,q0,mismatch)
|
||||
%程序功能:计算每次迭代后的目标函数值和等式约束的最大不平衡量,并根据每步迭代结果修正光滑参数
|
||||
%编写时间:2010年11月
|
||||
|
||||
Gap=l'*z-u'*w; %计算互补间隙
|
||||
PGR=PG;
|
||||
if(opfGoal==2)
|
||||
sumP=sum(Pg);
|
||||
sumPd=sum(Pd);
|
||||
fx=sumP-sumPd;
|
||||
else if(opfGoal==1)
|
||||
fx=sum(a(pgNode).*PGR(pgNode).*PGR(pgNode)+b(pgNode).*PGR(pgNode)+c(pgNode));
|
||||
else if(opfGoal==3)
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
fx=-0.5*sum(sum(G.*((EE-EE').^2+(FF-FF').^2),2));
|
||||
else if(opfGoal==4)
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
fx=0.5*sum(sum(B.*((EE-EE').^2+(FF-FF').^2),2));
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
H1=G*e-B*f;
|
||||
N1=G*f+B*e;
|
||||
diagE=sparse(1:nodeNum,1:nodeNum,e,nodeNum,nodeNum);
|
||||
diagF=sparse(1:nodeNum,1:nodeNum,f,nodeNum,nodeNum);
|
||||
P=Pg-Pd;
|
||||
Q=Qg-Qd;
|
||||
dP=P-diagE*H1-diagF*N1;
|
||||
dQ=Q-diagF*H1+diagE*N1;
|
||||
firstOK=0;
|
||||
hx=[dP;dQ];
|
||||
tmpmax_hx=max(abs(hx));
|
||||
if Gap<accuracy&&tmpmax_hx<mismatch&& times==1 %判断互补间隙和最大不平衡量是否达到精度
|
||||
firstOK=1;
|
||||
times=2;
|
||||
maxTap=5; %变压器最大调节档位
|
||||
K=1./T;
|
||||
Kmax=1./transKmin;
|
||||
Kmin=1./transKmax;
|
||||
kt0=(Kmax-Kmin)/(maxTap-1); %变压器单位调节幅度
|
||||
Kn=fix((K-Kmin)./kt0).*kt0+Kmin; %获取变压器变比连续最优解左右两侧的档位所对应的变比
|
||||
Kn1=Kn+kt0;
|
||||
Tn=1./Kn1;
|
||||
Tn1=1./Kn;
|
||||
|
||||
q0=1; %电容器档位的单位调节幅度
|
||||
capQmin=capKmin.*capBi;
|
||||
capKn=fix((capK-capQmin)./capBi).*capBi+capQmin; %获取电容电抗器投入组数连续最优解左右两侧的离散值
|
||||
capKn1=capKn+capBi;
|
||||
end
|
||||
if times==2
|
||||
%% 修正陡度参数μt
|
||||
tmpmu=para3;
|
||||
tmpmut=mut;
|
||||
tmpmub=mub;
|
||||
Ezu=exp(-(T-Tn)./tmpmut);
|
||||
Ezu_1=exp(-(Tn1-T)./tmpmut);
|
||||
dNCPT=-tmpmut.*log(Ezu+Ezu_1); %变压器变比对应的凝聚函数常数项
|
||||
Ezbu=exp((capKn-capK)./tmpmub);
|
||||
Ezbu_1=exp((capK-capKn1)./tmpmub);
|
||||
dNCPcap=-tmpmub.*log(Ezbu+Ezbu_1); %电容电抗器投入组数对应的凝聚函数常数项
|
||||
|
||||
dNCP=[dNCPT;dNCPcap];%只有一个光滑参数
|
||||
oneTC=[oneTrans;oneCap];
|
||||
mutb=[mut;mub];
|
||||
mutb=min(max(mu,max(abs(dNCP)))*oneTC,tmpmu*mutb.*oneTC); %修正光滑参数
|
||||
mut=mutb(1:transNum);
|
||||
mub=mutb(transNum+1:end);
|
||||
%% 计算凝聚函数相关参数
|
||||
Ezu=exp(-(T-Tn)./mut);
|
||||
Ezu_1=exp(-(Tn1-T)./mut);
|
||||
dNCPT=-mut.*log(Ezu+Ezu_1); %变压器变比对应的凝聚函数常数项
|
||||
|
||||
dT_Zt=1;
|
||||
dNCPT_dt=(Ezu-Ezu_1)./(Ezu+Ezu_1); %凝聚函数对tij求一次偏导
|
||||
d2NCPT_dt2=-(oneTrans-dNCPT_dt.^2)./mut; %凝聚函数对tij求二次偏导,原来的公式推导错误d2NCPT_dt2=-(oneTrans+dNCPT_dt.^2)./mut;3月7日修改
|
||||
transGmut=transG;
|
||||
transBmut=transB;
|
||||
|
||||
Ezbu=exp((capKn-capK)./mub);
|
||||
Ezbu_1=exp((capK-capKn1)./mub);
|
||||
dNCPcap=-mub.*log(Ezbu+Ezbu_1); %电容电抗器投入组数对应的凝聚函数常数项
|
||||
|
||||
dcapK_Zb=1;
|
||||
dNCP_dcap=(Ezbu-Ezbu_1)./(Ezbu+Ezbu_1); %凝聚函数对capK求一次偏导
|
||||
d2NCP_dcap2=-(oneCap-dNCP_dcap.^2)./mub; %凝聚函数对capK求二次偏导
|
||||
capBi_dBci=capBi.*dcapK_Zb;
|
||||
end
|
||||
if times==1
|
||||
dNCPT=[];dNCPT_dt=[];d2NCPT_dt2=[];dT_Zt=[];transGmut=[];transBmut=[];dNCPcap=[];dNCP_dcap=[];d2NCP_dcap2=[];capBi_dBci=[];
|
||||
end
|
||||
hx=[dP;dQ;dNCPT;dNCPcap];
|
||||
fx=full(fx);
|
||||
max_hx=full(max(abs(hx)));
|
||||
if firstOK==1
|
||||
max_hx=full(tmpmax_hx);
|
||||
end
|
||||
fprintf('%4.0f %4.4e %4.4e %7.6f\n',k,Gap,max_hx,fx); %输出每次迭代结果
|
||||
%% 保留每次迭代的互补间隙和最大不平衡量
|
||||
if times==1
|
||||
xz1=[xz1 k];
|
||||
dmaxOut1=[dmaxOut1 Gap];
|
||||
xz3=[xz3 k];
|
||||
dmaxOut3=[dmaxOut3 max_hx];
|
||||
end
|
||||
if times==2
|
||||
if firstOK==1
|
||||
xz1=[xz1 k];
|
||||
dmaxOut1=[dmaxOut1 Gap];
|
||||
xz3=[xz3 k];
|
||||
dmaxOut3=[dmaxOut3 max_hx];
|
||||
firstOK=0;
|
||||
else
|
||||
xz2=[xz2 k];
|
||||
dmaxOut2=[dmaxOut2 Gap];
|
||||
xz4=[xz4 k];
|
||||
dmaxOut4=[dmaxOut4 max_hx];
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
function [nodeNum,lineNum,capacity,kmax,centrPara,accuracy,opfGoal,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,...
|
||||
pvQmin,pvQmax,pgNumall,pgNodeall,pgNum,pgNode,a,b,c,Pmin,Pmax,capNum,capI,capGi,capBi,capK,capKmin,capKmax,Vmin,Vmax]=readData(data)
|
||||
%程序功能:读取数据
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 读取系统参数
|
||||
nodeNum=data(1,1); %系统节点数
|
||||
lineNum=data(1,2); %线路变压器数
|
||||
capacity=data(1,3); %基准容量
|
||||
kmax=data(1,4); %最大迭代次数
|
||||
centrPara=data(1,5); %中心参数
|
||||
accuracy=data(2,1); %计算精度
|
||||
opfGoal=data(2,2); %目标函数类型
|
||||
balNum=data(3,1); %平衡节点数
|
||||
balNode=data(3,2); %平衡节点编号
|
||||
%% 获取首列元素为0的行号
|
||||
zeroIndex=find(data(:,1)==0);
|
||||
%% 读取线路参数
|
||||
mtrLine=data(zeroIndex(1)+1:zeroIndex(2)-1,:);
|
||||
%% 读取接地支路参数
|
||||
mtrGround=data(zeroIndex(2)+1:zeroIndex(3)-1,:);
|
||||
%% 读取变压器支路参数
|
||||
mtrTrans=data(zeroIndex(3)+1:zeroIndex(4)-1,:);
|
||||
%% 读取运行参数
|
||||
runPara=data(zeroIndex(4)+1:zeroIndex(5)-1,:);
|
||||
pqNode=runPara(:,1);
|
||||
Pg=sparse(nodeNum,1);
|
||||
Qg=Pg;Pd=Pg;Qd=Pg;
|
||||
Pg(pqNode)=runPara(:,2)/capacity; %节点有功出力
|
||||
Qg(pqNode)=runPara(:,3)/capacity; %节点无功出力
|
||||
Pd(pqNode)=runPara(:,4)/capacity; %节点有功负荷
|
||||
Qd(pqNode)=runPara(:,5)/capacity; %节点无功负荷
|
||||
%% 读取PV节点和平衡节点参数
|
||||
mtrPV=data(zeroIndex(5)+1:zeroIndex(6)-1,:);
|
||||
pvNum=zeroIndex(6)-zeroIndex(5)-1;
|
||||
pvNode=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,1),nodeNum,1);
|
||||
pvNode=find(pvNode); %PV节点和平衡节点编号
|
||||
pvV=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,2),nodeNum,1); %PV节点和平衡节点给定电压
|
||||
pvQmin=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,3),nodeNum,1)/capacity; %无功出力下限
|
||||
pvQmax=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,4),nodeNum,1)/capacity; %无功出力上限
|
||||
%% 读取经济参数
|
||||
economyPara=data(zeroIndex(6)+1:zeroIndex(7)-1,:);
|
||||
[ecoRow,ecoCol]=size(economyPara);
|
||||
if ecoCol==7
|
||||
pgctrl=find(economyPara(:,7)); %可调发电机的下标
|
||||
else
|
||||
pgctrl=1:ecoRow;
|
||||
end
|
||||
pgNumall=zeroIndex(7)-zeroIndex(6)-1; %发电机台数
|
||||
pgNodeall=economyPara(:,1); %发电机节点号
|
||||
pgNum=length(pgctrl); %可调发电机台数
|
||||
pgNode=pgNodeall(pgctrl); %可调发电机节点号
|
||||
c=sparse(economyPara(:,1),ones(pgNum,1),economyPara(:,2),nodeNum,1);
|
||||
b=sparse(economyPara(:,1),ones(pgNum,1),economyPara(:,3),nodeNum,1);
|
||||
a=sparse(economyPara(:,1),ones(pgNum,1),economyPara(:,4),nodeNum,1);
|
||||
Pmin=sparse(economyPara(:,1),ones(pgNum,1),economyPara(:,5),nodeNum,1)/capacity;%发电机有功出力下限
|
||||
Pmax=sparse(economyPara(:,1),ones(pgNum,1),economyPara(:,6),nodeNum,1)/capacity;%发电机有功出力上限
|
||||
%% 读可调电容器组参数
|
||||
capPara=data(zeroIndex(7)+1:zeroIndex(8)-1,:);
|
||||
capNum=zeroIndex(8)-zeroIndex(7)-1;
|
||||
capI=capPara(:,2); %电容器投入节点编号
|
||||
capGi=capPara(:,3); %可调电容器单位电导
|
||||
capBi=capPara(:,4); %可调电容器单位电纳
|
||||
capK=capPara(:,5); %初始电纳值
|
||||
capKmin=capPara(:,6); %电容器最小档位
|
||||
capKmax=capPara(:,7); %电容器最大档位
|
||||
Vmin=0.9*ones(nodeNum,1); %节点电压下限
|
||||
Vmax=1.07*ones(nodeNum,1); %节点电压上限
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
function [nodeNum,lineNum,capacity,kmax,accuracy,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,pvQmin,pvQmax,...
|
||||
mtrCapacitor,pgNum,pgNode,a,b,c,Pmin,Pmax,Vmin,Vmax,centrPara]=readData_RPP(data)
|
||||
%程序功能:读取数据
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 获取首列元素为0的行号
|
||||
zeroIndex=find(data(:,1)==0);
|
||||
%% 读取系统参数
|
||||
nodeNum=data(1,1); %系统节点数
|
||||
capacity=data(1,3); %基准容量
|
||||
accuracy=data(1,4); %计算精度
|
||||
balNum=zeroIndex(2)-zeroIndex(1)-1; %平衡节点数
|
||||
balNode=data(zeroIndex(1)+1:zeroIndex(2)-1,2); %平衡节点编号
|
||||
kmax=100; %最大迭代次数
|
||||
centrPara=0.1; %中心参数
|
||||
|
||||
%% 读取线路参数
|
||||
mtrLine=data(zeroIndex(2)+1:zeroIndex(3)-1,:);
|
||||
lineNum=length(mtrLine);
|
||||
%% 读取变压器支路参数
|
||||
mtrTrans=data(zeroIndex(3)+1:zeroIndex(4)-1,:);
|
||||
%% 读取接地支路参数
|
||||
mtrGround=data(zeroIndex(5)+1:zeroIndex(6)-1,:);
|
||||
%% 读可调电容器参数
|
||||
mtrCapacitor=data(zeroIndex(6)+1:zeroIndex(7)-1,:);
|
||||
%% 读取运行参数
|
||||
runPara=data(zeroIndex(8)+1:zeroIndex(9)-1,:);
|
||||
pqNode=runPara(:,2);
|
||||
Pg=sparse(nodeNum,1);
|
||||
Qg=Pg;Pd=Pg;Qd=Pg;
|
||||
Pg(pqNode)=runPara(:,3); %节点有功出力
|
||||
Qg(pqNode)=runPara(:,4); %节点无功出力
|
||||
Pd(pqNode)=runPara(:,5); %节点有功负荷
|
||||
Qd(pqNode)=runPara(:,6); %节点无功负荷
|
||||
%% 有功出力限制
|
||||
mtrPGLimit=data(zeroIndex(9)+1:zeroIndex(10)-1,:);
|
||||
pgNum=zeroIndex(10)-zeroIndex(9)-1; %发电机台数
|
||||
pgNode=mtrPGLimit(:,3); %发电机节点号
|
||||
c=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,8),nodeNum,1);
|
||||
b=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,9),nodeNum,1);
|
||||
a=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,10),nodeNum,1);
|
||||
Pmin=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,4),nodeNum,1); %发电机有功出力下限
|
||||
Pmax=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,5),nodeNum,1); %发电机有功出力上限
|
||||
|
||||
%% 无功出力限制
|
||||
mtrQGLimit=data(zeroIndex(11)+1:zeroIndex(12)-1,:);
|
||||
pvNum=zeroIndex(12)-zeroIndex(11)-1;
|
||||
pvNode=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,3),nodeNum,1);
|
||||
pvNode=find(pvNode); %PV节点和平衡节点编号
|
||||
pvV=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,4),nodeNum,1); %PV节点和平衡节点给定电压
|
||||
pvQmin=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,5),nodeNum,1); %无功出力下限
|
||||
pvQmax=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,6),nodeNum,1); %无功出力上限
|
||||
|
||||
%% 电压限制
|
||||
mtrVLimit=data(zeroIndex(13)+1:zeroIndex(14)-1,:);
|
||||
VLimitNum=zeroIndex(14)-zeroIndex(13)-1; %电压限制的节点数
|
||||
Vmin=sparse(mtrVLimit(:,2),ones(VLimitNum,1),mtrVLimit(:,3),nodeNum,1);
|
||||
Vmax=sparse(mtrVLimit(:,2),ones(VLimitNum,1),mtrVLimit(:,4),nodeNum,1);
|
||||
Vmin=0.9*ones(nodeNum,1); %非电压监测点电压限制
|
||||
Vmax=1.15*ones(nodeNum,1);
|
||||
node_Z=data(zeroIndex(14)+1:zeroIndex(15)-1,1); %变压器中性点,这些点的电压不考核,设置为0.8-1.2
|
||||
Vmin(node_Z)=0.85;
|
||||
Vmax(node_Z)=1.15;
|
||||
node_220=data(zeroIndex(15)+1:zeroIndex(16)-1,1); %220kV及以上节点
|
||||
Vmin(node_220)=0.95;
|
||||
Vmax(node_220)=1.1;
|
||||
node_750=data(zeroIndex(16)+1:zeroIndex(17)-1,1); %750kV节点
|
||||
Vmin(node_750)=1;
|
||||
Vmax(node_750)=1.1;
|
||||
node_Monitor=data(zeroIndex(17)+1:zeroIndex(18)-1,1); %发电厂升压变以及800kV变电站220、363kV母线节点,电压监测点
|
||||
Vmin(node_Monitor)=1;
|
||||
Vmax(node_Monitor)=1.1;
|
||||
|
|
@ -0,0 +1,212 @@
|
|||
33 8.7205e-006 0.780222 0.778376 0.5881 2.9858e-006 1
|
||||
0
|
||||
8 5 0.9500 0.9739 1.0000 0.9500
|
||||
25 26 1.0000 1.0133 1.0500 1.0000
|
||||
17 30 1.0000 1.0052 1.0500 1.0000
|
||||
37 38 1.0000 1.0102 1.0500 1.0000
|
||||
59 63 1.0000 1.0046 1.0500 1.0000
|
||||
61 64 1.0000 1.0085 1.0500 1.0000
|
||||
65 66 1.0000 0.9816 1.0000 0.9500
|
||||
68 69 1.0000 1.0263 1.0500 1.0000
|
||||
80 81 1.0000 1.0017 1.0500 1.0000
|
||||
0
|
||||
1 1.0216 -0.1935 1.0397 1.0428
|
||||
2 1.0326 -0.1797 1.0481 1.0521
|
||||
3 1.0308 -0.1821 1.0467 1.0493
|
||||
4 1.0561 -0.1349 1.0647 1.0694
|
||||
5 1.0621 -0.1302 1.0700 1.0700
|
||||
6 1.0477 -0.1610 1.0600 1.0647
|
||||
7 1.0470 -0.1636 1.0597 1.0644
|
||||
8 1.0445 -0.0651 1.0466 1.0534
|
||||
9 1.0693 0.0387 1.0700 1.0700
|
||||
10 1.0542 0.1501 1.0648 1.0578
|
||||
11 1.0434 -0.1626 1.0560 1.0599
|
||||
12 1.0486 -0.1621 1.0610 1.0657
|
||||
13 1.0249 -0.1895 1.0423 1.0468
|
||||
14 1.0408 -0.1841 1.0570 1.0621
|
||||
15 1.0268 -0.2184 1.0498 1.0560
|
||||
16 1.0386 -0.1802 1.0541 1.0593
|
||||
17 1.0451 -0.1834 1.0611 1.0672
|
||||
18 1.0287 -0.2187 1.0517 1.0577
|
||||
19 1.0231 -0.2261 1.0478 1.0540
|
||||
20 1.0133 -0.2210 1.0371 1.0422
|
||||
21 1.0126 -0.2037 1.0329 1.0371
|
||||
22 1.0220 -0.1737 1.0367 1.0399
|
||||
23 1.0455 -0.1109 1.0513 1.0528
|
||||
24 1.0365 -0.1213 1.0436 1.0448
|
||||
25 1.0700 0.0068 1.0700 1.0700
|
||||
26 1.0676 0.0720 1.0700 1.0700
|
||||
27 1.0297 -0.1921 1.0475 1.0500
|
||||
28 1.0184 -0.2123 1.0403 1.0433
|
||||
29 1.0160 -0.2219 1.0399 1.0435
|
||||
30 1.0627 -0.1032 1.0677 1.0697
|
||||
31 1.0196 -0.2188 1.0428 1.0466
|
||||
32 1.0262 -0.1976 1.0451 1.0481
|
||||
33 1.0204 -0.2266 1.0453 1.0531
|
||||
34 1.0321 -0.2187 1.0551 1.0644
|
||||
35 1.0278 -0.2255 1.0522 1.0616
|
||||
36 1.0283 -0.2258 1.0528 1.0622
|
||||
37 1.0355 -0.2111 1.0568 1.0662
|
||||
38 1.0615 -0.1347 1.0700 1.0700
|
||||
39 1.0057 -0.2531 1.0370 1.0462
|
||||
40 1.0017 -0.2657 1.0363 1.0452
|
||||
41 0.9957 -0.2677 1.0311 1.0398
|
||||
42 1.0147 -0.2357 1.0417 1.0496
|
||||
43 1.0201 -0.2059 1.0407 1.0495
|
||||
44 1.0244 -0.1492 1.0352 1.0429
|
||||
45 1.0255 -0.1126 1.0317 1.0384
|
||||
46 1.0432 -0.0678 1.0454 1.0510
|
||||
47 1.0486 -0.0379 1.0493 1.0543
|
||||
48 1.0571 -0.0304 1.0575 1.0624
|
||||
49 1.0631 -0.0104 1.0632 1.0689
|
||||
50 1.0576 -0.0231 1.0579 1.0637
|
||||
51 1.0475 -0.0366 1.0481 1.0540
|
||||
52 1.0440 -0.0431 1.0449 1.0507
|
||||
53 1.0473 -0.0345 1.0479 1.0537
|
||||
54 1.0645 -0.0036 1.0645 1.0700
|
||||
55 1.0597 -0.0194 1.0599 1.0656
|
||||
56 1.0609 -0.0153 1.0610 1.0667
|
||||
57 1.0572 -0.0249 1.0575 1.0633
|
||||
58 1.0512 -0.0320 1.0516 1.0574
|
||||
59 1.0632 0.0010 1.0632 1.0700
|
||||
60 1.0596 -0.0064 1.0596 1.0679
|
||||
61 1.0616 0.0047 1.0616 1.0700
|
||||
62 1.0577 -0.0139 1.0578 1.0660
|
||||
63 1.0685 0.0066 1.0686 1.0693
|
||||
64 1.0693 0.0095 1.0693 1.0694
|
||||
65 1.0698 0.0193 1.0700 1.0700
|
||||
66 1.0625 0.0107 1.0625 1.0700
|
||||
67 1.0549 -0.0146 1.0550 1.0629
|
||||
68 1.0633 -0.0037 1.0633 1.0688
|
||||
69 1.0100 -0.0000 1.0100 1.0100
|
||||
70 0.9987 -0.1218 1.0061 1.0065
|
||||
71 1.0011 -0.1258 1.0089 1.0094
|
||||
72 1.0138 -0.1342 1.0227 1.0235
|
||||
73 0.9996 -0.1282 1.0077 1.0082
|
||||
74 0.9851 -0.1432 0.9955 0.9958
|
||||
75 0.9857 -0.1200 0.9930 0.9932
|
||||
76 0.9718 -0.1357 0.9813 0.9816
|
||||
77 1.0311 -0.0500 1.0323 1.0327
|
||||
78 1.0274 -0.0529 1.0288 1.0292
|
||||
79 1.0313 -0.0441 1.0323 1.0327
|
||||
80 1.0558 0.0061 1.0558 1.0563
|
||||
81 1.0665 -0.0004 1.0665 1.0696
|
||||
82 1.0349 -0.0706 1.0373 1.0380
|
||||
83 1.0381 -0.0727 1.0407 1.0412
|
||||
84 1.0418 -0.0659 1.0439 1.0442
|
||||
85 1.0501 -0.0577 1.0517 1.0518
|
||||
86 1.0400 -0.0762 1.0428 1.0430
|
||||
87 1.0487 -0.0698 1.0510 1.0512
|
||||
88 1.0545 -0.0333 1.0551 1.0551
|
||||
89 1.0699 0.0148 1.0700 1.0700
|
||||
90 1.0476 -0.0753 1.0503 1.0503
|
||||
91 1.0517 -0.0607 1.0535 1.0535
|
||||
92 1.0588 -0.0252 1.0591 1.0592
|
||||
93 1.0475 -0.0349 1.0481 1.0483
|
||||
94 1.0439 -0.0362 1.0445 1.0448
|
||||
95 1.0302 -0.0497 1.0314 1.0317
|
||||
96 1.0361 -0.0503 1.0374 1.0378
|
||||
97 1.0415 -0.0288 1.0419 1.0423
|
||||
98 1.0532 -0.0168 1.0533 1.0537
|
||||
99 1.0602 -0.0204 1.0604 1.0606
|
||||
100 1.0690 0.0013 1.0690 1.0691
|
||||
101 1.0527 -0.0242 1.0530 1.0531
|
||||
102 1.0562 -0.0266 1.0565 1.0566
|
||||
103 1.0700 -0.0016 1.0700 1.0700
|
||||
104 1.0536 -0.0636 1.0556 1.0556
|
||||
105 1.0499 -0.0766 1.0527 1.0527
|
||||
106 1.0405 -0.0869 1.0442 1.0442
|
||||
107 1.0315 -0.1257 1.0391 1.0392
|
||||
108 1.0540 -0.0783 1.0569 1.0569
|
||||
109 1.0533 -0.0774 1.0561 1.0561
|
||||
110 1.0550 -0.0696 1.0573 1.0574
|
||||
111 1.0699 -0.0129 1.0700 1.0700
|
||||
112 1.0363 -0.1103 1.0421 1.0421
|
||||
113 1.0423 -0.1868 1.0589 1.0643
|
||||
114 1.0216 -0.2030 1.0416 1.0444
|
||||
115 1.0213 -0.2033 1.0414 1.0442
|
||||
116 1.0633 -0.0108 1.0634 1.0683
|
||||
117 1.0301 -0.1840 1.0464 1.0511
|
||||
118 0.9720 -0.1339 0.9812 0.9815
|
||||
0
|
||||
10 3.6967 3.7103
|
||||
12 2.0000 2.0000
|
||||
25 1.0556 1.0463
|
||||
26 4.0000 4.0000
|
||||
49 3.7579 3.7607
|
||||
54 2.9968 2.9980
|
||||
59 2.9007 2.8967
|
||||
61 1.2241 1.2264
|
||||
65 3.8134 3.8173
|
||||
66 1.0000 1.0000
|
||||
69 2.4623 2.4482
|
||||
80 5.2137 5.2174
|
||||
89 3.8040 3.8029
|
||||
100 2.6935 2.6935
|
||||
103 1.4836 1.4828
|
||||
111 0.7977 0.7977
|
||||
0
|
||||
1 0.1500 0.1500
|
||||
4 -0.4047 0.2368
|
||||
6 0.1529 0.2453
|
||||
8 -0.3565 -0.8771
|
||||
10 -0.9697 -1.1848
|
||||
12 0.4892 0.5382
|
||||
15 0.2984 0.2995
|
||||
18 0.3795 0.3700
|
||||
19 0.2393 0.2399
|
||||
24 -0.0256 -0.0275
|
||||
25 -0.0467 -0.4700
|
||||
26 -0.4585 -0.0888
|
||||
27 0.3078 0.3073
|
||||
31 0.2880 0.2864
|
||||
32 0.2330 0.2330
|
||||
34 0.0259 0.0523
|
||||
36 0.2396 0.2400
|
||||
40 0.3458 0.3442
|
||||
42 0.4118 0.4120
|
||||
46 -0.0159 -0.0186
|
||||
49 0.3478 0.3367
|
||||
54 0.2866 0.2579
|
||||
55 0.1840 0.1814
|
||||
56 0.1392 0.1419
|
||||
59 0.8004 0.8322
|
||||
61 -0.3634 -0.3667
|
||||
62 0.1107 0.1089
|
||||
65 -0.6700 -0.6698
|
||||
66 -0.1902 -0.5252
|
||||
69 -2.6190 -2.0627
|
||||
70 0.2230 0.2224
|
||||
72 -0.0494 -0.0494
|
||||
73 -0.0211 -0.0211
|
||||
74 0.0486 0.0157
|
||||
76 0.2300 0.2300
|
||||
77 0.7000 0.7000
|
||||
80 0.2739 0.1508
|
||||
85 0.1728 0.1701
|
||||
87 0.0116 0.0116
|
||||
89 0.0869 0.0827
|
||||
90 0.4446 0.4447
|
||||
91 0.0008 0.0007
|
||||
92 0.0900 0.0900
|
||||
99 -0.0335 -0.0335
|
||||
100 0.4333 0.4312
|
||||
103 0.0519 0.0493
|
||||
104 0.2297 0.2299
|
||||
105 -0.0036 0.0234
|
||||
107 -0.3948 -0.3468
|
||||
110 0.2270 0.2276
|
||||
111 -0.0427 -0.0430
|
||||
112 0.1248 0.1246
|
||||
113 -0.0204 -0.0315
|
||||
116 0.0949 -0.0684
|
||||
0
|
||||
17 0.00 0.0054 0.00 0.10
|
||||
34 0.30 0.2728 0.20 0.30
|
||||
44 0.10 0.1038 0.10 0.20
|
||||
107 0.50 0.4555 0.40 0.50
|
||||
82 0.30 0.3105 0.30 0.40
|
||||
48 0.10 0.0803 0.00 0.10
|
||||
74 0.40 0.4323 0.40 0.50
|
||||
105 0.20 0.1753 0.10 0.20
|
||||
0
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
28 5.0142e-006 0.024984 0.024929 0.3636 2.6240e-006 1
|
||||
0
|
||||
6 9 1.1000 1.1000 1.1000 1.0500
|
||||
6 10 0.9000 0.9000 0.9500 0.9000
|
||||
4 12 0.9500 0.9554 1.0000 0.9500
|
||||
28 27 0.9500 0.9565 1.0000 0.9500
|
||||
0
|
||||
1 1.0600 -0.0000 1.0600 1.0600
|
||||
2 1.0568 -0.0124 1.0568 1.0575
|
||||
3 1.0508 -0.0252 1.0511 1.0523
|
||||
4 1.0480 -0.0298 1.0484 1.0500
|
||||
5 1.0374 -0.0754 1.0401 1.0413
|
||||
6 1.0494 -0.0383 1.0500 1.0513
|
||||
7 1.0366 -0.0622 1.0385 1.0397
|
||||
8 1.0490 -0.0376 1.0497 1.0513
|
||||
9 1.0366 -0.0125 1.0367 1.0329
|
||||
10 1.0661 -0.0547 1.0675 1.0695
|
||||
11 1.0635 0.0895 1.0673 1.0477
|
||||
12 1.0696 -0.0278 1.0700 1.0700
|
||||
13 1.0679 0.0377 1.0686 1.0700
|
||||
14 1.0570 -0.0458 1.0580 1.0582
|
||||
15 1.0538 -0.0507 1.0550 1.0555
|
||||
16 1.0600 -0.0441 1.0609 1.0618
|
||||
17 1.0593 -0.0549 1.0607 1.0623
|
||||
18 1.0455 -0.0637 1.0475 1.0484
|
||||
19 1.0438 -0.0682 1.0461 1.0474
|
||||
20 1.0486 -0.0659 1.0506 1.0521
|
||||
21 1.0557 -0.0639 1.0576 1.0595
|
||||
22 1.0569 -0.0644 1.0589 1.0607
|
||||
23 1.0498 -0.0658 1.0519 1.0526
|
||||
24 1.0531 -0.0802 1.0562 1.0573
|
||||
25 1.0550 -0.0923 1.0590 1.0576
|
||||
26 1.0375 -0.0979 1.0421 1.0406
|
||||
27 1.0651 -0.0960 1.0694 1.0664
|
||||
28 1.0446 -0.0435 1.0455 1.0472
|
||||
29 1.0442 -0.1148 1.0505 1.0474
|
||||
30 1.0317 -0.1281 1.0396 1.0364
|
||||
0
|
||||
1 0.3890 0.3889
|
||||
2 0.6000 0.6000
|
||||
5 0.5100 0.5100
|
||||
8 0.3500 0.3500
|
||||
11 0.5100 0.5100
|
||||
13 0.5000 0.5000
|
||||
0
|
||||
1 -0.0539 -0.0739
|
||||
2 0.0762 0.0773
|
||||
5 0.2120 0.2140
|
||||
8 0.2696 0.2785
|
||||
11 0.1815 0.0997
|
||||
13 0.0045 0.0153
|
||||
0
|
||||
10 0.30 0.3583 0.30 0.40
|
||||
24 0.10 0.1051 0.10 0.20
|
||||
0
|
||||
|
|
@ -0,0 +1,489 @@
|
|||
46 2.5859e-006 3.368072 3.336695 1.1765 1.9906e-007 1
|
||||
0
|
||||
297 269 1.0000 0.9730 1.0000 0.9500
|
||||
269 226 1.0000 0.9922 1.0000 0.9500
|
||||
269 227 0.9500 0.9753 1.0000 0.9500
|
||||
291 62 1.0000 0.9965 1.0000 0.9500
|
||||
291 63 0.9000 0.9228 0.9500 0.9000
|
||||
291 145 1.0000 1.0002 1.0500 1.0000
|
||||
291 64 1.0500 1.0506 1.1000 1.0500
|
||||
291 65 1.0500 1.0421 1.0500 1.0000
|
||||
228 47 0.9500 0.9695 1.0000 0.9500
|
||||
225 48 0.9500 0.9741 1.0000 0.9500
|
||||
229 49 0.9500 0.9687 1.0000 0.9500
|
||||
229 50 0.9500 0.9694 1.0000 0.9500
|
||||
271 66 1.0000 0.9826 1.0000 0.9500
|
||||
271 67 1.0000 0.9866 1.0000 0.9500
|
||||
300 51 0.9500 0.9556 1.0000 0.9500
|
||||
300 52 0.9500 0.9640 1.0000 0.9500
|
||||
300 53 0.9500 0.9537 1.0000 0.9500
|
||||
270 59 1.0000 0.9780 1.0000 0.9500
|
||||
270 60 0.9500 0.9679 1.0000 0.9500
|
||||
270 61 1.0000 0.9787 1.0000 0.9500
|
||||
300 54 1.0000 0.9923 1.0000 0.9500
|
||||
300 55 0.9500 0.9685 1.0000 0.9500
|
||||
300 56 1.0000 0.9751 1.0000 0.9500
|
||||
300 57 1.0000 0.9734 1.0000 0.9500
|
||||
300 58 0.9500 0.9606 1.0000 0.9500
|
||||
145 69 1.0500 1.0423 1.0500 1.0000
|
||||
6 290 1.1000 1.0990 1.1000 1.0500
|
||||
292 146 1.0000 0.9992 1.0000 0.9500
|
||||
292 230 1.0000 0.9951 1.0000 0.9500
|
||||
292 70 1.1000 1.0701 1.1000 1.0500
|
||||
272 147 0.9500 0.9418 0.9500 0.9000
|
||||
272 71 1.0000 0.9815 1.0000 0.9500
|
||||
73 273 0.9000 0.9000 0.9500 0.9000
|
||||
231 73 1.1000 1.1000 1.1000 1.0500
|
||||
286 76 0.9500 0.9758 1.0000 0.9500
|
||||
149 286 0.9500 0.9567 1.0000 0.9500
|
||||
233 232 0.9500 0.9662 1.0000 0.9500
|
||||
235 234 1.0000 0.9892 1.0000 0.9500
|
||||
81 237 0.9000 0.9142 0.9500 0.9000
|
||||
240 275 0.9500 0.9716 1.0000 0.9500
|
||||
240 153 0.9500 0.9763 1.0000 0.9500
|
||||
276 158 0.9000 0.9000 0.9500 0.9000
|
||||
159 88 1.0500 1.0768 1.1000 1.0500
|
||||
277 246 1.0500 1.0697 1.1000 1.0500
|
||||
248 164 0.9500 0.9619 1.0000 0.9500
|
||||
91 279 1.0000 1.0122 1.0500 1.0000
|
||||
249 280 1.0000 1.0074 1.0500 1.0000
|
||||
163 169 1.0500 1.0220 1.0500 1.0000
|
||||
175 130 1.0000 0.9983 1.0000 0.9500
|
||||
96 178 1.0000 0.9875 1.0000 0.9500
|
||||
176 95 1.0500 1.0253 1.0500 1.0000
|
||||
256 191 1.0000 1.0027 1.0500 1.0000
|
||||
299 98 0.9500 0.9738 1.0000 0.9500
|
||||
299 104 0.9500 0.9644 1.0000 0.9500
|
||||
182 116 0.9000 0.9099 0.9500 0.9000
|
||||
186 198 0.9500 0.9333 0.9500 0.9000
|
||||
187 260 0.9000 0.9221 0.9500 0.9000
|
||||
281 101 0.9500 0.9756 1.0000 0.9500
|
||||
281 188 0.9500 0.9744 1.0000 0.9500
|
||||
282 118 0.9000 0.9074 0.9500 0.9000
|
||||
105 116 0.9000 0.9071 0.9500 0.9000
|
||||
189 120 0.9500 0.9265 0.9500 0.9000
|
||||
190 108 0.9500 0.9551 1.0000 0.9500
|
||||
193 97 1.0000 0.9918 1.0000 0.9500
|
||||
109 178 1.0000 0.9866 1.0000 0.9500
|
||||
112 295 0.9000 0.9000 0.9500 0.9000
|
||||
194 190 1.1000 1.1000 1.1000 1.0500
|
||||
119 185 0.9500 0.9247 0.9500 0.9000
|
||||
202 283 1.0000 1.0237 1.0500 1.0000
|
||||
204 263 1.0000 1.0270 1.0500 1.0000
|
||||
206 213 0.9500 0.9600 1.0000 0.9500
|
||||
208 224 1.1000 1.0982 1.1000 1.0500
|
||||
127 160 1.0500 1.0553 1.1000 1.0500
|
||||
128 298 1.0000 1.0150 1.0500 1.0000
|
||||
209 143 1.0000 1.0180 1.0500 1.0000
|
||||
131 289 1.0500 1.0311 1.0500 1.0000
|
||||
298 213 1.0500 1.0402 1.0500 1.0000
|
||||
216 284 0.9500 0.9488 0.9500 0.9000
|
||||
134 217 0.9000 0.9161 0.9500 0.9000
|
||||
220 7 0.9000 0.9000 0.9500 0.9000
|
||||
221 10 0.9000 0.9000 0.9500 0.9000
|
||||
263 143 0.9500 0.9700 1.0000 0.9500
|
||||
254 26 1.0000 0.9931 1.0000 0.9500
|
||||
255 27 1.0500 1.0657 1.1000 1.0500
|
||||
37 275 0.9500 0.9519 1.0000 0.9500
|
||||
39 242 0.9500 0.9646 1.0000 0.9500
|
||||
0
|
||||
1 1.0073 -0.2228 1.0316 1.0210
|
||||
2 0.8397 -0.4030 0.9314 0.9342
|
||||
3 0.9373 -0.3358 0.9956 0.9992
|
||||
4 0.9957 -0.1517 1.0072 1.0305
|
||||
5 0.8976 -0.0657 0.9000 0.9000
|
||||
6 0.8551 -0.3039 0.9075 0.9007
|
||||
7 1.0278 -0.0923 1.0319 1.0320
|
||||
8 0.8710 -0.2709 0.9121 0.9118
|
||||
9 0.8944 -0.1003 0.9000 0.9000
|
||||
10 1.0519 -0.1418 1.0614 1.0695
|
||||
11 0.9275 -0.0890 0.9318 0.9392
|
||||
12 0.9582 -0.3242 1.0116 1.0323
|
||||
13 0.9877 -0.1939 1.0066 1.0125
|
||||
14 1.0331 -0.2785 1.0700 1.0700
|
||||
15 0.9990 -0.3579 1.0612 1.0582
|
||||
16 0.9518 -0.4418 1.0494 1.0541
|
||||
17 0.9714 -0.3942 1.0483 1.0599
|
||||
18 0.8941 -0.4999 1.0244 1.0275
|
||||
19 0.7898 -0.6978 1.0539 1.0668
|
||||
20 0.9667 -0.4494 1.0660 1.0677
|
||||
21 0.9624 -0.3942 1.0400 1.0400
|
||||
22 1.0153 -0.3378 1.0700 1.0700
|
||||
23 0.9658 -0.4542 1.0673 1.0690
|
||||
24 0.9458 -0.4039 1.0284 1.0284
|
||||
25 1.0289 -0.2014 1.0485 1.0597
|
||||
26 1.0352 -0.2392 1.0625 1.0700
|
||||
27 0.8368 -0.3665 0.9136 0.9000
|
||||
28 1.0566 -0.1686 1.0700 1.0700
|
||||
29 1.0497 -0.1601 1.0618 1.0700
|
||||
30 1.0622 -0.1291 1.0700 1.0700
|
||||
31 1.0533 -0.1885 1.0700 1.0700
|
||||
32 1.0688 -0.0515 1.0700 1.0700
|
||||
33 1.0075 -0.2321 1.0339 1.0392
|
||||
34 1.0427 -0.2404 1.0700 1.0700
|
||||
35 1.0431 -0.0897 1.0469 1.0506
|
||||
36 0.9105 0.0191 0.9107 0.9181
|
||||
37 0.9727 -0.2889 1.0147 1.0168
|
||||
38 1.0507 -0.0000 1.0507 1.0507
|
||||
39 0.9714 -0.2192 0.9958 1.0068
|
||||
40 0.9924 -0.2403 1.0211 1.0141
|
||||
41 1.0457 -0.2265 1.0700 1.0700
|
||||
42 1.0275 -0.1638 1.0405 1.0196
|
||||
43 1.0240 -0.1432 1.0340 1.0306
|
||||
44 1.0658 0.0949 1.0700 1.0700
|
||||
45 1.0524 -0.1183 1.0590 1.0700
|
||||
46 0.8911 0.1260 0.9000 0.9000
|
||||
47 0.9702 -0.4378 1.0644 1.0700
|
||||
48 0.9769 -0.4366 1.0700 1.0700
|
||||
49 0.9757 -0.4217 1.0630 1.0700
|
||||
50 0.9770 -0.4208 1.0637 1.0700
|
||||
51 0.9058 -0.4766 1.0235 1.0700
|
||||
52 0.9228 -0.4666 1.0341 1.0700
|
||||
53 0.9014 -0.4795 1.0210 1.0700
|
||||
54 0.9140 -0.4197 1.0058 1.0700
|
||||
55 0.9321 -0.4605 1.0397 1.0700
|
||||
56 0.8901 -0.4397 0.9927 1.0700
|
||||
57 0.8898 -0.4355 0.9906 1.0700
|
||||
58 0.9154 -0.4720 1.0299 1.0700
|
||||
59 0.9036 -0.4206 0.9967 1.0700
|
||||
60 0.9355 -0.4514 1.0387 1.0700
|
||||
61 0.9032 -0.4235 0.9976 1.0700
|
||||
62 0.9820 -0.4068 1.0630 1.0700
|
||||
63 0.9948 -0.3723 1.0622 1.0700
|
||||
64 1.0208 -0.2017 1.0405 1.0700
|
||||
65 1.0104 -0.2114 1.0323 1.0699
|
||||
66 0.9150 -0.4099 1.0026 1.0700
|
||||
67 0.9229 -0.4038 1.0074 1.0700
|
||||
68 0.9491 -0.3935 1.0275 1.0492
|
||||
69 0.9375 -0.3690 1.0075 1.0235
|
||||
70 0.9687 -0.1813 0.9855 1.0080
|
||||
71 1.0332 -0.2054 1.0534 1.0629
|
||||
72 1.0218 -0.2498 1.0519 1.0519
|
||||
73 0.9193 -0.2423 0.9507 0.9494
|
||||
74 1.0163 -0.2953 1.0583 1.0514
|
||||
75 0.9828 -0.2963 1.0265 1.0400
|
||||
76 1.0232 -0.3128 1.0700 1.0700
|
||||
77 1.0008 -0.3273 1.0529 1.0429
|
||||
78 1.0099 -0.2982 1.0530 1.0526
|
||||
79 0.9650 -0.3796 1.0370 1.0296
|
||||
80 1.0195 -0.2297 1.0450 1.0530
|
||||
81 0.9585 -0.3249 1.0121 1.0207
|
||||
82 1.0147 -0.1810 1.0307 1.0389
|
||||
83 0.9845 -0.2844 1.0248 1.0250
|
||||
84 0.9757 -0.3742 1.0450 1.0463
|
||||
85 1.0017 -0.3213 1.0519 1.0482
|
||||
86 0.9990 -0.3185 1.0486 1.0452
|
||||
87 1.0188 -0.2917 1.0598 1.0700
|
||||
88 0.9239 -0.4112 1.0113 0.9983
|
||||
89 0.9622 -0.4066 1.0445 1.0462
|
||||
90 0.9899 -0.3519 1.0506 1.0564
|
||||
91 0.9501 -0.4359 1.0453 1.0594
|
||||
92 0.9556 -0.3910 1.0325 1.0387
|
||||
93 0.9038 -0.5288 1.0472 1.0594
|
||||
94 0.9357 -0.4640 1.0444 1.0493
|
||||
95 0.8312 -0.4795 0.9596 0.9712
|
||||
96 0.8445 -0.4684 0.9657 0.9642
|
||||
97 0.9038 -0.3509 0.9696 0.9753
|
||||
98 1.0398 -0.1882 1.0567 1.0484
|
||||
99 0.9382 -0.3945 1.0177 1.0203
|
||||
100 0.8931 -0.3481 0.9585 0.9568
|
||||
101 1.0299 -0.2383 1.0571 1.0488
|
||||
102 1.0400 -0.0790 1.0430 1.0481
|
||||
103 1.0265 -0.1313 1.0348 1.0547
|
||||
104 1.0446 -0.1844 1.0608 1.0560
|
||||
105 0.9648 -0.1953 0.9844 0.9930
|
||||
106 1.0595 -0.1494 1.0700 1.0700
|
||||
107 0.9162 -0.3276 0.9731 0.9848
|
||||
108 0.9469 -0.2523 0.9800 0.9764
|
||||
109 0.8573 -0.4685 0.9770 0.9759
|
||||
110 0.9749 -0.1795 0.9913 0.9905
|
||||
111 1.0201 -0.0908 1.0242 1.0244
|
||||
112 0.9807 -0.2369 1.0089 1.0085
|
||||
113 0.9773 0.0124 0.9773 0.9775
|
||||
114 0.9329 0.0628 0.9350 0.9351
|
||||
115 0.8618 -0.3582 0.9333 0.9384
|
||||
116 1.0354 -0.2699 1.0700 1.0700
|
||||
117 1.0307 -0.2200 1.0539 1.0560
|
||||
118 1.0200 -0.2884 1.0600 1.0657
|
||||
119 0.9414 -0.2743 0.9805 0.9746
|
||||
120 1.0266 -0.2051 1.0469 1.0700
|
||||
121 0.9235 -0.3840 1.0001 1.0037
|
||||
122 0.9501 -0.1864 0.9682 0.9669
|
||||
123 0.9483 -0.2016 0.9695 0.9682
|
||||
124 1.0121 0.3471 1.0700 1.0700
|
||||
125 0.9714 -0.0517 0.9728 0.9728
|
||||
126 0.9413 -0.3505 1.0044 1.0285
|
||||
127 0.9562 -0.4270 1.0473 1.0669
|
||||
128 0.9731 -0.3469 1.0331 1.0638
|
||||
129 0.9975 -0.3000 1.0416 1.0650
|
||||
130 0.9250 -0.4842 1.0441 1.0630
|
||||
131 0.9758 -0.3670 1.0425 1.0700
|
||||
132 0.9333 -0.2705 0.9717 0.9876
|
||||
133 0.8813 -0.2152 0.9071 0.9195
|
||||
134 0.8777 -0.2186 0.9046 0.9173
|
||||
135 1.0006 -0.2267 1.0260 1.0279
|
||||
136 0.9850 -0.2521 1.0167 1.0223
|
||||
137 0.9277 -0.2018 0.9494 0.9567
|
||||
138 0.9861 -0.1949 1.0052 1.0111
|
||||
139 0.9699 -0.2494 1.0015 1.0224
|
||||
140 0.9505 -0.2621 0.9860 1.0073
|
||||
141 0.9052 -0.3399 0.9669 0.9885
|
||||
142 0.8374 -0.5214 0.9865 0.9791
|
||||
143 1.0075 -0.3602 1.0700 1.0700
|
||||
144 0.9269 -0.4046 1.0114 1.0599
|
||||
145 0.9908 -0.3800 1.0611 1.0700
|
||||
146 1.0380 -0.2210 1.0613 1.0615
|
||||
147 1.0321 -0.2361 1.0588 1.0595
|
||||
148 1.0190 -0.2473 1.0486 1.0568
|
||||
149 1.0011 -0.2249 1.0260 1.0443
|
||||
150 1.0172 -0.2578 1.0494 1.0500
|
||||
151 0.9865 -0.3442 1.0449 1.0418
|
||||
152 0.9944 -0.3036 1.0397 1.0446
|
||||
153 1.0311 -0.2698 1.0658 1.0700
|
||||
154 0.9652 -0.4180 1.0518 1.0559
|
||||
155 0.9695 -0.3694 1.0375 1.0409
|
||||
156 1.0189 -0.2026 1.0388 1.0412
|
||||
157 0.9938 -0.3583 1.0564 1.0566
|
||||
158 1.0214 -0.2988 1.0642 1.0610
|
||||
159 0.9343 -0.4963 1.0579 1.0700
|
||||
160 0.9498 -0.3713 1.0198 1.0308
|
||||
161 0.9693 -0.3807 1.0413 1.0425
|
||||
162 0.9918 -0.3402 1.0486 1.0480
|
||||
163 1.0092 -0.3485 1.0677 1.0700
|
||||
164 1.0065 -0.3226 1.0569 1.0600
|
||||
165 0.9925 -0.3228 1.0437 1.0556
|
||||
166 1.0009 -0.3004 1.0450 1.0503
|
||||
167 1.0119 -0.3086 1.0579 1.0700
|
||||
168 1.0453 -0.2284 1.0700 1.0700
|
||||
169 0.9628 -0.3499 1.0244 1.0507
|
||||
170 0.9662 -0.3937 1.0433 1.0498
|
||||
171 1.0045 -0.3347 1.0588 1.0622
|
||||
172 0.9490 -0.4347 1.0438 1.0486
|
||||
173 0.9738 -0.3825 1.0462 1.0493
|
||||
174 0.9286 -0.4584 1.0356 1.0387
|
||||
175 0.9085 -0.5243 1.0490 1.0619
|
||||
176 0.8730 -0.4844 0.9983 0.9914
|
||||
177 0.7906 -0.5393 0.9570 0.9657
|
||||
178 0.8366 -0.4762 0.9626 0.9732
|
||||
179 0.7802 -0.5452 0.9518 0.9575
|
||||
180 0.9041 -0.3323 0.9632 0.9672
|
||||
181 0.9056 -0.3249 0.9621 0.9662
|
||||
182 0.9619 -0.2126 0.9851 0.9945
|
||||
183 0.9183 -0.4083 1.0050 1.0083
|
||||
184 1.0255 -0.2701 1.0605 1.0611
|
||||
185 1.0032 -0.2556 1.0352 1.0525
|
||||
186 0.9818 -0.2151 1.0051 0.9969
|
||||
187 0.9644 -0.2750 1.0029 1.0236
|
||||
188 1.0457 -0.2268 1.0700 1.0700
|
||||
189 0.9960 -0.1445 1.0064 1.0049
|
||||
190 0.9178 -0.2204 0.9439 0.9447
|
||||
191 0.8569 -0.4586 0.9719 0.9747
|
||||
192 0.8721 -0.4551 0.9837 0.9849
|
||||
193 0.8758 -0.4266 0.9742 0.9751
|
||||
194 1.0264 -0.1923 1.0443 1.0446
|
||||
195 0.9039 -0.3326 0.9632 0.9672
|
||||
196 0.8756 -0.3569 0.9456 0.9495
|
||||
197 0.9986 -0.3217 1.0491 1.0621
|
||||
198 1.0242 -0.2717 1.0596 1.0700
|
||||
199 1.0601 -0.1453 1.0700 1.0700
|
||||
200 0.9713 -0.3817 1.0436 1.0470
|
||||
201 0.9368 -0.2562 0.9712 0.9701
|
||||
202 0.9676 -0.3723 1.0367 1.0684
|
||||
203 1.0139 -0.2096 1.0354 1.0416
|
||||
204 0.9588 -0.3970 1.0377 1.0700
|
||||
205 1.0312 -0.2419 1.0592 1.0700
|
||||
206 0.9946 -0.2642 1.0291 1.0458
|
||||
207 0.9864 -0.3182 1.0364 1.0573
|
||||
208 0.9468 -0.3556 1.0114 1.0353
|
||||
209 0.9331 -0.4223 1.0242 1.0487
|
||||
210 0.9457 -0.4143 1.0325 1.0606
|
||||
211 0.9266 -0.4623 1.0356 1.0580
|
||||
212 0.9583 -0.3937 1.0360 1.0669
|
||||
213 0.9792 -0.2985 1.0237 1.0427
|
||||
214 0.9721 -0.2240 0.9976 1.0181
|
||||
215 0.9568 -0.2545 0.9900 1.0087
|
||||
216 0.9503 -0.2273 0.9771 0.9841
|
||||
217 0.9900 -0.2253 1.0153 1.0156
|
||||
218 0.9787 -0.0548 0.9802 0.9803
|
||||
219 0.9587 -0.2095 0.9814 0.9850
|
||||
220 0.9624 -0.1883 0.9807 0.9838
|
||||
221 0.9287 -0.2003 0.9500 0.9573
|
||||
222 0.9760 -0.2249 1.0016 1.0223
|
||||
223 0.9206 -0.2818 0.9627 0.9845
|
||||
224 0.9085 -0.3334 0.9677 0.9892
|
||||
225 0.9607 -0.3895 1.0367 1.0629
|
||||
226 0.9536 -0.3717 1.0235 1.0700
|
||||
227 0.9812 -0.3703 1.0488 1.0700
|
||||
228 0.9543 -0.3907 1.0312 1.0576
|
||||
229 0.9405 -0.3902 1.0182 1.0450
|
||||
230 1.0375 -0.1997 1.0565 1.0648
|
||||
231 1.0349 -0.1959 1.0533 1.0511
|
||||
232 1.0134 -0.3304 1.0659 1.0528
|
||||
233 1.0040 -0.2538 1.0356 1.0369
|
||||
234 1.0366 -0.2610 1.0690 1.0700
|
||||
235 1.0361 -0.2004 1.0553 1.0553
|
||||
236 0.9985 -0.2894 1.0396 1.0450
|
||||
237 0.9903 -0.3749 1.0589 1.0582
|
||||
238 0.9942 -0.2964 1.0374 1.0425
|
||||
239 0.9825 -0.3611 1.0468 1.0487
|
||||
240 0.9819 -0.3066 1.0286 1.0506
|
||||
241 1.0500 -0.0708 1.0524 1.0533
|
||||
242 1.0010 -0.3121 1.0485 1.0472
|
||||
243 1.0157 -0.3213 1.0653 1.0608
|
||||
244 1.0082 -0.3344 1.0622 1.0638
|
||||
245 0.9795 -0.3737 1.0483 1.0484
|
||||
246 0.9775 -0.3468 1.0372 1.0388
|
||||
247 0.9828 -0.3598 1.0466 1.0504
|
||||
248 1.0046 -0.2798 1.0428 1.0563
|
||||
249 0.9746 -0.4039 1.0550 1.0664
|
||||
250 0.9981 -0.3410 1.0548 1.0573
|
||||
251 0.9110 -0.5105 1.0443 1.0506
|
||||
252 0.9063 -0.5024 1.0363 1.0419
|
||||
253 0.9023 -0.3402 0.9643 0.9696
|
||||
254 1.0471 -0.2200 1.0700 1.0700
|
||||
255 0.8763 -0.4127 0.9686 0.9688
|
||||
256 0.8286 -0.4924 0.9639 0.9723
|
||||
257 0.8714 -0.4337 0.9733 0.9774
|
||||
258 1.0206 -0.1511 1.0318 1.0379
|
||||
259 0.9340 -0.4237 1.0256 1.0330
|
||||
260 1.0011 -0.3575 1.0631 1.0612
|
||||
261 0.9578 -0.3255 1.0116 1.0160
|
||||
262 0.9382 -0.2441 0.9694 0.9683
|
||||
263 0.9635 -0.3358 1.0204 1.0413
|
||||
264 0.9707 -0.2405 1.0000 1.0092
|
||||
265 0.9249 -0.2139 0.9493 0.9575
|
||||
266 0.9443 -0.2081 0.9670 0.9711
|
||||
267 0.9332 -0.2714 0.9718 0.9933
|
||||
268 0.9278 -0.2827 0.9699 0.9915
|
||||
269 0.9997 -0.2742 1.0366 1.0700
|
||||
270 0.9248 -0.4044 1.0093 1.0579
|
||||
271 0.9402 -0.3898 1.0178 1.0653
|
||||
272 1.0410 -0.1913 1.0584 1.0534
|
||||
273 1.0324 -0.2443 1.0610 1.0604
|
||||
274 1.0227 -0.2223 1.0466 1.0550
|
||||
275 1.0060 -0.3645 1.0700 1.0700
|
||||
276 1.0257 -0.2440 1.0543 1.0455
|
||||
277 0.9825 -0.3884 1.0565 1.0667
|
||||
278 0.9808 -0.3731 1.0494 1.0574
|
||||
279 0.9291 -0.4591 1.0363 1.0393
|
||||
280 0.9614 -0.4097 1.0450 1.0506
|
||||
281 1.0153 -0.1553 1.0271 1.0522
|
||||
282 0.9573 -0.2248 0.9833 0.9972
|
||||
283 0.9710 -0.3268 1.0245 1.0480
|
||||
284 1.0148 -0.2278 1.0401 1.0478
|
||||
285 1.0110 -0.2177 1.0342 1.0407
|
||||
286 0.9997 -0.2987 1.0434 1.0613
|
||||
287 1.0067 -0.2606 1.0399 1.0454
|
||||
288 0.8907 -0.3360 0.9520 0.9546
|
||||
289 1.0050 -0.2679 1.0401 1.0700
|
||||
290 1.0097 -0.2202 1.0334 1.0397
|
||||
291 0.9998 -0.2757 1.0371 1.0700
|
||||
292 1.0490 -0.1868 1.0655 1.0617
|
||||
293 0.9878 -0.3538 1.0492 1.0492
|
||||
294 0.8456 -0.4676 0.9663 0.9707
|
||||
295 0.9398 -0.2611 0.9754 0.9745
|
||||
296 0.9453 -0.2799 0.9859 0.9833
|
||||
297 0.9998 -0.2738 1.0367 1.0411
|
||||
298 1.0050 -0.3222 1.0554 1.0700
|
||||
299 0.9835 -0.1717 0.9984 1.0073
|
||||
300 0.9313 -0.4048 1.0155 1.0638
|
||||
0
|
||||
5 5.7293 5.6918
|
||||
4 2.0000 2.0000
|
||||
9 5.3379 5.2651
|
||||
11 7.0733 7.0885
|
||||
28 3.0000 3.0000
|
||||
29 3.0000 3.0000
|
||||
30 6.0000 6.0000
|
||||
31 3.2664 3.2460
|
||||
32 5.0000 5.0000
|
||||
33 5.0000 5.0000
|
||||
34 1.0000 1.0000
|
||||
35 4.0176 4.0537
|
||||
36 6.0412 6.2637
|
||||
38 6.0000 6.0000
|
||||
40 1.4726 1.4494
|
||||
41 3.4064 3.2301
|
||||
42 2.7135 2.9160
|
||||
43 3.0000 3.0000
|
||||
44 14.3184 14.1409
|
||||
45 9.0000 9.0000
|
||||
46 4.0000 4.0000
|
||||
0
|
||||
1 -0.1640 -0.4426
|
||||
2 1.5000 1.5000
|
||||
3 -0.5000 -0.5000
|
||||
4 0.1984 0.2756
|
||||
5 -0.3612 -0.4807
|
||||
6 0.2364 0.0580
|
||||
7 -1.7162 -1.8225
|
||||
8 0.2135 0.1040
|
||||
9 -0.0943 -0.3148
|
||||
10 0.4323 0.4246
|
||||
11 -6.0000 -6.0000
|
||||
28 0.5568 0.5439
|
||||
29 0.2355 0.2315
|
||||
30 0.6231 1.0162
|
||||
31 0.5937 0.6242
|
||||
32 0.9209 0.9966
|
||||
33 2.0060 2.3938
|
||||
34 0.0576 0.0100
|
||||
35 -0.0926 0.0438
|
||||
36 -2.0000 -2.0000
|
||||
37 0.0000 0.0000
|
||||
38 0.0617 -0.0225
|
||||
39 0.0165 0.0000
|
||||
40 0.2421 0.1834
|
||||
41 0.3821 0.5126
|
||||
42 1.5000 1.0503
|
||||
43 0.5676 0.4873
|
||||
44 5.8529 5.2962
|
||||
45 2.1261 1.7263
|
||||
46 -1.8991 -1.9034
|
||||
62 0.1108 0.0256
|
||||
64 0.3800 0.3800
|
||||
65 0.0600 0.0600
|
||||
73 0.2000 0.2000
|
||||
92 -0.3000 -0.3000
|
||||
100 1.0041 0.9480
|
||||
102 -0.4530 -0.4574
|
||||
103 -0.0499 -0.0768
|
||||
106 -0.5000 -0.5000
|
||||
108 -0.1000 -0.1000
|
||||
116 0.8835 0.9000
|
||||
117 0.3500 0.3500
|
||||
122 -0.9486 -0.9958
|
||||
123 -0.5728 -0.6169
|
||||
124 6.4888 6.4857
|
||||
133 -0.7492 -0.8976
|
||||
139 0.4000 0.4000
|
||||
145 0.0965 0.0294
|
||||
148 0.0782 0.1000
|
||||
159 0.2500 0.2500
|
||||
161 0.1200 0.1200
|
||||
167 -0.1100 -0.1100
|
||||
168 0.0346 -0.0509
|
||||
174 -0.2400 -0.2400
|
||||
178 0.0242 -0.0253
|
||||
179 0.3643 0.3858
|
||||
186 0.1386 0.0120
|
||||
189 -0.5000 -0.5000
|
||||
199 -0.3050 -0.3417
|
||||
203 -3.0000 -3.0000
|
||||
221 1.0806 1.0139
|
||||
222 0.9843 1.0000
|
||||
225 -0.0034 0.0200
|
||||
232 0.2000 0.2000
|
||||
254 11.0963 11.0051
|
||||
258 -0.0874 -0.1160
|
||||
265 -0.6000 -0.6000
|
||||
281 0.7548 1.0438
|
||||
289 -0.2090 0.2658
|
||||
0
|
||||
259 0.40 0.4111 0.40 0.50
|
||||
107 0.00 0.0000 0.00 0.10
|
||||
200 0.40 0.4150 0.40 0.50
|
||||
224 0.50 0.4755 0.40 0.50
|
||||
54 0.00 0.0047 0.00 0.10
|
||||
300 0.10 0.0928 0.00 0.10
|
||||
0
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,74 @@
|
|||
function [e,f,PG,QR,Pg,Qg,T,pgvNum,xNum,m,r,l,u,z,w,x,y,mu,dmaxOut1,dmaxOut2,xz1,xz2,dmaxOut3,dmaxOut4,xz3,xz4,xz5,colmut1,hx,k2,opfGoal,times,secondBegin,Tn,Tn1,capKn,capKn1,kt0,q0,...
|
||||
mut,mub,oneTrans,oneCap,para1,para2,para3,mismatch,ifconverge]=seting(nodeNum,lineNum,transNum,transK0,capNum,capK,pvQmin,pvQmax,pvNum,pvNode,pvV,pgNum,pgNode,Pmin,Pmax,Pg,Qg,centrPara)
|
||||
%程序功能:预计算过程,初始化
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 设置计算参数
|
||||
para1=0.6; %Arlfa,计算最优步长所需参数
|
||||
para2=0.05; %Gama
|
||||
para3=0.76; %光滑参数修正量
|
||||
para4=1.5; %光滑参数初始值
|
||||
if nodeNum==30 %各测试系统要得到最好的优化结果,需要取不同的光滑参数修正值
|
||||
para3=0.23;
|
||||
para4=2.7;
|
||||
else if nodeNum==118
|
||||
para3=0.3;
|
||||
para4=1.5;
|
||||
else if nodeNum==300
|
||||
para3=0.65;
|
||||
para4=1;
|
||||
else if nodeNum==1047
|
||||
para3=0.59;
|
||||
para4=0.6;
|
||||
else if nodeNum==1780
|
||||
para3=0.76;
|
||||
para4=1.5;
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
%% 设PQ节点电压幅值为1,相角为0
|
||||
e=ones(nodeNum,1);
|
||||
f=sparse(nodeNum,1);
|
||||
e(pvNode)=pvV(pvNode); %初始值对计算结果有一点点影响
|
||||
%% 发电机有功无功出力以及无功源无功出力初值(分别取上下界的平均值)
|
||||
PG=(Pmin+Pmax)/2; %发电机有功功率初值,取发电机有功上下限的平均值
|
||||
QR=(pvQmin+pvQmax)/2; %发电机无功功率初值,取平衡节点、PV节点无功上下限的平均值
|
||||
Pg(pgNode)=PG(pgNode);
|
||||
Qg(pvNode)=QR(pvNode);
|
||||
T=1./transK0;
|
||||
x=[T;PG(pgNode);QR(pvNode);capK;e;f]; %系统的控制变量和状态变量
|
||||
%% 设定松弛变量l,u,拉格朗日乘子z,w,y的初值
|
||||
pgvNum=pgNum+pvNum;
|
||||
xNum=pgvNum+2*nodeNum+transNum+capNum; %变量个数
|
||||
m=2*nodeNum; %等式约束条件个数
|
||||
r=pgvNum+nodeNum+lineNum+transNum+capNum; %不等式约束条件个数,
|
||||
s=1;
|
||||
l=s*ones(r,1); %初始化l,u,z为1,w为-1,y为0
|
||||
u=l;
|
||||
z=l;
|
||||
w=-l;
|
||||
y=sparse(m,1);
|
||||
|
||||
Gap=l'*z-u'*w; %计算互补间隙
|
||||
mu=(centrPara*Gap)/(2*r); %计算扰动因子
|
||||
Tn=sparse(0,0);Tn1=Tn;capKn=Tn;capKn1=Tn; kt0=Tn;q0=Tn;
|
||||
oneTrans=ones(transNum,1);
|
||||
oneCap=ones(capNum,1);
|
||||
mut=oneTrans*para4; %光滑参数赋初值
|
||||
mub=oneCap*para4;
|
||||
|
||||
dmaxOut1=[];dmaxOut2=dmaxOut1;xz1=dmaxOut1;xz2=dmaxOut1;dmaxOut3=dmaxOut1; %用于保存中间计算结果,以提供作图数据
|
||||
dmaxOut4=dmaxOut1;xz3=dmaxOut1;xz4=dmaxOut1;xz5=dmaxOut1;colmut1=dmaxOut1;
|
||||
hx=ones(m,1);
|
||||
k2=0;
|
||||
opfGoal=2; %目标函数为有功出力最小
|
||||
times=1; %计算阶段标志
|
||||
secondBegin=1; %光滑处理阶段开始标志
|
||||
ifconverge=0; %收敛标志
|
||||
mismatch=0.00001; %最大不平衡量计算精度
|
||||
if nodeNum==1780 %由于1780系统在预计算时最大不平衡量要收敛到0.00001的精度迭代次数会比较多,为了提高整体收敛速度
|
||||
mismatch=0.01; %在预计算时最大不平衡量精度达到0.01则视为收敛,在连续化处理收敛时最大不平衡量精度可达0.00001
|
||||
end
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
function [const,Lz,Lw,L1,U1,hx,origConst,gxx,gsx]=snd_Constant(nodeNum,opfGoal,lineNum,transNum,transI,...
|
||||
transJ,transG,transB,lineI,lineJ,balNode,mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,...
|
||||
pgNum,pgvNum,xNum,pgNode,pvNode,dhx,dgx,L1,U1,LZ,UW,l,u,y,r,dT_Zt,capNum,z,w,Vmin,Vmax,hx)
|
||||
%程序功能:光滑处理过程,形成扰动KKT方程不平衡量矩阵
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 形成目标函数的一阶偏导矩阵▽f(.)
|
||||
if(opfGoal==2)
|
||||
dPG=ones(pgNum,1);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==1)
|
||||
dPG=2*a(pgNode).*PG(pgNode)+b(pgNode);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==3)
|
||||
dfT=-1*transG.*dT_Zt.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=2*sum(G.*(EE-EE'));
|
||||
dff=2*sum(G.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
else if(opfGoal==4)
|
||||
dfT=1*transB.*dT_Zt.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=2*sum(B.*(EE-EE'));
|
||||
dff=2*sum(B.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%% 不等式约束项
|
||||
gxv=[PG(pgNode);QR(pvNode);e.^2+f.^2]; %约束条件当前值
|
||||
gxvx=[Pmin(pgNode);pvQmin(pvNode);Vmin.*Vmin]; %约束下限
|
||||
gxvs=[Pmax(pgNode);pvQmax(pvNode);Vmax.*Vmax]; %约束上限
|
||||
gxl=(e(lineI).*e(lineI)+f(lineI).*f(lineI)-e(lineI).*e(lineJ)-f(lineI).*f(lineJ)).*GIJ+(e(lineI).*f(lineJ)-e(lineJ).*f(lineI)).*BIJ;%线路功率当前值
|
||||
gxlx=-ones(lineNum,1)*1000; %线路约束下限
|
||||
gxls=ones(lineNum,1)*1000; %线路约束上限
|
||||
gx=[gxv;gxl]; %组合所有约束条件
|
||||
gxx=[gxvx;gxlx];
|
||||
gsx=[gxvs;gxls];
|
||||
Lz=gx-l-gxx;
|
||||
Lw=gx+u-gsx;
|
||||
%% 形成修正方程常数项向量
|
||||
muUL=mu*(U1-L1);
|
||||
BB1=UW*Lw-LZ*Lz-muUL*ones(r,1);
|
||||
BB=dhx*y-dfx+dgx*BB1; %修正方程常数项ψ(.,μ)
|
||||
BB(transNum+pgvNum+capNum+nodeNum+balNode,1)=0; %保持平衡节点电压虚部不变,始终为0,则常数项平衡节点处置0
|
||||
BB(transNum+pgvNum+capNum+balNode,1)=0; %保持平衡节点电压实部不变
|
||||
const=[BB;hx]; %修正方程常数项向量
|
||||
BB0=dhx*y-dfx+dgx*(z+w); %此部分在求步长时使用
|
||||
BB0(transNum+pgvNum+capNum+nodeNum+balNode,1)=0;
|
||||
BB0(transNum+pgvNum+capNum+balNode,1)=0;
|
||||
origConst=[BB0;hx];
|
||||
|
|
@ -0,0 +1,209 @@
|
|||
function [HSB,dhx,dgx,dgxT,N1,H1,diagE,diagF,GIJ,BIJ,L1,U1,LZ,UW,transG,transB,mut,mub]=snd_formHSB(nodeNum,balNode,balNum,...
|
||||
opfGoal,lineNum,transNum,lineI,lineJ,transI,transJ,T,transG,transB,pgNode,pvNode,G,B,e,f,pgNum,pvNum,pgvNum,xNum,a,m,r,l,u,z,w,y,...
|
||||
capNum,capI,mut,mub,dNCPT_dt,d2NCPT_dt2,dT_Zt,transGmut,transBmut,dNCP_dcap,d2NCP_dcap2,H1,N1,diagE,diagF)
|
||||
%程序功能:光滑处理过程,形成修正方程系数矩阵
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 形成等式约束雅可比矩阵
|
||||
ef1=e(transI).*e(transJ)+f(transI).*f(transJ);
|
||||
ef2=e(transI).*f(transJ)-e(transJ).*f(transI);
|
||||
ef3=e(transI).*e(transI)+f(transI).*f(transI);
|
||||
ef1G=ef1.*transGmut;
|
||||
ef1B=ef1.*transBmut;
|
||||
ef2G=ef2.*transGmut;
|
||||
ef2B=ef2.*transBmut;
|
||||
dhPTi=-ef1G+ef2B+2*ef3.*transGmut.*T;
|
||||
dhPTj=-ef1G-ef2B;
|
||||
dhPT=sparse(1:transNum,transI,dhPTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhPTj,transNum,nodeNum);%有功平衡方程P对变压器变比求偏导
|
||||
dhQTi=ef1B+ef2G-2*ef3.*transBmut.*T;
|
||||
dhQTj=ef1B-ef2G;
|
||||
dhQT=sparse(1:transNum,transI,dhQTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhQTj,transNum,nodeNum);%无功平衡方程Q对变压器变比求偏导
|
||||
dhNCP_T=sparse(1:transNum,1:transNum,dNCPT_dt,transNum,transNum+capNum);
|
||||
dhP=sparse(1:pgNum,pgNode,ones(pgNum,1),pgNum,m);
|
||||
dhQ1=sparse(1:pvNum,pvNode,ones(pvNum,1),pvNum,m-nodeNum);
|
||||
dhQ=[sparse(pvNum,nodeNum) dhQ1];
|
||||
dhcapK1=sparse(1:capNum,capI,(e(capI).^2+f(capI).^2),capNum,nodeNum);
|
||||
dhNCP_capK=sparse(1:capNum,transNum+1:transNum+capNum,dNCP_dcap,capNum,transNum+capNum);%功率平衡方程对电容电抗器组数求偏导
|
||||
dhcapK=[sparse(capNum,nodeNum) dhcapK1 dhNCP_capK];
|
||||
%功率方程雅可比矩阵
|
||||
deG=diagE*G;
|
||||
dfB=diagF*B;
|
||||
deB=diagE*B;
|
||||
dfG=diagF*G;
|
||||
dH1=sparse(1:nodeNum,1:nodeNum,H1,nodeNum,nodeNum);
|
||||
dN1=sparse(1:nodeNum,1:nodeNum,N1,nodeNum,nodeNum);
|
||||
Hij=-dH1-deG-dfB;
|
||||
Nij=-dN1+deB-dfG;
|
||||
Jij=dN1-dfG+deB;
|
||||
Lij=-dH1+dfB+deG;
|
||||
dhJacb=[Hij Nij;Jij Lij]'; %合并形成功率方程雅可比矩阵
|
||||
dhT=[dhPT dhQT dhNCP_T];
|
||||
dhx=[dhT;dhP;dhQ;dhcapK;dhJacb sparse(2*nodeNum,transNum+capNum)]; %合并形成等式约束雅可比矩阵h(x)
|
||||
%% 形成不等式约束雅可比矩阵▽g(x)
|
||||
gtransNum=0; %变比上下限约束维数,用NCP函数后,则不需要再约束其上下限
|
||||
gcapNum=0;
|
||||
dgT1=sparse(transNum,r-lineNum);
|
||||
dglT=(e(transI).^2+f(transI).^2-e(transI).*e(transJ)-f(transI).*f(transJ)).*transGmut+(e(transI).*f(transJ)-e(transJ).*f(transI)).*transBmut;
|
||||
dgT2=sparse(1:transNum,lineNum-transNum+1:lineNum,dglT,transNum,lineNum);
|
||||
dgT=[dgT1 dgT2]; %所有不等式对变比求导的模块
|
||||
dgP=sparse(1:pgNum,gtransNum+1:gtransNum+pgNum,ones(pgNum,1),pgNum,r); %所有不等式约束对P求导的模块
|
||||
dgQ=sparse(1:pvNum,gtransNum+pgNum+1:gtransNum+pgvNum,ones(pvNum,1),pvNum,r);%所有不等式约束对Q求导的模块
|
||||
dgcapK=sparse(capNum,r); %所有不等式约束对capK求导的模块
|
||||
dgve=2*diagE;
|
||||
dgvf=2*diagF;
|
||||
sizeG=size(G);
|
||||
GIJ=G(sub2ind(sizeG,lineI,lineJ));
|
||||
BIJ=B(sub2ind(sizeG,lineI,lineJ));
|
||||
dgleI=(2*e(lineI)-e(lineJ)).*GIJ+f(lineJ).*BIJ;
|
||||
dgleJ=-e(lineI).*GIJ-f(lineI).*BIJ;
|
||||
dglfI=(2*f(lineI)-f(lineJ)).*GIJ-e(lineJ).*BIJ;
|
||||
dglfJ=-f(lineI).*GIJ+e(lineI).*BIJ;
|
||||
dgle=sparse(lineI,(1:lineNum),dgleI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dgleJ,nodeNum,lineNum);
|
||||
dglf=sparse(lineI,(1:lineNum),dglfI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dglfJ,nodeNum,lineNum);
|
||||
dg0=sparse(2*nodeNum,gtransNum+pgvNum+gcapNum);
|
||||
dgvl=[dgve dgle;dgvf dglf];
|
||||
dgef=[dg0 dgvl]; %所有不等式约束对电压实部、虚部求偏导的模块
|
||||
dgx=[dgT;dgP;dgQ;dgcapK;dgef]; %不等式约束雅克比矩阵
|
||||
%% 形成对角阵
|
||||
Z=sparse(1:r,1:r,z,r,r);
|
||||
W=sparse(1:r,1:r,w,r,r);
|
||||
L1=sparse(1:r,1:r,1./l,r,r);
|
||||
U1=sparse(1:r,1:r,1./u,r,r);
|
||||
LZ=L1*Z;
|
||||
UW=U1*W;
|
||||
%% 形成海森伯矩阵
|
||||
%目标函数的海森伯矩阵▽2f(x)
|
||||
if(opfGoal==2)
|
||||
HSdfx=sparse(xNum,xNum);
|
||||
else if(opfGoal==1)
|
||||
HSdfx=sparse(transNum+1:transNum+pgNum,transNum+1:transNum+pgNum,2*a(pgNode),xNum,xNum);%仅目标函数对PG求偏导处的对角元为非零元素,其他都为0(目标为发电耗量最小)
|
||||
else if(opfGoal==3)
|
||||
d2ftei=-2*transGmut.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=-2*transGmut.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT0=sparse(transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=2*(G-sparse(1:nodeNum,1:nodeNum,sum(G,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
else if(opfGoal==4)
|
||||
d2ftei=2*transBmut.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=2*transBmut.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT0=sparse(transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=-2*(B-sparse(1:nodeNum,1:nodeNum,sum(B,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%等式约束海森伯矩阵与拉格朗日乘子y的乘积▽2h(x)*y
|
||||
y1=y(1:nodeNum,1);
|
||||
y2=y(nodeNum+1:2*nodeNum,1);
|
||||
y3=y(2*nodeNum+1:2*nodeNum+transNum,1);
|
||||
y4=y(2*nodeNum+transNum+1:end,1);
|
||||
d2P_T2=(2*ef3.*transG.*dT_Zt).*y1(transI);
|
||||
d2Q_T2=(-2*ef3.*transB.*dT_Zt).*y2(transI);
|
||||
dh2NCP_T2=d2NCPT_dt2.*y3;
|
||||
dhT2=d2P_T2+d2Q_T2+dh2NCP_T2; %功率方程对变压器变比求二次偏导所得的列向量
|
||||
HSdhT=sparse(1:transNum,1:transNum,dhT2,transNum+pgvNum+capNum,transNum+pgvNum+capNum)+...
|
||||
sparse(transNum+pgvNum+1:transNum+pgvNum+capNum,transNum+pgvNum+1:transNum+pgvNum+capNum,d2NCP_dcap2.*y4,transNum+pgvNum+capNum,transNum+pgvNum+capNum);
|
||||
eiG=e(transI).*transGmut;
|
||||
ejG=e(transJ).*transGmut;
|
||||
eiB=e(transI).*transBmut;
|
||||
ejB=e(transJ).*transBmut;
|
||||
fiG=f(transI).*transGmut;
|
||||
fjG=f(transJ).*transGmut;
|
||||
fiB=f(transI).*transBmut;
|
||||
fjB=f(transJ).*transBmut;
|
||||
ejG_fjB=ejG-fjB;
|
||||
ejGfjB=ejG+fjB;
|
||||
fjGejB=fjG+ejB;
|
||||
ejB_fjG=ejB-fjG;
|
||||
eiGfiB=eiG+fiB;
|
||||
eiG_fiB=eiG-fiB;
|
||||
eiB_fiG=eiB-fiG;
|
||||
fiGeiB=fiG+eiB;
|
||||
dP2_ei_t=(4*eiG.*T-ejG_fjB).*y1(transI)-ejGfjB.*y1(transJ);
|
||||
dP2_ej_t=-eiGfiB.*y1(transI)-eiG_fiB.*y1(transJ);
|
||||
dQ2_ei_t=(-4*eiB.*T+fjGejB).*y2(transI)+ejB_fjG.*y2(transJ);
|
||||
dQ2_ej_t=eiB_fiG.*y2(transI)+fiGeiB.*y2(transJ);
|
||||
HSdh_et=sparse(1:transNum,transI,dP2_ei_t+dQ2_ei_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_ej_t+dQ2_ej_t,transNum,nodeNum);%功率方程先对变比求偏导,再对电压实部求偏导模块
|
||||
dP2_fi_t=(4*fiG.*T-fjGejB).*y1(transI)+ejB_fjG.*y1(transJ);
|
||||
dP2_fj_t=eiB_fiG.*y1(transI)-fiGeiB.*y1(transJ);
|
||||
dQ2_fi_t=(-4*fiB.*T-ejG_fjB).*y2(transI)+ejGfjB.*y2(transJ);
|
||||
dQ2_fj_t=eiGfiB.*y2(transI)-eiG_fiB.*y2(transJ);
|
||||
HSdh_ft=sparse(1:transNum,transI,dP2_fi_t+dQ2_fi_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_fj_t+dQ2_fj_t,transNum,nodeNum);%功率方程先对变比求偏导,再对电压虚部求偏导模块
|
||||
HSdh_eft=[HSdh_et HSdh_ft];
|
||||
HSdh_tef=HSdh_eft';
|
||||
HSdhPQ=sparse(pgvNum,2*nodeNum); %功率方程先对PG、QR求偏导,再对其他变量求偏导的部分
|
||||
d2hcap_e=sparse(1:capNum,capI,2*e(capI).*y2(capI),capNum,nodeNum); %功率方程先对capK求偏导,再对e求偏导的部分
|
||||
d2hcap_f=sparse(1:capNum,capI,2*f(capI).*y2(capI),capNum,nodeNum); %功率方程先对capK求偏导,再对f求偏导的部分
|
||||
HSdhcap_ef=[d2hcap_e d2hcap_f];
|
||||
d2htPQ_ef=[HSdh_eft;HSdhPQ;HSdhcap_ef];
|
||||
HSdhtPQ=[HSdhT d2htPQ_ef];
|
||||
HSdhx1=sparse(2*nodeNum,pgvNum);
|
||||
%潮流方程海森矩阵
|
||||
diagy1=sparse(1:nodeNum,1:nodeNum,y1,nodeNum,nodeNum);
|
||||
diagy2=sparse(1:nodeNum,1:nodeNum,y2,nodeNum,nodeNum);
|
||||
HSdhey=-diagy1*G+diagy2*B+(-G*diagy1+B*diagy2);
|
||||
HSdhefy=diagy1*B+diagy2*G-(B*diagy1+G*diagy2);
|
||||
HSdhx2=[HSdhey HSdhefy;HSdhefy' HSdhey];
|
||||
HSdhx=[HSdhtPQ;HSdh_tef HSdhx1 HSdhcap_ef' HSdhx2];
|
||||
|
||||
%形成不等式约束二阶偏导的矩阵▽2g(x)*(z+w)
|
||||
ZWcl=z(gtransNum+pgvNum+gcapNum+nodeNum+1:end)+w(gtransNum+pgvNum+gcapNum+nodeNum+1:end);
|
||||
ZWv=z(gtransNum+pgvNum+gcapNum+1:gtransNum+pgvNum+gcapNum+nodeNum)+w(gtransNum+pgvNum+gcapNum+1:gtransNum+pgvNum+gcapNum+nodeNum);
|
||||
dgeiT=((2*e(transI)-e(transJ)).*transGmut+f(transJ).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgejT=(-e(transI).*transGmut-f(transI).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgeT=sparse(1:transNum,transI,dgeiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgejT,transNum,nodeNum);%不等式约束先对变比求偏导,再对e求偏导的模块
|
||||
dgfiT=((2*f(transI)-f(transJ)).*transGmut-e(transJ).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfjT=(-f(transI).*transGmut+e(transI).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfT=sparse(1:transNum,transI,dgfiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgfjT,transNum,nodeNum);%不等式约束先对变比求偏导,再对f求偏导的模块
|
||||
HSdgefT=[dgeT dgfT];
|
||||
HSdgT=[sparse(transNum,transNum+pgvNum+capNum) HSdgefT];
|
||||
HSdgee=sparse(lineI,lineI,2*GIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineI,lineJ,GIJ.*ZWcl,nodeNum,nodeNum)...
|
||||
-sparse(lineJ,lineI,GIJ.*ZWcl,nodeNum,nodeNum)+sparse(1:nodeNum,1:nodeNum,2*ZWv,nodeNum,nodeNum);
|
||||
HSdgff=HSdgee;
|
||||
HSdgef=sparse(lineI,lineJ,BIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineJ,lineI,BIJ.*ZWcl,nodeNum,nodeNum);
|
||||
HSdgfe=HSdgef'; %所有不等式约束对e、f求二次偏导模块
|
||||
HSdgx1=[HSdgee HSdgef;HSdgfe HSdgff];
|
||||
HSdgxtPQ_0=sparse(pgvNum+capNum,xNum);
|
||||
HSdgef_0=[HSdgefT' sparse(2*nodeNum,pgvNum+capNum)];
|
||||
HSdgx=[HSdgT;HSdgxtPQ_0;HSdgef_0 HSdgx1]; %合成不等式约束海森矩阵
|
||||
dgxT=dgx'; %求dgx的转置
|
||||
MULdgx=dgx*(UW-LZ)*dgxT;
|
||||
H=HSdhx+HSdgx-HSdfx+MULdgx; %求和形成H(.)矩阵.
|
||||
%% 根据以上所求的各个矩阵合成海森伯矩阵
|
||||
HSB0=sparse(m,m);
|
||||
HSB=[H dhx;dhx' HSB0];
|
||||
balN=transNum+pgvNum+capNum+nodeNum+balNode;
|
||||
HSB(balN,:)=0; %保持平衡节点电压虚部不变,始终为0,即将海森矩阵中平衡节点虚部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN)=0;
|
||||
HSB_balN=sub2ind(size(HSB),balN,balN);
|
||||
HSB(HSB_balN)=ones(balNum,1);
|
||||
balN1=transNum+pgvNum+capNum+balNode;
|
||||
HSB(balN1,:)=0; %保持平衡节点电压实部不变,始终为0,即将海森矩阵中平衡节点实部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN1)=0;
|
||||
HSB_balN1=sub2ind(size(HSB),balN1,balN1);
|
||||
HSB(HSB_balN1)=ones(balNum,1);
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
function [secondBegin,m,r,l,u,z,w,y,Gama,Arlfa,meritF,firstT,firstcapK,firstfx,Gap,mu,Vfirst,Pgfirst,Qgfirst]=...
|
||||
snd_setting(secondBegin,transNum,T,m,r,capNum,capK,para1,para2,fx,centrPara,e,f,Pg,Qg)
|
||||
%程序功能:光滑处理过程重新初始化
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 光滑处理阶段,各变量重新赋值
|
||||
secondBegin=secondBegin-1;
|
||||
Gama=para2;
|
||||
Arlfa=para1;
|
||||
meritF=[]; %初始化求最优步长时的效益函数
|
||||
m=m+transNum+capNum; %等式约束个数增加变压器变比、电容器可调档位对应的凝聚函数
|
||||
r=r-transNum-capNum; %不等式约束条件个数,考虑有功无功约束、节点电压约束、线路功率约束,变压器变比、电容器可调档位上下限约束不再需要
|
||||
clear l u z w y;
|
||||
s=1; %松弛因子和拉格朗日乘子重新赋值
|
||||
l=s*ones(r,1);
|
||||
u=l;
|
||||
z=l;
|
||||
w=-l;
|
||||
y=sparse(m,1);
|
||||
Gap=l'*z-u'*w; %计算互补间隙
|
||||
mu=(centrPara*Gap)/(2*r); %计算扰动因子
|
||||
%% 保留预计算结果
|
||||
firstT=T;
|
||||
firstcapK=capK;
|
||||
firstfx=fx;
|
||||
Vfirst=sqrt(e.*e+f.*f);
|
||||
Pgfirst=Pg;
|
||||
Qgfirst=Qg;
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
function [z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,G,B,capK,meritF]=snd_solve(HSB,const,mu,r,nodeNum,balNode,pgNum,pvNum,pgvNum,xNum,...
|
||||
transNum,pgNode,pvNode,m,Lz,Lw,LZ,UW,dgxT,L1,U1,transI,transJ,transG,transB,transG1,transB1,Tn,capKn,capNum,...
|
||||
capI,Tn1,capKn1,x,y,z,l,u,w,G,B,PG,QR,Pg,Qg,opfGoal,Gama,Arlfa,meritF,k2,T,capK,lineNum,lineI,lineJ,Pd,Qd,gxx,gsx,mut,mub)
|
||||
%程序功能:光滑处理过程,求解修正方程
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 求解方程,求出各变量的修正量
|
||||
dX=-HSB\const;
|
||||
dx=dX(1:xNum,1);
|
||||
dy=dX(xNum+1:xNum+m,1);
|
||||
dl=dgxT*dx+Lz;
|
||||
du=-dgxT*dx-Lw;
|
||||
Ll=(l.*z-mu*ones(r,1));
|
||||
Lu=(u.*w+mu*ones(r,1));
|
||||
diagZ=sparse(1:r,1:r,z,r,r);
|
||||
diagW=sparse(1:r,1:r,w,r,r);
|
||||
dz=-LZ*dgxT*dx-L1*(diagZ*Lz+Ll);
|
||||
dw=UW*dgxT*dx+U1*(diagW*Lw-Lu);
|
||||
|
||||
L3=-L1*(diagZ*Lz+Ll);
|
||||
L4=U1*(diagW*Lw-Lu);
|
||||
L5=Lz;
|
||||
L6=Lw;
|
||||
f_NCP1=[const;L3;L4;L5;L6];
|
||||
f_NCPsum1=(f_NCP1'*f_NCP1)/2;
|
||||
meritF=[meritF;f_NCPsum1];
|
||||
|
||||
minusdz=find(dz<0);
|
||||
dzmin=min(-z(minusdz)./dz(minusdz));
|
||||
minusdl=find(dl<0);
|
||||
dlmin=min(-l(minusdl)./dl(minusdl));
|
||||
minusdw=find(dw>0);
|
||||
dwmin=min(-w(minusdw)./dw(minusdw));
|
||||
minusdu=find(du<0);
|
||||
dumin=min(-u(minusdu)./du(minusdu));
|
||||
|
||||
ap=min(dlmin,dumin);
|
||||
ad=min(dzmin,dwmin);
|
||||
stepp=0.9995*min(ap,1);
|
||||
stepd=0.9995*min(ad,1);
|
||||
|
||||
%% 一维线性搜索,求步长
|
||||
[mk,meritF,stepp,stepd]=linesearch(r,nodeNum,balNode,pgNum,pvNum,pgvNum,...
|
||||
xNum,transNum,pgNode,pvNode,m,x,y,z,l,u,w,G,B,transI,transJ,transG,transB,transG,transB,...
|
||||
Tn,capKn,capNum,capI,Tn1,capKn1,PG,QR,Pg,Qg,dx,dl,du,dy,dz,dw,...
|
||||
opfGoal,Gama,Arlfa,meritF,k2,mu,T,capK,lineNum,lineI,lineJ,Pd,Qd,gxx,gsx,mut,mub,stepp,stepd);
|
||||
%% 更新变量
|
||||
x=x+stepp*dx;
|
||||
l=l+stepp*dl;
|
||||
u=u+stepp*du;
|
||||
y=y+stepd*dy;
|
||||
z=z+stepd*dz;
|
||||
w=w+stepd*dw;
|
||||
%保留上一次计算的变比,用于修正节点导纳矩阵
|
||||
Tlast=T;
|
||||
capKlast=capK;
|
||||
%给控制变量、状态变量重新赋值
|
||||
T=x(1:transNum,1);
|
||||
capK=x(transNum+pgvNum+1:transNum+pgvNum+capNum);
|
||||
PG(pgNode,1)=x(transNum+1:transNum+pgNum,1);
|
||||
QR(pvNode,1)=x(transNum+pgNum+1:transNum+pgNum+pvNum,1);
|
||||
e=x(transNum+pgNum+pvNum+capNum+1:transNum+pgNum+pvNum+capNum+nodeNum,1);
|
||||
f=x(transNum+pgNum+pvNum+capNum+nodeNum+1:xNum,1);
|
||||
Pg(pgNode)=PG(pgNode);
|
||||
Qg(pvNode)=QR(pvNode);
|
||||
%% 变比变化后需修正节点导纳矩阵
|
||||
transG=transG1;
|
||||
transB=transB1;
|
||||
G=G-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transG,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transG.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transG.*(T-Tlast),nodeNum,nodeNum);
|
||||
B=B-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transB,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(capI,capI,capK-capKlast,nodeNum,nodeNum);
|
||||
|
|
@ -0,0 +1,101 @@
|
|||
function [z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,capK,G,B]=solve(HSB,const,mu,r,nodeNum,balNode,pgNum,pvNum,xNum,transNum,capNum,capI,capBi,capK,...
|
||||
pgNode,pvNode,m,x,y,z,l,u,w,Lz,Lw,LZ,UW,dgxT,L1,U1,G,B,transI,transJ,T,transG,transB,transG1,transB1,PG,QR,Pg,Qg)
|
||||
%程序功能:预计算过程,求解修正方程
|
||||
%编写时间:2010年11月
|
||||
|
||||
%% 求解方程,求出各变量的修正量
|
||||
dX=-HSB\const;
|
||||
dx=dX(1:xNum,1);
|
||||
dy=dX(xNum+1:xNum+m,1);
|
||||
dl=dgxT*dx+Lz;
|
||||
du=-dgxT*dx-Lw;
|
||||
Ll=(l.*z-mu*ones(r,1));
|
||||
Lu=(u.*w+mu*ones(r,1));
|
||||
diagZ=sparse(1:r,1:r,z,r,r);
|
||||
diagW=sparse(1:r,1:r,w,r,r);
|
||||
dz=-LZ*dgxT*dx-L1*(diagZ*Lz+Ll);
|
||||
dw=UW*dgxT*dx+U1*(diagW*Lw-Lu);
|
||||
%% 求最大步长
|
||||
minusdz=find(dz<0);
|
||||
dzmin=min(-z(minusdz)./dz(minusdz));
|
||||
minusdl=find(dl<0);
|
||||
dlmin=min(-l(minusdl)./dl(minusdl));
|
||||
minusdw=find(dw>0);
|
||||
dwmin=min(-w(minusdw)./dw(minusdw));
|
||||
minusdu=find(du<0);
|
||||
dumin=min(-u(minusdu)./du(minusdu));
|
||||
|
||||
ap=min(dlmin,dumin);
|
||||
ad=min(dzmin,dwmin);
|
||||
stepp=0.9995*min(ap,1);
|
||||
stepd=0.9995*min(ad,1);
|
||||
%% 更新变量
|
||||
x=x+stepp*dx;
|
||||
l=l+stepp*dl;
|
||||
u=u+stepp*du;
|
||||
y=y+stepd*dy;
|
||||
z=z+stepd*dz;
|
||||
w=w+stepd*dw;
|
||||
%% 给控制变量、状态变量重新赋值
|
||||
Tlast=T; %保留上一次计算的变比,用于修正节点导纳矩阵
|
||||
capKlast=capK;
|
||||
T=x(1:transNum,1);
|
||||
PG(pgNode,1)=x(transNum+1:transNum+pgNum,1);
|
||||
QR(pvNode,1)=x(transNum+pgNum+1:transNum+pgNum+pvNum,1);
|
||||
capK=x(transNum+pgNum+pvNum+1:transNum+pgNum+pvNum+capNum,1);
|
||||
e=x(transNum+pgNum+pvNum+capNum+1:transNum+pgNum+pvNum+capNum+nodeNum,1);
|
||||
f=x(transNum+pgNum+pvNum+capNum+nodeNum+1:xNum,1);
|
||||
Pg(pgNode)=PG(pgNode);
|
||||
Qg(pvNode)=QR(pvNode);
|
||||
%% 变比变化后需修正节点导纳矩阵
|
||||
transG=transG1;
|
||||
transB=transB1;
|
||||
G=G-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transG,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transG.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transG.*(T-Tlast),nodeNum,nodeNum);
|
||||
B=B-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transB,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(capI,capI,capK-capKlast,nodeNum,nodeNum);
|
||||
% GTii=sub2ind(size(G),transI,transI); %GTij为G的第i行第j列在G中所对应的位置
|
||||
% GTij=sub2ind(size(G),transI,transJ);
|
||||
% GTji=sub2ind(size(G),transJ,transI);
|
||||
% BTii=sub2ind(size(B),transI,transI);
|
||||
% BTij=sub2ind(size(B),transI,transJ);
|
||||
% BTji=sub2ind(size(B),transJ,transI);
|
||||
% for i=1:length(GTii)
|
||||
% G(GTii(i))=G(GTii(i))-(T(i).*T(i)-Tlast(i).*Tlast(i)).*transG(i);
|
||||
% end
|
||||
% for i=1:length(GTij)
|
||||
% G(GTij(i))=G(GTij(i))+transG(i).*(T(i)-Tlast(i));
|
||||
% end
|
||||
% for i=1:length(GTji)
|
||||
% G(GTji(i))=G(GTji(i))+transG(i).*(T(i)-Tlast(i));
|
||||
% end
|
||||
% % G(GTij)=G(GTij)+transG.*(T-Tlast);
|
||||
% % G(GTji)=G(GTij);
|
||||
% for i=1:length(BTii)
|
||||
% B(BTii(i))=B(BTii(i))-(T(i).*T(i)-Tlast(i).*Tlast(i)).*transB(i);
|
||||
% end
|
||||
% for i=1:length(BTij)
|
||||
% B(BTij(i))=B(BTij(i))+transB(i).*(T(i)-Tlast(i));
|
||||
% end
|
||||
% for i=1:length(BTji)
|
||||
% B(BTji(i))=B(BTji(i))+transB(i).*(T(i)-Tlast(i));
|
||||
% end
|
||||
% % B(BTij)=B(BTij)+transB.*(T-Tlast);
|
||||
% % B(BTji)=B(BTij);
|
||||
% deG=G-newG;
|
||||
% deB=B-newB;
|
||||
% G(708,708)
|
||||
% newG(708,708)
|
||||
% [Grows,Gcols,G1] = find(deG);
|
||||
% [Brows,Bcols,B1] = find(deB);
|
||||
% Bcapii=sub2ind(size(B),capI,capI);
|
||||
% B(Bcapii)=B(Bcapii)+(capK-capKlast);%2011年10月5日修改,去掉*capBi.
|
||||
% aa=0;
|
||||
% for i=1:100000
|
||||
% aa=aa+1/1.1;
|
||||
% end
|
||||
% bb=0;
|
||||
% bb=bb+sparse(ones(100000,1),ones(100000,1),1/1.1*ones(100000,1),1,1);
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
function [const,Lz,Lw,L1,U1]=Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,T,transKmin,transKmax,lineI,lineJ,balNode,...
|
||||
mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,pgNum,pgvNum,xNum,capNum,capK,capKmin,capKmax,pgNode,pvNode,dhx,dgx,L1,U1,LZ,UW,l,u,...
|
||||
y,r,hx,Vmax,Vmin,capBi)
|
||||
%程序功能:预计算过程,形成扰动KKT方程不平衡量矩阵
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 形成目标函数的一阶偏导矩阵▽f(.)
|
||||
if(opfGoal==2)
|
||||
dPG=ones(pgNum,1);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==1)
|
||||
dPG=2*a(pgNode).*PG(pgNode)+b(pgNode);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==3)
|
||||
dfT=-transG.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=2*sum(G.*(EE-EE'));
|
||||
dff=2*sum(G.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
else if(opfGoal==4)
|
||||
dfT=transB.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=-2*sum(B.*(EE-EE'));
|
||||
dff=-2*sum(B.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%% 不等式约束项
|
||||
gxv=[PG(pgNode);QR(pvNode);capK;e.^2+f.^2]; %约束条件当前值
|
||||
gxvx=[Pmin(pgNode);pvQmin(pvNode);capKmin.*capBi;Vmin.*Vmin]; %约束下限
|
||||
gxvs=[Pmax(pgNode);pvQmax(pvNode);capKmax.*capBi;Vmax.*Vmax]; %约束上限
|
||||
gxl=(e(lineI).*e(lineI)+f(lineI).*f(lineI)-e(lineI).*e(lineJ)-f(lineI).*f(lineJ)).*GIJ+(e(lineI).*f(lineJ)-e(lineJ).*f(lineI)).*BIJ;%线路功率当前值
|
||||
gxlx=-ones(lineNum,1)*1000; %线路约束下限
|
||||
gxls=ones(lineNum,1)*1000; %线路约束上限
|
||||
gxT=T;
|
||||
gxTx=transKmin; %变比下限
|
||||
gxTs=transKmax; %变比上限
|
||||
|
||||
gx=[gxT;gxv;gxl]; %组合所有约束条件
|
||||
gxx=[gxTx;gxvx;gxlx];
|
||||
gsx=[gxTs;gxvs;gxls];
|
||||
Lz=gx-l-gxx;
|
||||
Lw=gx+u-gsx;
|
||||
|
||||
%% 形成修正方程常数项向量
|
||||
muUL=mu*(U1-L1);
|
||||
BB1=UW*Lw-LZ*Lz-muUL*ones(r,1);
|
||||
BB=dhx*y-dfx+dgx*BB1; %修正方程常数项ψ(.,μ)
|
||||
BB(transNum+pgvNum+capNum+nodeNum+balNode,1)=0; %保持平衡节点电压虚部不变,始终为0,则常数项平衡节点处置0
|
||||
BB(transNum+pgvNum+capNum+balNode,1)=0; %保持平衡节点电压实部不变
|
||||
const=[BB;hx]; %修正方程常数项向量
|
||||
|
|
@ -0,0 +1,425 @@
|
|||
118 179 100 100 0.1
|
||||
1.e-5 2
|
||||
1 69
|
||||
0
|
||||
1 1 2 0.0303 0.0999 0.0127
|
||||
2 1 3 0.0129 0.0424 0.00541
|
||||
3 4 5 0.00176 0.00798 0.00105
|
||||
4 3 5 0.0241 0.1080 0.0142
|
||||
5 5 6 0.0119 0.0540 0.00713
|
||||
6 6 7 0.00459 0.0208 0.00275
|
||||
7 8 9 0.00244 0.0305 0.5810
|
||||
9 9 10 0.00258 0.0322 0.6150
|
||||
10 4 11 0.0209 0.0688 0.00874
|
||||
11 5 11 0.0203 0.0682 0.00869
|
||||
12 11 12 0.00595 0.0196 0.00251
|
||||
13 2 12 0.0187 0.0616 0.00786
|
||||
14 3 12 0.0484 0.1600 0.0203
|
||||
15 7 12 0.00862 0.0340 0.00437
|
||||
16 11 13 0.02225 0.0731 0.00938
|
||||
17 12 14 0.0215 0.0707 0.00908
|
||||
18 13 15 0.0744 0.2444 0.03134
|
||||
19 14 15 0.0595 0.1950 0.0251
|
||||
20 12 16 0.0212 0.0834 0.0107
|
||||
21 15 17 0.0132 0.0437 0.0222
|
||||
22 16 17 0.0454 0.1801 0.0233
|
||||
23 17 18 0.0123 0.0505 0.00649
|
||||
24 18 19 0.01119 0.0493 0.00571
|
||||
25 19 20 0.0252 0.1170 0.0149
|
||||
26 15 19 0.0120 0.0394 0.00505
|
||||
27 20 21 0.0183 0.0849 0.0108
|
||||
28 21 22 0.0209 0.0970 0.0123
|
||||
29 22 23 0.0342 0.1590 0.0202
|
||||
30 23 24 0.0135 0.0492 0.0249
|
||||
31 23 25 0.0156 0.0800 0.0432
|
||||
33 25 27 0.0318 0.1630 0.0882
|
||||
34 27 28 0.01913 0.0855 0.0108
|
||||
35 28 29 0.0237 0.0943 0.0119
|
||||
37 8 30 0.00431 0.0504 0.2570
|
||||
38 26 30 0.00799 0.0860 0.4540
|
||||
39 17 31 0.0474 0.1563 0.01995
|
||||
40 29 31 0.0108 0.0331 0.00415
|
||||
41 23 32 0.0317 0.1153 0.05865
|
||||
42 31 32 0.0298 0.0985 0.01255
|
||||
43 27 32 0.0229 0.0755 0.00963
|
||||
44 15 33 0.0380 0.1244 0.01597
|
||||
45 19 34 0.0752 0.2470 0.0316
|
||||
46 35 36 0.00224 0.0102 0.00124
|
||||
47 35 37 0.0110 0.0497 0.00659
|
||||
48 33 37 0.0415 0.1420 0.0183
|
||||
49 34 36 0.00871 0.0268 0.00284
|
||||
50 34 37 0.00256 0.0094 0.00429
|
||||
52 37 39 0.0321 0.1060 0.0135
|
||||
53 37 40 0.0593 0.1680 0.0210
|
||||
54 30 38 0.00464 0.0540 0.2110
|
||||
55 39 40 0.0184 0.0605 0.00776
|
||||
56 40 41 0.0145 0.0487 0.00611
|
||||
57 40 42 0.0555 0.1830 0.0233
|
||||
58 41 42 0.0410 0.1350 0.0172
|
||||
59 43 44 0.0608 0.2454 0.03034
|
||||
60 34 43 0.0413 0.1681 0.02113
|
||||
61 44 45 0.0224 0.0901 0.0112
|
||||
62 45 46 0.0400 0.1356 0.0166
|
||||
63 46 47 0.0380 0.1270 0.0158
|
||||
64 46 48 0.0601 0.1890 0.0236
|
||||
65 47 49 0.0191 0.0625 0.00802
|
||||
66 42 49 0.03575 0.1615 0.0860
|
||||
67 45 49 0.0684 0.1860 0.0222
|
||||
68 48 49 0.0179 0.0505 0.00629
|
||||
69 49 50 0.0267 0.0752 0.00937
|
||||
70 49 51 0.0486 0.1370 0.0171
|
||||
71 51 52 0.0203 0.0588 0.00698
|
||||
72 52 53 0.0405 0.1635 0.02029
|
||||
73 53 54 0.0263 0.1220 0.0155
|
||||
74 49 54 0.03976 0.1450 0.0734
|
||||
75 54 55 0.0169 0.0707 0.0101
|
||||
76 54 56 0.00275 0.00955 0.00366
|
||||
77 55 56 0.00488 0.0151 0.00187
|
||||
78 56 57 0.0343 0.0966 0.0121
|
||||
79 50 57 0.0474 0.1340 0.0166
|
||||
80 56 58 0.0343 0.0966 0.0121
|
||||
81 51 58 0.0255 0.0719 0.00894
|
||||
82 54 59 0.0503 0.2293 0.0299
|
||||
83 56 59 0.04069 0.12243 0.05525
|
||||
84 55 59 0.04739 0.2158 0.02823
|
||||
85 59 60 0.0317 0.1450 0.0188
|
||||
86 59 61 0.0328 0.1500 0.0194
|
||||
87 60 61 0.00264 0.0135 0.00728
|
||||
88 60 62 0.0123 0.0561 0.00734
|
||||
89 61 62 0.00824 0.0376 0.0049
|
||||
91 63 64 0.00172 0.0200 0.1080
|
||||
93 38 65 0.00901 0.0986 0.5230
|
||||
94 64 65 0.00269 0.0302 0.1900
|
||||
95 49 66 0.0090 0.04595 0.0248
|
||||
96 62 66 0.0482 0.2180 0.0289
|
||||
97 62 67 0.0258 0.1170 0.0155
|
||||
99 66 67 0.0224 0.1015 0.01341
|
||||
100 65 68 0.00138 0.0160 0.3190
|
||||
101 47 69 0.0844 0.2778 0.03546
|
||||
102 49 69 0.0985 0.3240 0.0414
|
||||
104 69 70 0.0300 0.1270 0.0610
|
||||
105 24 70 0.10221 0.4115 0.05099
|
||||
106 70 71 0.00882 0.0355 0.00439
|
||||
107 24 72 0.0488 0.1960 0.0244
|
||||
108 71 72 0.0446 0.1800 0.02222
|
||||
109 71 73 0.00866 0.0454 0.00589
|
||||
110 70 74 0.0401 0.1323 0.01684
|
||||
111 70 75 0.0428 0.1410 0.0180
|
||||
112 69 75 0.0405 0.1220 0.0620
|
||||
113 74 75 0.0123 0.0406 0.00517
|
||||
114 76 77 0.0444 0.1480 0.0184
|
||||
115 69 77 0.0309 0.1010 0.0519
|
||||
116 75 77 0.0601 0.1999 0.02489
|
||||
117 77 78 0.00376 0.0124 0.00632
|
||||
118 78 79 0.00546 0.0244 0.00324
|
||||
119 77 80 0.01077 0.03318 0.0350
|
||||
120 79 80 0.0156 0.0704 0.00945
|
||||
121 68 81 0.00175 0.0202 0.4040
|
||||
123 77 82 0.0298 0.0853 0.04087
|
||||
124 82 83 0.0112 0.03665 0.01898
|
||||
125 83 84 0.0625 0.1320 0.0129
|
||||
126 83 85 0.0430 0.1480 0.0174
|
||||
127 84 85 0.0302 0.0641 0.00617
|
||||
128 85 86 0.0350 0.1230 0.0138
|
||||
129 86 87 0.02828 0.2074 0.02225
|
||||
130 85 88 0.0200 0.1020 0.0138
|
||||
131 85 89 0.0239 0.1730 0.0235
|
||||
132 88 89 0.0139 0.0712 0.00969
|
||||
133 89 90 0.01631 0.06515 0.0794
|
||||
134 90 91 0.0254 0.0836 0.0107
|
||||
135 89 92 0.00791 0.03827 0.0481
|
||||
136 91 92 0.0387 0.1272 0.01634
|
||||
137 92 93 0.0258 0.0848 0.0109
|
||||
138 92 94 0.0481 0.1580 0.0203
|
||||
139 93 94 0.0223 0.0732 0.00938
|
||||
140 94 95 0.0132 0.0434 0.00555
|
||||
141 80 96 0.0356 0.1820 0.0247
|
||||
142 82 96 0.0162 0.0530 0.0272
|
||||
143 94 96 0.0269 0.0869 0.0115
|
||||
144 80 97 0.0183 0.0934 0.0127
|
||||
145 80 98 0.0238 0.1080 0.0143
|
||||
146 80 99 0.0454 0.2060 0.0273
|
||||
148 94 100 0.0178 0.0580 0.0302
|
||||
149 95 96 0.0171 0.0547 0.00737
|
||||
150 96 97 0.0173 0.0885 0.0120
|
||||
151 98 100 0.0397 0.1790 0.0238
|
||||
152 99 100 0.0180 0.0813 0.0108
|
||||
153 100 101 0.0277 0.1262 0.0164
|
||||
154 92 102 0.0123 0.0559 0.00732
|
||||
155 101 102 0.0246 0.1120 0.0147
|
||||
156 100 103 0.0160 0.0525 0.0268
|
||||
157 100 104 0.0451 0.2040 0.02705
|
||||
158 103 104 0.0466 0.1584 0.02035
|
||||
159 103 105 0.0535 0.1625 0.0204
|
||||
160 100 106 0.0605 0.2290 0.0310
|
||||
161 104 105 0.00994 0.0378 0.00493
|
||||
162 105 106 0.0140 0.0547 0.00717
|
||||
163 105 107 0.0530 0.1830 0.0236
|
||||
164 105 108 0.0261 0.0703 0.09222
|
||||
166 108 109 0.0105 0.0288 0.0038
|
||||
167 103 110 0.03906 0.1813 0.02305
|
||||
168 109 110 0.0278 0.0762 0.0101
|
||||
169 110 111 0.0220 0.0755 0.0100
|
||||
170 110 112 0.0247 0.0640 0.0310
|
||||
171 17 113 0.00913 0.0301 0.00384
|
||||
172 32 113 0.0615 0.2030 0.0259
|
||||
173 32 114 0.0135 0.0612 0.00814
|
||||
174 27 115 0.0164 0.0741 0.00986
|
||||
175 114 115 0.0023 0.0104 0.00138
|
||||
176 68 116 0.00034 0.00405 0.0820
|
||||
177 12 117 0.0329 0.1400 0.0179
|
||||
178 75 118 0.01450 0.04810 0.00599
|
||||
179 76 118 0.0164 0.0544 0.00678
|
||||
0
|
||||
5 -0.4
|
||||
37 -0.25
|
||||
45 .1
|
||||
46 .1
|
||||
79 .2
|
||||
83 .1
|
||||
110 .06
|
||||
0
|
||||
1 8 5 0.0 0.0267 0.9850 0.9 1.1 1
|
||||
2 25 26 0.0 0.0382 0.9600 0.9 1.1 1
|
||||
3 17 30 0.0 0.0388 0.9600 0.9 1.1 1
|
||||
4 37 38 0.0 0.0375 0.9350 0.9 1.1 1
|
||||
5 59 63 0.0 0.0386 0.9600 0.9 1.1 1
|
||||
6 61 64 0.0 0.0268 0.9850 0.9 1.1 1
|
||||
7 65 66 0.0 0.0370 0.9350 0.9 1.1 1
|
||||
8 68 69 0.0 0.0370 0.9350 0.9 1.1 1
|
||||
9 80 81 0.0 0.0370 0.9350 0.9 1.1 1
|
||||
10 92 100 0.0648 0.2950 1. 0.9 1.1 0
|
||||
11 106 107 0.0530 0.1830 1. 0.9 1.1 0
|
||||
0
|
||||
1 0. 0. 51. 27.
|
||||
2 0. 0. 20. 9.
|
||||
3 0. 0. 39. 10.
|
||||
4 -9. 0. 30. 12.
|
||||
5 0. 0. 0. 0.
|
||||
6 0. 0. 52. 22.
|
||||
7 0. 0. 19. 2.
|
||||
8 -28. 0. 0. 0.
|
||||
9 0. 0. 0. 0.
|
||||
10 450. 0. 0. 0.
|
||||
11 0. 0. 70. 23.
|
||||
12 85. 0. 47. 10.
|
||||
13 0. 0. 34. 16.
|
||||
14 0. 0. 14. 1.
|
||||
15 0. 0. 90. 30.
|
||||
16 0. 0. 25. 10.
|
||||
17 0. 0. 11. 3.
|
||||
18 0. 0. 60. 34.
|
||||
19 0. 0. 45. 25.
|
||||
20 0. 0. 18. 3.
|
||||
21 0. 0. 14. 8.
|
||||
22 0. 0. 10. 5.
|
||||
23 0. 0. 7. 3.
|
||||
24 -13. 0. 0. 0.
|
||||
25 220. 0. 0. 0.
|
||||
26 314. 0. 0. 0.
|
||||
27 -9. 0. 62. 13.
|
||||
28 0. 0. 17. 7.
|
||||
29 0. 0. 24. 4.
|
||||
30 0. 0. 0. 0.
|
||||
31 7. 0. 43. 27.
|
||||
32 0. 0. 59. 23.
|
||||
33 0. 0. 23. 9.
|
||||
34 0. 0. 59. 26.
|
||||
35 0. 0. 33. 9.
|
||||
36 0. 0. 31. 17.
|
||||
37 0. 0. 0. 0.
|
||||
38 0. 0. 0. 0.
|
||||
39 0. 0. 27. 11.
|
||||
40 -46. 0. 20. 23.
|
||||
41 0. 0. 37. 10.
|
||||
42 -59. 0. 37. 23.
|
||||
43 0. 0. 18. 7.
|
||||
44 0. 0. 16. 8.
|
||||
45 0. 0. 53. 22.
|
||||
46 19. 0. 28. 10.
|
||||
47 0. 0. 34. 0.
|
||||
48 0. 0. 20. 11.
|
||||
49 204. 0. 87. 30.
|
||||
50 0. 0. 17. 4.
|
||||
51 0. 0. 17. 8.
|
||||
52 0. 0. 18. 5.
|
||||
53 0. 0. 23. 11.
|
||||
54 48. 0. 113. 32.
|
||||
55 0. 0. 63. 22.
|
||||
56 0. 0. 84. 18.
|
||||
57 0. 0. 12. 3.
|
||||
58 0. 0. 12. 3.
|
||||
59 155. 0. 277. 113.
|
||||
60 0. 0. 78. 3.
|
||||
61 160. 0. 0. 0.
|
||||
62 0. 0. 77. 14.
|
||||
63 0. 0. 0. 0.
|
||||
64 0. 0. 0. 0.
|
||||
65 391. 0. 0. 0.
|
||||
66 392. 0. 39. 18.
|
||||
67 0. 0. 28. 7.
|
||||
68 0. 0. 0. 0.
|
||||
69 516.4 0. 0. 0.
|
||||
70 0. 0. 66. 20.
|
||||
71 0. 0. 0. 0.
|
||||
72 -12. 0. 0. 0.
|
||||
73 -6. 0. 0. 0.
|
||||
74 0. 0. 68. 27.
|
||||
75 0. 0. 47. 11.
|
||||
76 0. 0. 68. 36.
|
||||
77 0. 0. 61. 28.
|
||||
78 0. 0. 71. 26.
|
||||
79 0. 0. 39. 32.
|
||||
80 477. 0. 130. 26.
|
||||
81 0. 0. 0. 0.
|
||||
82 0. 0. 54. 27.
|
||||
83 0. 0. 20. 10.
|
||||
84 0. 0. 11. 7.
|
||||
85 0. 0. 24. 15.
|
||||
86 0. 0. 21. 10.
|
||||
87 4. 0. 0. 0.
|
||||
88 0. 0. 48. 10.
|
||||
89 607. 0. 0. 0.
|
||||
90 -85. 0. 78. 42.
|
||||
91 -10. 0. 0. 0.
|
||||
92 0. 0. 65. 10.
|
||||
93 0. 0. 12. 7.
|
||||
94 0. 0. 30. 16.
|
||||
95 0. 0. 42. 31.
|
||||
96 0. 0. 38. 15.
|
||||
97 0. 0. 15. 9.
|
||||
98 0. 0. 34. 8.
|
||||
99 -42. 0. 0. 0.
|
||||
100 252. 0. 37. 18.
|
||||
101 0. 0. 22. 15.
|
||||
102 0. 0. 5. 3.
|
||||
103 40. 0. 23. 16.
|
||||
104 0. 0. 38. 25.
|
||||
105 0. 0. 31. 26.
|
||||
106 0. 0. 43. 16.
|
||||
107 -22. 0. 28. 12.
|
||||
108 0. 0. 2. 1.
|
||||
109 0. 0. 8. 3.
|
||||
110 0. 0. 39. 30.
|
||||
111 36. 0. 0. 0.
|
||||
112 -43. 0. 25. 13.
|
||||
113 -6. 0. 0. 0.
|
||||
114 0. 0. 8. 3.
|
||||
115 0. 0. 22. 7.
|
||||
116 -184. 0. 0. 0.
|
||||
117 0. 0. 20. 8.
|
||||
118 0. 0. 33. 15.
|
||||
0
|
||||
1 .955 -5. 15.
|
||||
4 .998 -300. 300.
|
||||
6 .99 -13. 50.
|
||||
8 1.015 -300. 300.
|
||||
10 1.05 -147. 200.
|
||||
12 .99 -35. 120.
|
||||
15 .97 -10. 30.
|
||||
18 .973 -16. 50.
|
||||
19 .963 -8. 24.
|
||||
24 .992 -300. 300.
|
||||
25 1.05 -47. 140.
|
||||
26 1.015 -1000. 1000.
|
||||
27 .968 -300. 300.
|
||||
31 .967 -300. 300.
|
||||
32 .964 -14. 42.
|
||||
34 .984 -8. 24.
|
||||
36 .98 -8. 24.
|
||||
40 .97 -300. 300.
|
||||
42 .985 -300. 300.
|
||||
46 1.005 -100. 100.
|
||||
49 1.025 -85. 210.
|
||||
54 .955 -300. 300.
|
||||
55 .952 -8. 23.
|
||||
56 .954 -8. 15.
|
||||
59 .985 -60. 180.
|
||||
61 .995 -100. 300.
|
||||
62 .998 -20. 20.
|
||||
65 1.005 -67. 200.
|
||||
66 1.05 -67. 200.
|
||||
69 1.01 -300. 300.
|
||||
70 .984 -10. 32.
|
||||
72 .98 -100. 100.
|
||||
73 .991 -100. 100.
|
||||
74 .958 -6. 9.
|
||||
76 .943 -8. 23.
|
||||
77 1.006 -20. 70.
|
||||
80 1.04 -165. 280.
|
||||
85 .985 -8. 23.
|
||||
87 1.015 -100. 1000.
|
||||
89 1.005 -210. 300.
|
||||
90 .985 -300. 300.
|
||||
91 .98 -100. 100.
|
||||
92 .993 -3. 9.
|
||||
99 1.01 -100. 100.
|
||||
100 1.017 -50. 155.
|
||||
103 1.001 -15. 40.
|
||||
104 .971 -8. 23.
|
||||
105 .965 -8. 23.
|
||||
107 .952 -200. 200.
|
||||
110 .973 -8. 23.
|
||||
111 .98 -100. 1000.
|
||||
112 .975 -100. 1000.
|
||||
113 .993 -100. 200.
|
||||
116 1.005 -1000. 1000.
|
||||
0
|
||||
10 0. 1.25 1. 100. 600. 1
|
||||
12 0. 2.6 1.2 60. 200. 1
|
||||
25 0. 1.5 1. 50. 300. 1
|
||||
26 0. 1.5 1. 100. 400. 1
|
||||
49 0. 2.1 1. 100. 400. 1
|
||||
54 0. 2.0 1.4 20. 300. 1
|
||||
59 0. 1.6 1. 50. 350. 1
|
||||
61 0. 1.5 1. 50. 400. 1
|
||||
65 0. 1.5 1. 100. 500. 1
|
||||
66 0. 1.5 1. 100. 500. 1
|
||||
69 0. 1.0 1. 100. 800. 1
|
||||
80 0. 1.23 1. 100. 600. 1
|
||||
89 0. 1.2 1. 100. 800. 1
|
||||
100 0. 1.6 1. 100. 400. 1
|
||||
103 0. 2.5 1.2 20. 200. 1
|
||||
111 0. 2.4 1.1 10. 200. 1
|
||||
0
|
||||
1 17 0 0.1 0 0 10
|
||||
2 34 0 0.1 0.14 0 10
|
||||
3 44 0 0.1 0.1 0 10
|
||||
4 107 0 0.1 0.06 0 10
|
||||
5 82 0 0.1 0.2 0 10
|
||||
6 48 0 0.1 0.15 0 10
|
||||
7 74 0 0.1 0.12 0 10
|
||||
8 105 0 0.1 0.2 0 10
|
||||
0
|
||||
0
|
||||
0
|
||||
1 100 92 -25. 25.
|
||||
2 106 107 -18. 18.
|
||||
0
|
||||
0
|
||||
1 17 0 0.05 0 0 6
|
||||
2 34 0 0.05 0.14 0 6
|
||||
3 44 0 0.05 0.1 0 6
|
||||
4 107 0 0.05 0.06 0 6
|
||||
5 82 0 0.05 0.2 0 6
|
||||
6 48 0 0.05 0.15 0 6
|
||||
7 74 0 0.05 0.12 0 6
|
||||
8 105 0 0.05 0.2 0 6
|
||||
0
|
||||
1 17 0 0.1 0 0 6
|
||||
2 34 0 0.1 0.14 0 6
|
||||
3 44 0 0.1 0.1 0 6
|
||||
4 107 0 0.1 0.06 0 6
|
||||
5 82 0 0.1 0.2 0 6
|
||||
6 48 0 0.1 0.15 0 6
|
||||
7 74 0 0.1 0.12 0 6
|
||||
8 105 0 0.1 0.2 0 6
|
||||
0
|
||||
1 17 0 0.2 0 0 6
|
||||
2 34 0 0.2 0.14 0 6
|
||||
3 44 0 0.2 0.1 0 6
|
||||
4 107 0 0.2 0.06 0 6
|
||||
5 82 0 0.2 0.2 0 6
|
||||
6 48 0 0.2 0.15 0 6
|
||||
7 74 0 0.2 0.12 0 6
|
||||
8 105 0 0.2 0.2 0 6
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
30 41 100.0 100 0.1
|
||||
1.e-5 2
|
||||
1 1
|
||||
0
|
||||
1 1 2 0.0192 0.0575 0.0264
|
||||
2 1 3 0.0452 0.1652 0.0204
|
||||
3 2 4 0.0570 0.1737 0.0184
|
||||
4 3 4 0.0132 0.0379 0.0042
|
||||
5 2 5 0.0472 0.1983 0.0209
|
||||
6 2 6 0.0581 0.1763 0.0187
|
||||
7 4 6 0.0119 0.0414 0.0045
|
||||
8 5 7 0.0460 0.1160 0.0102
|
||||
9 6 7 0.0267 0.0820 0.0085
|
||||
10 6 8 0.0120 0.0420 0.0045
|
||||
13 9 11 0.0 0.2080 0.0
|
||||
15 12 13 0.0 0.1400 0.0
|
||||
16 12 14 0.1231 0.2559 0.0
|
||||
17 12 15 0.0662 0.1304 0.0
|
||||
18 12 16 0.0945 0.1987 0.0
|
||||
19 14 15 0.2210 0.1997 0.0
|
||||
20 16 17 0.0524 0.1923 0.0
|
||||
21 15 18 0.1073 0.2185 0.0
|
||||
22 18 19 0.0639 0.1292 0.0
|
||||
23 19 20 0.0340 0.0680 0.0
|
||||
24 10 20 0.0936 0.2090 0.0
|
||||
25 10 17 0.0324 0.0845 0.0
|
||||
26 10 21 0.0348 0.0749 0.0
|
||||
27 10 22 0.0727 0.1499 0.0
|
||||
28 21 22 0.0116 0.0236 0.0
|
||||
29 15 23 0.1000 0.2020 0.0
|
||||
30 22 24 0.1150 0.1790 0.0
|
||||
31 23 24 0.1320 0.2700 0.0
|
||||
32 24 25 0.1885 0.3292 0.0
|
||||
33 25 26 0.2544 0.3800 0.0
|
||||
34 25 27 0.1093 0.2087 0.0
|
||||
36 27 29 0.2198 0.4153 0.0
|
||||
37 27 30 0.3202 0.6027 0.0
|
||||
38 29 30 0.2399 0.4533 0.0
|
||||
39 8 28 0.0636 0.2000 0.0214
|
||||
40 6 28 0.0169 0.0599 0.0065
|
||||
41 9 10 0.0 0.1100 0.0
|
||||
0
|
||||
0
|
||||
1 6 9 0.0 0.2080 0.978 0.9 1.1 1
|
||||
2 6 10 0.0 0.5560 0.969 0.9 1.1 1
|
||||
3 4 12 0.0 0.2560 0.932 0.9 1.1 1
|
||||
4 28 27 0.0 0.3960 0.968 0.9 1.1 1
|
||||
0
|
||||
1 138.77 -6.49 0. 0.
|
||||
2 20 41.71 21.7 12.7
|
||||
3 0. 0. 2.4 1.2
|
||||
4 0. 0. 7.6 1.6
|
||||
5 15 16.66 94.2 19.
|
||||
6 0. 0. 0. 0.
|
||||
7 0. 0. 22.8 10.9
|
||||
8 60 29.31 30. 30.
|
||||
9 0. 0. 0. 0.
|
||||
10 0. 0. 5.8 2.
|
||||
11 80 6.71 0. 0.
|
||||
12 0. 0. 11.2 7.5
|
||||
13 90 3.37 0. 0.
|
||||
14 0. 0. 6.2 1.6
|
||||
15 0. 0. 8.2 2.5
|
||||
16 0. 0. 3.5 1.8
|
||||
17 0. 0. 9. 5.8
|
||||
18 0. 0. 3.2 .9
|
||||
19 0. 0. 9.5 3.4
|
||||
20 0. 0. 2.2 .7
|
||||
21 0. 0. 17.5 11.2
|
||||
22 0. 0. 0. 0.
|
||||
23 0. 0. 3.2 1.6
|
||||
24 0. 0. 8.7 6.7
|
||||
25 0. 0. 0. 0.
|
||||
26 0. 0. 3.5 2.3
|
||||
27 0. 0. 0. 0.
|
||||
28 0. 0. 0. 0.
|
||||
29 0. 0. 2.4 .9
|
||||
30 0. 0. 10.6 1.9
|
||||
0
|
||||
1 1.060 -50 50.
|
||||
2 1.043 -40. 60.
|
||||
5 1.010 -40. 40.
|
||||
8 1.010 -10. 40.
|
||||
11 1.082 -6. 24.
|
||||
13 1.071 -6. 24.
|
||||
0
|
||||
1 10. 2.0 2.0 10. 200. 1
|
||||
2 10. 1.5 2.4 10. 60. 1
|
||||
5 20. 1.8 0.8 10. 51. 1
|
||||
8 10. 1.0 1.2 10. 35. 1
|
||||
11 20. 1.8 0.8 10. 51. 1
|
||||
13 10. 1.5 2.0 10. 50. 1
|
||||
0
|
||||
1 10 0 0.1 0.19 0 6
|
||||
2 24 0 0.1 0.043 0 6
|
||||
0
|
||||
0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,135 @@
|
|||
%*******************************************************
|
||||
% 程序名称:电力系统无功优化程序
|
||||
% 程序功能:主程序
|
||||
% 程序算法:现代内点法,采用Sigmoid函数处理离散变量
|
||||
% 目标函数:发电费用最小(1)、有功出力最小(2)、有功网损最小(3)、无功网损最小(4)
|
||||
% 编者: 韦园清
|
||||
% 编写时间:2010年10月
|
||||
%*******************************************************
|
||||
function []=OPF(filename)
|
||||
clc;
|
||||
%% 读取数据
|
||||
data=dlmread(filename);
|
||||
if data(1,1)<1780
|
||||
%读取1780节点系统格式类型的数据
|
||||
[nodeNum,lineNum,capacity,kmax,centrPara,accuracy,opfGoal,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,...
|
||||
pvQmin,pvQmax,pgNumall,pgNodeall,pgNum,pgNode,a,b,c,Pmin,Pmax,capNum,capI,capGi,capBi,capK,capKmin,capKmax,Vmax,Vmin]=readData(filename);
|
||||
tic;
|
||||
%形成节点导纳矩阵
|
||||
[G,B,transY,transG,transB,transG1,transB1,transNum,lineNum,lineI,lineJ,lineB,transI,transJ,transK0,transKmin,transKmax]=formY(nodeNum,...
|
||||
lineNum,mtrLine,mtrGround,mtrTrans,capI,capBi,capK);
|
||||
else
|
||||
%读取IEEE标准格式数据
|
||||
[nodeNum,lineNum,capacity,kmax,accuracy,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,pvQmin,pvQmax,...
|
||||
mtrCapacitor,pgNum,pgNode,a,b,c,Pmin,Pmax,Vmin,Vmax,centrPara]=readData_RPP(data) ;
|
||||
tic;
|
||||
%形成节点导纳矩阵
|
||||
[G,B,lineI,lineJ,lineB,transI,transJ,transK0,transNum,transKmin,transKmax,capI,capGi,capBi,capK,capKmin,capKmax,capNum,transG,transB,...
|
||||
transG1,transB1,lineNum]=formY_RPP(nodeNum,lineNum,mtrLine,mtrGround,mtrTrans,mtrCapacitor);
|
||||
end
|
||||
%% 初始化
|
||||
[e,f,PG,QR,Pg,Qg,T,pgvNum,xNum,m,r,l,u,z,w,x,y,para3,mu0,b0,bei,dmaxOut1,dmaxOut2,xz1,xz2,dmaxOut3,dmaxOut4,xz3,xz4,xz5,muOut,...
|
||||
opfGoal,times,secondBegin,ifconverge,k2,mismatch]=seting(nodeNum,lineNum,transNum,transK0,capNum,capK,pvQmin,pvQmax,pvNum,pvNode,pvV,...
|
||||
pgNum,pgNode,Pmin,Pmax,Pg,Qg);
|
||||
disp (['迭代次数 互补间隙 最优潮流目标'])
|
||||
%% 进入循环体求解
|
||||
for k=0:kmax
|
||||
[H1,N1,diagE,diagF,hx,Gap,max_hx,fx,Pg,Qg,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,PGR]=midResult(nodeNum,pgNode,opfGoal,...
|
||||
z,l,u,w,Pg,Qg,e,f,G,B,a,b,c,PG,Pd,Qd,k,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,times,accuracy,mismatch);
|
||||
if Gap<accuracy&&max(abs(hx))<mismatch %判断互补间隙和最大不平衡量是否达到精度
|
||||
if times==1
|
||||
times=2;
|
||||
end
|
||||
if times==2
|
||||
if secondBegin==1
|
||||
[x,secondBegin,mut,oneTrans,Zt,tij,Tn,kt0,r,l,u,z,w,y,oneCap,capKn,Bci,Zb,mub,q0,Tn1,capKn1,Kn,capK,firstT,firstcapK,...
|
||||
firstfx,firstV,Gap]=snd_setting(x,secondBegin,transNum,T,transKmin,transKmax,r,m,capNum,capK,pgvNum,mu0,capBi,fx,e,f);
|
||||
end
|
||||
if times==2
|
||||
tij_Bci=[tij;Bci];
|
||||
index_0= tij_Bci<0.5; %获取靠近0的值下标
|
||||
index_1=find(tij_Bci>=0.5); %获取靠近1的值下标
|
||||
tij_0=max(tij_Bci(index_0));%获取靠近0的值中最大的量
|
||||
tij_1=max(ones(size(index_1))-tij_Bci(index_1));%获取靠近1的值中最小的量
|
||||
if isempty(tij_0)
|
||||
tmax=tij_1;
|
||||
else if isempty(tij_1)
|
||||
tmax=tij_0;
|
||||
else
|
||||
tmax=max(tij_0,tij_1);%获取所有离散变量远离0或1最大的量
|
||||
end
|
||||
end
|
||||
if (tmax<accuracy) %判断离散变量是否达到精度
|
||||
ifconverge=1;
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
mu=(centrPara*Gap)/(2*r); %计算扰动因子
|
||||
if times==1 %预计算过程
|
||||
%形成修正方程系数矩阵
|
||||
[HSB,dhx,dgx,dgxT,GIJ,BIJ,L1,U1,LZ,UW,transG,transB]=formHSB(nodeNum,balNode,opfGoal,lineNum,transNum,lineI,lineJ,transI,transJ,T,...
|
||||
transG,transB,pgNode,pvNode,G,B,e,f,pgNum,pvNum,pgvNum,xNum,capNum,capI,a,m,r,l,u,z,w,y,N1,H1,diagE,diagF,balNum);
|
||||
%形成扰动KKT方程不平衡量矩阵
|
||||
[const,Lz,Lw,L1,U1]=Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,T,transKmin,transKmax,lineI,lineJ,balNode,...
|
||||
mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,pgNum,pgvNum,xNum,capNum,capK,capKmin,capKmax,pgNode,pvNode,dhx,dgx,L1,U1,LZ,...
|
||||
UW,l,u,y,r,hx,Vmax,Vmin,capBi);
|
||||
%求解方程并更新变量
|
||||
[z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,capK,G,B]=solve(HSB,const,mu,r,nodeNum,pgNum,pvNum,xNum,transNum,capNum,capI,capK,pgNode,pvNode,Pg,...
|
||||
Qg,m,x,y,z,l,u,w,Lz,Lw,LZ,UW,dgxT,L1,U1,G,B,transI,transJ,T,transG1,transB1);
|
||||
else %连续化处理过程
|
||||
k2=k2+1;
|
||||
xz5=[xz5 k2]; %保留每次迭代光滑参数的值,用于作图
|
||||
muOut=[muOut mub(2)];
|
||||
%形成修正方程系数矩阵
|
||||
[HSB,dhx,dgx,dgxT,GIJ,BIJ,L1,U1,LZ,UW,transG,transB,dT_Zt,mut,mub]=snd_formHSB(nodeNum,balNode,opfGoal,lineNum,transNum,lineI,...
|
||||
lineJ,transI,transJ,T,transG,transB,pgNode,pvNode,G,B,e,f,pgNum,pvNum,pgvNum,xNum,a,m,r,l,u,z,w,y,kt0,mut,Zt,oneTrans,oneCap,Zb,...
|
||||
mub,q0,capBi,capNum,capI,tij,Bci,N1,H1,diagE,diagF,b0,balNum);
|
||||
%形成扰动KKT方程不平衡量矩阵
|
||||
[const,Lz,Lw,L1,U1]=snd_Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,lineI,lineJ,balNode,mu,G,B,GIJ,BIJ,e,f,...
|
||||
Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,pgNum,pgvNum,xNum,pgNode,pvNode,dhx,dgx,L1,U1,LZ,UW,l,u,y,r,dT_Zt,capNum,hx,Vmax,Vmin,Zt,Zb,bei,...
|
||||
mu0,oneTrans,oneCap);
|
||||
%求解方程并更新变量
|
||||
[z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,G,B,Zt,tij,Zb,Bci,capK,mut,mub]=snd_solve(HSB,const,mu,r,nodeNum,pgNum,pvNum,pgvNum,xNum,transNum,pgNode,...
|
||||
pvNode,Pg,Qg,m,x,y,z,l,u,w,Lz,Lw,LZ,UW,dgxT,L1,U1,G,B,transI,transJ,T,transG1,transB1,kt0,Tn,mut,oneTrans,q0,capKn,mub,oneCap,capK,...
|
||||
capNum,capI,capBi);
|
||||
end
|
||||
end
|
||||
if k>=kmax
|
||||
disp '最优潮流计算不收敛!'
|
||||
disp(k)
|
||||
else
|
||||
disp '最优潮流计算收敛!'
|
||||
disp(['迭代',num2str(k),'次!'])
|
||||
end
|
||||
toc;
|
||||
%% 输出计算结果
|
||||
OutResult(e,f,T,k,Gap,fx,transI,transJ,filename,nodeNum,PGR,pgNode,QR,pvNode,capI,capK,firstfx,firstT,firstcapK,Tn,Tn1,capKn,capKn1,ifconverge,...
|
||||
max_hx,G,B,balNode,toc,firstV,capBi);
|
||||
|
||||
%% 作互补间隙和最大不平衡量收敛曲线图
|
||||
% plot(xz1,dmaxOut1,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% plot(xz2,dmaxOut2,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% xlabel('迭代次数')
|
||||
% ylabel('互补间隙')
|
||||
% plot(xz3,dmaxOut3,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% plot(xz4,dmaxOut4,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% xlabel('迭代次数')
|
||||
% ylabel('最大不平衡量')
|
||||
|
||||
%% 作mut在迭代过程中的变化图
|
||||
% plot(xz5,muOut,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% xlabel('迭代次数')
|
||||
% ylabel('μ')
|
||||
% hold on;
|
||||
|
||||
%% 做二次优化的互补间隙图
|
||||
% plot(xz5,dmaxOut2,'-ks','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',3)
|
||||
% hold on;
|
||||
% xlabel('迭代次数')
|
||||
% ylabel('互补间隙')
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
function OutResult(e,f,T,k,Gap,fx,transI,transJ,filename,nodeNum,PGR,pgNode,QR,pvNode,capI,capK,firstfx,firstT,firstcapK,Tn,Tn1,...
|
||||
capKn,capKn1,ifconverge,max_hx,G,B,balNode,toc,firstV,capBi)
|
||||
%程序功能:输出计算结果
|
||||
%编写时间:2010年10月
|
||||
|
||||
Y1=G+1j*B;
|
||||
V1=e+1j*f;
|
||||
NodeS=zeros(nodeNum,1);
|
||||
NodeS(pvNode)=V1(pvNode,:).*conj(Y1(pvNode,:)*V1); %计算平衡节点和PV节点的节点复功率,Y1(pvNode,:)*V1为节点的注入电流
|
||||
balanceP=real(NodeS(balNode,1)); %获取平衡节点的有功功率
|
||||
PGR(balNode,1)=balanceP;
|
||||
balanceQ=imag(NodeS(balNode,1));
|
||||
QR(balNode,1)=balanceQ;
|
||||
resultFile=['result_' filename];
|
||||
fid=fopen(resultFile,'w');
|
||||
result=[k;Gap;fx;firstfx;toc;max_hx;ifconverge]; %收敛信息
|
||||
fprintf(fid,'%2.0f %4.4e %6.6f %6.6f %4.4f %4.4e %2.0f\r\n',result);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
trans=[transI';transJ';(1./T)';(1./firstT)';(1./Tn)';(1./Tn1)']; %变压器变比结果
|
||||
fprintf(fid,'%2.0f %2.0f %5.4f %5.4f %5.4f %5.4f\r\n',trans);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
nn=1:nodeNum;
|
||||
e=full(e);
|
||||
f=full(f);
|
||||
V=sqrt(e.^2+f.^2);
|
||||
Vresult=[nn;e';f';V';firstV']; %节点电压结果
|
||||
fprintf(fid,'%3.0f %5.4f %5.4f %5.4f %5.4f\r\n',Vresult);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
PGresult=[pgNode';PGR(pgNode)']; %有功出力结果
|
||||
PGresult=full(PGresult);
|
||||
fprintf(fid,'%2.0f %4.4f\r\n',PGresult);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
QRresult=[pvNode';QR(pvNode)']; %无功出力结果
|
||||
QRresult=full(QRresult);
|
||||
fprintf(fid,'%2.0f %4.4f\r\n',QRresult);
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
capK=capK.*capBi;
|
||||
capKn=capKn.*capBi;
|
||||
capKn1=capKn1.*capBi;
|
||||
Capresult=[capI';capK';firstcapK';capKn';capKn1']; %电容电抗器投入组数结果
|
||||
Capresult=full(Capresult);
|
||||
fprintf(fid,'%2.0f %3.2f %5.4f %3.2f %3.2f\r\n',full(Capresult));
|
||||
fprintf(fid,'%1.0f\r\n',0);
|
||||
fclose(fid);
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,203 @@
|
|||
function [HSB,dhx,dgx,dgxT,GIJ,BIJ,L1,U1,LZ,UW,transG,transB]=...
|
||||
formHSB(nodeNum,balNode,opfGoal,lineNum,transNum,lineI,lineJ,transI,transJ,T,transG,transB,pgNode,pvNode,...
|
||||
G,B,e,f,pgNum,pvNum,pgvNum,xNum,capNum,capI,a,m,r,l,u,z,w,y,N1,H1,diagE,diagF,balNum)
|
||||
%程序功能:预计算过程,形成修正方程系数矩阵
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 形成等式约束雅可比矩阵
|
||||
ef1=e(transI).*e(transJ)+f(transI).*f(transJ);
|
||||
ef2=e(transI).*f(transJ)-e(transJ).*f(transI);
|
||||
ef3=e(transI).*e(transI)+f(transI).*f(transI);
|
||||
ef1G=ef1.*transG;
|
||||
ef1B=ef1.*transB;
|
||||
ef2G=ef2.*transG;
|
||||
ef2B=ef2.*transB;
|
||||
dhPTi=-ef1G+ef2B+2*ef3.*transG.*T;
|
||||
dhPTj=-ef1G-ef2B;
|
||||
dhPT=sparse(1:transNum,transI,dhPTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhPTj,transNum,nodeNum);%有功平衡方程P对变压器变比求偏导
|
||||
dhQTi=ef1B+ef2G-2*ef3.*transB.*T;
|
||||
dhQTj=ef1B-ef2G;
|
||||
dhQT=sparse(1:transNum,transI,dhQTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhQTj,transNum,nodeNum);%无功平衡方程Q对变压器变比求偏导
|
||||
dhP=sparse(1:pgNum,pgNode,ones(pgNum,1),pgNum,m);
|
||||
dhQ1=sparse(1:pvNum,pvNode,ones(pvNum,1),pvNum,nodeNum);
|
||||
dhQ=[sparse(pvNum,nodeNum) dhQ1];
|
||||
dhcapK1=sparse(1:capNum,capI,(e(capI).^2+f(capI).^2),capNum,nodeNum); %功率平衡方程对电容电抗器组数求偏导
|
||||
dhcapK=[sparse(capNum,nodeNum) dhcapK1];
|
||||
%功率方程雅可比矩阵
|
||||
deG=diagE*G;
|
||||
dfB=diagF*B;
|
||||
deB=diagE*B;
|
||||
dfG=diagF*G;
|
||||
dH1=sparse(1:nodeNum,1:nodeNum,H1,nodeNum,nodeNum);
|
||||
dN1=sparse(1:nodeNum,1:nodeNum,N1,nodeNum,nodeNum);
|
||||
Hij=-dH1-deG-dfB;
|
||||
Nij=-dN1+deB-dfG;
|
||||
Jij=dN1-dfG+deB;
|
||||
Lij=-dH1+dfB+deG;
|
||||
%合并形成功率方程雅可比矩阵
|
||||
dhJacb=[Hij Nij;Jij Lij]';
|
||||
%合并形成等式约束雅可比矩阵h(x)
|
||||
dhx=[dhPT dhQT;dhP;dhQ;dhcapK;dhJacb];
|
||||
%% 形成不等式约束雅可比矩阵▽g(x)
|
||||
dgT1=sparse(1:transNum,1:transNum,ones(transNum,1),transNum,r-lineNum);
|
||||
dglT=(e(transI).^2+f(transI).^2-e(transI).*e(transJ)-f(transI).*f(transJ)).*transG+(e(transI).*f(transJ)-e(transJ).*f(transI)).*transB;
|
||||
dgT2=sparse(1:transNum,lineNum-transNum+1:lineNum,dglT,transNum,lineNum);
|
||||
dgT=[dgT1 dgT2]; %所有不等式对变比求导的模块
|
||||
dgP=sparse(1:pgNum,transNum+1:transNum+pgNum,ones(pgNum,1),pgNum,r); %所有不等式约束对PG求导的模块
|
||||
dgQ=sparse(1:pvNum,transNum+pgNum+1:transNum+pgvNum,ones(pvNum,1),pvNum,r); %所有不等式约束对QR求导的模块
|
||||
dgcapK=sparse(1:capNum,transNum+pgvNum+1:transNum+pgvNum+capNum,ones(capNum,1),capNum,r);%所有不等式约束对capK求导的模块
|
||||
dgve=2*diagE;
|
||||
dgvf=2*diagF;
|
||||
sizeG=size(G);
|
||||
GIJ=G(sub2ind(sizeG,lineI,lineJ));
|
||||
BIJ=B(sub2ind(sizeG,lineI,lineJ));
|
||||
dgleI=(2*e(lineI)-e(lineJ)).*GIJ+f(lineJ).*BIJ;
|
||||
dgleJ=-e(lineI).*GIJ-f(lineI).*BIJ;
|
||||
dglfI=(2*f(lineI)-f(lineJ)).*GIJ-e(lineJ).*BIJ;
|
||||
dglfJ=-f(lineI).*GIJ+e(lineI).*BIJ;
|
||||
dgle=sparse(lineI,(1:lineNum),dgleI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dgleJ,nodeNum,lineNum);
|
||||
dglf=sparse(lineI,(1:lineNum),dglfI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dglfJ,nodeNum,lineNum);
|
||||
dg0=sparse(m,transNum+pgvNum+capNum);
|
||||
dgvl=[dgve dgle;dgvf dglf];
|
||||
dgef=[dg0 dgvl]; %所有不等式约束对电压实部、虚部求偏导的模块
|
||||
dgx=[dgT;dgP;dgQ;dgcapK;dgef]; %不等式约束雅克比矩阵
|
||||
%% 形成对角阵
|
||||
Z=sparse(1:r,1:r,z,r,r);
|
||||
W=sparse(1:r,1:r,w,r,r);
|
||||
L1=sparse(1:r,1:r,1./l,r,r);
|
||||
U1=sparse(1:r,1:r,1./u,r,r);
|
||||
LZ=L1*Z;
|
||||
UW=U1*W;
|
||||
%% 形成海森伯矩阵
|
||||
%目标函数的海森伯矩阵▽2f(x)
|
||||
if(opfGoal==2)%目标为有功出力最小
|
||||
HSdfx=sparse(xNum,xNum);
|
||||
else if(opfGoal==1)
|
||||
HSdfx=sparse(transNum+1:transNum+pgNum,transNum+1:transNum+pgNum,2*a(pgNode),xNum,xNum);%仅目标函数对PG求偏导处的对角元为非零元素,其他都为0(目标为发电耗量最小)
|
||||
else if(opfGoal==3)
|
||||
d2ftei=-2*transG.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=-2*transG.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT0=sparse(transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=2*(G-sparse(1:nodeNum,1:nodeNum,sum(G,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
else if(opfGoal==4)
|
||||
d2ftei=2*transB.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=2*transB.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT0=sparse(transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=-2*(B-sparse(1:nodeNum,1:nodeNum,sum(B,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
%等式约束海森伯矩阵与拉格朗日乘子y的乘积▽2h(x)*y
|
||||
y1=y(1:nodeNum,1);
|
||||
y2=y(nodeNum+1:2*nodeNum,1);
|
||||
dhT2=2*ef3.*(transG.*y1(transI)-transB.*y2(transI)); %功率方程对变压器变比求二次偏导所得的列向量
|
||||
HSdhT=sparse(1:transNum,1:transNum,dhT2,transNum+pgvNum+capNum,transNum+pgvNum+capNum);
|
||||
eiG=e(transI).*transG;
|
||||
ejG=e(transJ).*transG;
|
||||
eiB=e(transI).*transB;
|
||||
ejB=e(transJ).*transB;
|
||||
fiG=f(transI).*transG;
|
||||
fjG=f(transJ).*transG;
|
||||
fiB=f(transI).*transB;
|
||||
fjB=f(transJ).*transB;
|
||||
ejG_fjB=ejG-fjB;
|
||||
ejGfjB=ejG+fjB;
|
||||
fjGejB=fjG+ejB;
|
||||
ejB_fjG=ejB-fjG;
|
||||
eiGfiB=eiG+fiB;
|
||||
eiG_fiB=eiG-fiB;
|
||||
eiB_fiG=eiB-fiG;
|
||||
fiGeiB=fiG+eiB;
|
||||
dP2_ei_t=(4*eiG.*T-ejG_fjB).*y1(transI)-ejGfjB.*y1(transJ);
|
||||
dP2_ej_t=-eiGfiB.*y1(transI)-eiG_fiB.*y1(transJ);
|
||||
dQ2_ei_t=(-4*eiB.*T+fjGejB).*y2(transI)+ejB_fjG.*y2(transJ);
|
||||
dQ2_ej_t=eiB_fiG.*y2(transI)+fiGeiB.*y2(transJ);
|
||||
HSdh_et=sparse(1:transNum,transI,dP2_ei_t+dQ2_ei_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_ej_t+dQ2_ej_t,transNum,nodeNum);%功率方程先对变比求偏导,再对电压实部求偏导模块
|
||||
dP2_fi_t=(4*fiG.*T-fjGejB).*y1(transI)+ejB_fjG.*y1(transJ);
|
||||
dP2_fj_t=eiB_fiG.*y1(transI)-fiGeiB.*y1(transJ);
|
||||
dQ2_fi_t=(-4*fiB.*T-ejG_fjB).*y2(transI)+ejGfjB.*y2(transJ);
|
||||
dQ2_fj_t=eiGfiB.*y2(transI)-eiG_fiB.*y2(transJ);
|
||||
HSdh_ft=sparse(1:transNum,transI,dP2_fi_t+dQ2_fi_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_fj_t+dQ2_fj_t,transNum,nodeNum);%功率方程先对变比求偏导,再对电压虚部求偏导模块
|
||||
|
||||
HSdh_eft=[HSdh_et HSdh_ft];
|
||||
HSdh_tef=HSdh_eft';
|
||||
HSdhPQ=sparse(pgvNum,2*nodeNum); %功率方程先对PG、QR求偏导,再对其他变量求偏导的部分
|
||||
d2hcap_e=sparse(1:capNum,capI,2*e(capI).*y2(capI),capNum,nodeNum); %功率方程先对capK求偏导,再对e,f求偏导的部分
|
||||
d2hcap_f=sparse(1:capNum,capI,2*f(capI).*y2(capI),capNum,nodeNum);
|
||||
HSdhcap_ef=[d2hcap_e d2hcap_f];
|
||||
d2htPQ_ef=[HSdh_eft;HSdhPQ;HSdhcap_ef];
|
||||
HSdhtPQ=[HSdhT d2htPQ_ef];
|
||||
HSdhx1=sparse(m,pgvNum);
|
||||
%潮流方程海森矩阵
|
||||
diagy1=sparse(1:nodeNum,1:nodeNum,y1,nodeNum,nodeNum);
|
||||
diagy2=sparse(1:nodeNum,1:nodeNum,y2,nodeNum,nodeNum);
|
||||
HSdhey=-diagy1*G+diagy2*B+(-G*diagy1+B*diagy2);
|
||||
HSdhefy=diagy1*B+diagy2*G-(B*diagy1+G*diagy2);
|
||||
HSdhx2=[HSdhey HSdhefy;HSdhefy' HSdhey];
|
||||
HSdhx=[HSdhtPQ;HSdh_tef HSdhx1 HSdhcap_ef' HSdhx2];
|
||||
%形成不等式约束二阶偏导的矩阵▽2g(x)*(z+w)
|
||||
ZWcl=z(transNum+pgvNum+capNum+nodeNum+1:end)+w(transNum+pgvNum+capNum+nodeNum+1:end);
|
||||
ZWv=z(transNum+pgvNum+capNum+1:transNum+pgvNum+capNum+nodeNum)+w(transNum+pgvNum+capNum+1:transNum+pgvNum+capNum+nodeNum);
|
||||
dgeiT=((2*e(transI)-e(transJ)).*transG+f(transJ).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgejT=(-e(transI).*transG-f(transI).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgeT=sparse(1:transNum,transI,dgeiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgejT,transNum,nodeNum);%不等式约束先对变比求偏导,再对e求偏导的模块
|
||||
dgfiT=((2*f(transI)-f(transJ)).*transG-e(transJ).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfjT=(-f(transI).*transG+e(transI).*transB).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfT=sparse(1:transNum,transI,dgfiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgfjT,transNum,nodeNum);%不等式约束先对变比求偏导,再对f求偏导的模块
|
||||
HSdgefT=[dgeT dgfT];
|
||||
HSdgT=[sparse(transNum,transNum+pgvNum+capNum) HSdgefT];
|
||||
HSdgee=sparse(lineI,lineI,2*GIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineI,lineJ,GIJ.*ZWcl,nodeNum,nodeNum)-...
|
||||
sparse(lineJ,lineI,GIJ.*ZWcl,nodeNum,nodeNum)+sparse(1:nodeNum,1:nodeNum,2*ZWv,nodeNum,nodeNum);
|
||||
HSdgff=HSdgee;
|
||||
HSdgef=sparse(lineI,lineJ,BIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineJ,lineI,BIJ.*ZWcl,nodeNum,nodeNum);
|
||||
HSdgfe=HSdgef';
|
||||
HSdgx1=[HSdgee HSdgef;HSdgfe HSdgff]; %所有不等式约束对e、f求二次偏导模块
|
||||
HSdgxtPQ_0=sparse(pgvNum+capNum,xNum);
|
||||
HSdgef_0=[HSdgefT' sparse(2*nodeNum,pgvNum+capNum)];
|
||||
HSdgx=[HSdgT;HSdgxtPQ_0;HSdgef_0 HSdgx1]; %合成不等式约束海森矩阵
|
||||
%求和形成H(.)矩阵.
|
||||
dgxT=dgx'; %求dgx的转置
|
||||
MULdgx=dgx*(UW-LZ)*dgxT;
|
||||
H=HSdhx+HSdgx-HSdfx+MULdgx; %求和形成H(.)矩阵.
|
||||
%% 根据以上所求的各个矩阵合成海森伯矩阵
|
||||
HSB0=sparse(m,m);
|
||||
HSB=[H dhx;dhx' HSB0];
|
||||
balN=transNum+pgvNum+capNum+nodeNum+balNode;
|
||||
HSB(balN,:)=0; %保持平衡节点电压虚部不变,始终为0,即将海森矩阵中平衡节点虚部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN)=0;
|
||||
HSB_balN=sub2ind(size(HSB),balN,balN);
|
||||
HSB(HSB_balN)=ones(balNum,1);
|
||||
balN1=transNum+pgvNum+capNum+balNode;
|
||||
HSB(balN1,:)=0; %保持平衡节点电压实部不变,始终为0,即将海森矩阵中平衡节点实部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN1)=0;
|
||||
HSB_balN1=sub2ind(size(HSB),balN1,balN1);
|
||||
HSB(HSB_balN1)=ones(balNum,1);
|
||||
HSB=sparse(HSB);
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
function [G,B,transY,transG,transB,transG1,transB1,transNum,lineNum,lineI,lineJ,lineB,transI,transJ,transK0,transKmin,transKmax]=...
|
||||
formY(nodeNum,lineNum,mtrLine,mtrGround,mtrTrans,capI,capBi,capK)
|
||||
%程序功能:形成节点导纳矩阵
|
||||
%编写时间:2010年10月
|
||||
|
||||
%变量定义:
|
||||
%G--电导矩阵,B--电纳矩阵,lineI,lineJ--节点序号,lineR--线路电阻
|
||||
%lineX--线路电抗,groundI--接地支路节点序号
|
||||
%groundR--接地支路电阻,groundX--接地支路电抗
|
||||
%transI,transJ--变压器支路节点序号
|
||||
%transR--变压器支路电阻,transX--变压器支路电抗
|
||||
%transK--变压器变比
|
||||
%transG--变压器支路等效电导,transB--变压器支路等效电纳
|
||||
|
||||
%% 利用线路和接地支路参数形成导纳矩阵
|
||||
lineI=mtrLine(:,2);
|
||||
lineJ=mtrLine(:,3);
|
||||
lineR=mtrLine(:,4);
|
||||
lineX=mtrLine(:,5);
|
||||
lineB=mtrLine(:,6);
|
||||
groundI=mtrGround(:,1);
|
||||
groundX=mtrGround(:,2);
|
||||
Yij=1./(lineR+j*lineX);
|
||||
Y1=-sparse(lineI,lineJ,Yij,nodeNum,nodeNum)-sparse(lineJ,lineI,Yij,nodeNum,nodeNum)...
|
||||
+sparse(lineI,lineI,Yij+j*lineB,nodeNum,nodeNum)+sparse(lineJ,lineJ,Yij+j*lineB,nodeNum,nodeNum)...
|
||||
+sparse(groundI,groundI,j*groundX,nodeNum,nodeNum)+sparse(capI,capI,j*capK,nodeNum,nodeNum);
|
||||
%% 加入变压器支路修改导纳矩阵
|
||||
transIall=mtrTrans(:,2);
|
||||
transJall=mtrTrans(:,3);
|
||||
transR=mtrTrans(:,4);
|
||||
transX=mtrTrans(:,5);
|
||||
transK0all=mtrTrans(:,6);
|
||||
transY=1./(transR+j*transX);
|
||||
Y1=Y1-sparse(transIall,transJall,transY./transK0all,nodeNum,nodeNum)-sparse(transJall,transIall,transY./transK0all,nodeNum,nodeNum)...
|
||||
+sparse(transIall,transIall,transY./transK0all./transK0all,nodeNum,nodeNum)+sparse(transJall,transJall,transY,nodeNum,nodeNum);
|
||||
Yt=sparse(transIall,transJall,-transY,nodeNum,nodeNum); %这样处理是因为有两台变压器两端的节点号相同,避免在更新节点导纳矩阵时只识别一台变压器
|
||||
transIJ=sub2ind(size(Yt),transIall,transJall);
|
||||
transYt=Yt(transIJ);
|
||||
transCtrl=mtrTrans(:,9);
|
||||
ctrTransNum=find(transCtrl);
|
||||
transI=transIall(ctrTransNum);
|
||||
transJ=transJall(ctrTransNum);
|
||||
transKmax=1/0.9*ones(size(transI));
|
||||
transKmin=1/1.1*ones(size(transI));
|
||||
transK0=transK0all(ctrTransNum);
|
||||
transG=real(transYt(ctrTransNum));
|
||||
transB=imag(transYt(ctrTransNum));
|
||||
transG1=-real(transY(ctrTransNum)); %之所以要取负号是因为transG、transB是作为导纳矩阵中的互导纳来用,在计算自导纳的时候注意要用-transG、-transB!!!!
|
||||
transB1=-imag(transY(ctrTransNum));
|
||||
transNum=length(transI);
|
||||
lineI=[lineI;transI]; %将线路和变压器支路的编号合并,在后面线路约束的时候同时处理
|
||||
lineJ=[lineJ;transJ];
|
||||
lineNum=lineNum-length(transIall)+length(transI);
|
||||
%% 求节点导纳的幅值和相角
|
||||
[Yrows,Ycols,Y1] = find(Y1);
|
||||
G=real(Y1);
|
||||
B=imag(Y1);
|
||||
G=sparse(Yrows,Ycols,G,nodeNum,nodeNum);
|
||||
B=sparse(Yrows,Ycols,B,nodeNum,nodeNum);
|
||||
|
|
@ -0,0 +1,82 @@
|
|||
function [G,B,lineI,lineJ,lineB,transI,transJ,transK0,transNum,transKmin,transKmax,capI,capGi,capBi,capK,capKmin,capKmax,capNum,transG,transB,...
|
||||
transG1,transB1,lineNum]=formY_RPP(nodeNum,lineNum,mtrLine,mtrGround,mtrTrans,mtrCapacitor)
|
||||
%程序功能:形成节点导纳矩阵
|
||||
%编写时间:2010年10月
|
||||
|
||||
%变量定义:
|
||||
%G--电导矩阵,B--电纳矩阵,lineI,lineJ--节点序号,lineR--线路电阻
|
||||
%lineX--线路电抗,groundI--接地支路节点序号
|
||||
%groundR--接地支路电阻,groundX--接地支路电抗
|
||||
%transI,transJ--变压器支路节点序号
|
||||
%transR--变压器支路电阻,transX--变压器支路电抗
|
||||
%transK--变压器变比
|
||||
%transG--变压器支路等效电导,transB--变压器支路等效电纳
|
||||
|
||||
%% 利用线路和接地支路参数形成导纳矩阵
|
||||
lineI=mtrLine(:,2);
|
||||
lineJ=mtrLine(:,3);
|
||||
lineR=mtrLine(:,4);
|
||||
lineX=mtrLine(:,5);
|
||||
lineB=mtrLine(:,6);
|
||||
%接地支路数据
|
||||
groundI=mtrGround(:,2);
|
||||
groundG=mtrGround(:,3);
|
||||
groundB=mtrGround(:,4);
|
||||
%电容器参数
|
||||
capCtrl=mtrCapacitor(:,2);
|
||||
capCtrl=ones(length(capCtrl),1);
|
||||
capIall=mtrCapacitor(:,3);
|
||||
capGiall=mtrCapacitor(:,4);
|
||||
capBiall=mtrCapacitor(:,5);
|
||||
capKall=mtrCapacitor(:,6);
|
||||
capKminall=mtrCapacitor(:,7);
|
||||
capKmaxall=mtrCapacitor(:,8);
|
||||
|
||||
Yij=1./(lineR+j*lineX);
|
||||
Y1=-sparse(lineI,lineJ,Yij,nodeNum,nodeNum)-sparse(lineJ,lineI,Yij,nodeNum,nodeNum)...
|
||||
+sparse(lineI,lineI,Yij+j*lineB,nodeNum,nodeNum)+sparse(lineJ,lineJ,Yij+j*lineB,nodeNum,nodeNum)...
|
||||
+sparse(groundI,groundI,groundG+j*groundB,nodeNum,nodeNum)...
|
||||
+sparse(capIall,capIall,j*capKall,nodeNum,nodeNum);
|
||||
%保留可调电容电抗器参数
|
||||
capCtrlNode=find(capCtrl);
|
||||
capI=capIall(capCtrlNode);
|
||||
capGi=capGiall(capCtrlNode);
|
||||
capBi=capBiall(capCtrlNode);
|
||||
capK=capKall(capCtrlNode);
|
||||
capKmin=capKminall(capCtrlNode);
|
||||
capKmax=capKmaxall(capCtrlNode);
|
||||
capNum=length(capI);
|
||||
%% 加入变压器支路修改导纳矩阵
|
||||
transCtrl=mtrTrans(:,2);
|
||||
transIall=mtrTrans(:,3);
|
||||
transJall=mtrTrans(:,4);
|
||||
transR=mtrTrans(:,5);
|
||||
transX=mtrTrans(:,6);
|
||||
transK0all=mtrTrans(:,7);
|
||||
transY=1./(transR+j*transX);
|
||||
Y1=Y1-sparse(transIall,transJall,transY./transK0all,nodeNum,nodeNum)-sparse(transJall,transIall,transY./transK0all,nodeNum,nodeNum)...
|
||||
+sparse(transIall,transIall,transY./transK0all./transK0all,nodeNum,nodeNum)+sparse(transJall,transJall,transY,nodeNum,nodeNum);
|
||||
Yt=sparse(transIall,transJall,-transY,nodeNum,nodeNum); %这样处理是因为有两台变压器两端的节点号相同,避免在更新节点导纳矩阵时只识别一台变压器
|
||||
transIJ=sub2ind(size(Yt),transIall,transJall);
|
||||
%保留可调变压器参数
|
||||
transYt=Yt(transIJ);
|
||||
ctrTransNum=find(transCtrl);
|
||||
transI=transIall(ctrTransNum);
|
||||
transJ=transJall(ctrTransNum);
|
||||
transKmax=1/0.9*ones(size(transI));
|
||||
transKmin=1/1.1*ones(size(transI));
|
||||
transK0=transK0all(ctrTransNum);
|
||||
transG=real(transYt(ctrTransNum));
|
||||
transB=imag(transYt(ctrTransNum));
|
||||
transG1=-real(transY(ctrTransNum)); %之所以要取负号是因为transG、transB是作为导纳矩阵中的互导纳来用,在计算自导纳的时候注意要用-transG、-transB!!!!
|
||||
transB1=-imag(transY(ctrTransNum));
|
||||
transNum=length(transI);
|
||||
lineI=[lineI;transI]; %将线路和变压器支路的编号合并,在后面线路约束的时候同时处理
|
||||
lineJ=[lineJ;transJ];
|
||||
lineNum=lineNum+transNum;
|
||||
%% 求节点导纳的幅值和相角
|
||||
[Yrows,Ycols,Y1] = find(Y1);
|
||||
G=real(Y1);
|
||||
B=imag(Y1);
|
||||
G=sparse(Yrows,Ycols,G,nodeNum,nodeNum);
|
||||
B=sparse(Yrows,Ycols,B,nodeNum,nodeNum);
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
function [H1,N1,diagE,diagF,hx,Gap,max_hx,fx,Pg,Qg,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,PGR]=midResult(nodeNum,pgNode,opfGoal,z,l,u,w,...
|
||||
Pg,Qg,e,f,G,B,a,b,c,PG,Pd,Qd,k,xz1,dmaxOut1,xz2,dmaxOut2,xz3,dmaxOut3,xz4,dmaxOut4,times,accuracy,mismatch)
|
||||
%程序功能:计算每次迭代后的目标函数值和等式约束的最大不平衡量,并根据每步迭代结果修正光滑参数
|
||||
%编写时间:2010年10月
|
||||
|
||||
Gap=l'*z-u'*w; %计算互补间隙
|
||||
PGR=PG;
|
||||
if(opfGoal==2)
|
||||
sumP=sum(Pg);
|
||||
sumPd=sum(Pd);
|
||||
fx=sumP-sumPd;
|
||||
else if(opfGoal==1)
|
||||
fx=sum(a(pgNode).*PGR(pgNode).*PGR(pgNode)+b(pgNode).*PGR(pgNode)+c(pgNode));
|
||||
else if(opfGoal==3)
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
fx=-0.5*sum(sum(G.*((EE-EE').^2+(FF-FF').^2),2));
|
||||
else if(opfGoal==4)
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
fx=0.5*sum(sum(B.*((EE-EE').^2+(FF-FF').^2),2));
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
H1=G*e-B*f;
|
||||
N1=G*f+B*e;
|
||||
diagE=sparse(1:nodeNum,1:nodeNum,e,nodeNum,nodeNum);
|
||||
diagF=sparse(1:nodeNum,1:nodeNum,f,nodeNum,nodeNum);
|
||||
P=Pg-Pd;
|
||||
Q=Qg-Qd;
|
||||
dP=P-diagE*H1-diagF*N1;
|
||||
dQ=Q-diagF*H1+diagE*N1;
|
||||
hx=[dP;dQ];
|
||||
fx=full(fx);
|
||||
max_hx=full(max(abs(hx)));
|
||||
fprintf('%4.0f %4.4e %4.4e %7.6f\n',k,Gap,max_hx,fx); %输出每次迭代结果
|
||||
firstOK=0;
|
||||
if Gap<accuracy&&max_hx<mismatch&& times==1 %判断互补间隙和最大不平衡量是否达到精度
|
||||
firstOK=1;
|
||||
end
|
||||
|
||||
%% 保留每次迭代的互补间隙和最大不平衡量
|
||||
if times==1
|
||||
xz1=[xz1 k];
|
||||
dmaxOut1=[dmaxOut1 Gap];
|
||||
xz3=[xz3 k];
|
||||
dmaxOut3=[dmaxOut3 max_hx];
|
||||
end
|
||||
if times==2
|
||||
if firstOK==1
|
||||
xz1=[xz1 k];
|
||||
dmaxOut1=[dmaxOut1 Gap];
|
||||
xz3=[xz3 k];
|
||||
dmaxOut3=[dmaxOut3 max_hx];
|
||||
else
|
||||
xz2=[xz2 k];
|
||||
dmaxOut2=[dmaxOut2 Gap];
|
||||
xz4=[xz4 k];
|
||||
dmaxOut4=[dmaxOut4 max_hx];
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
function [nodeNum,lineNum,capacity,kmax,centrPara,accuracy,opfGoal,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,...
|
||||
pvQmin,pvQmax,pgNumall,pgNodeall,pgNum,pgNode,a,b,c,Pmin,Pmax,capNum,capI,capGi,capBi,capK,capKmin,capKmax,Vmax,Vmin]=readData(filename)
|
||||
%程序功能:读取数据
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 将数据整块读入
|
||||
data=dlmread(filename);
|
||||
%% 读取系统参数
|
||||
nodeNum=data(1,1); %系统节点数
|
||||
lineNum=data(1,2); %线路变压器数
|
||||
capacity=data(1,3); %基准容量
|
||||
kmax=data(1,4); %最大迭代次数
|
||||
centrPara=data(1,5); %中心参数
|
||||
accuracy=data(2,1); %计算精度
|
||||
opfGoal=data(2,2); %目标函数类型
|
||||
balNum=data(3,1); %平衡节点数
|
||||
balNode=data(3,2); %平衡节点编号
|
||||
%% 获取首列元素为0的行号
|
||||
zeroIndex=find(data(:,1)==0);
|
||||
%% 读取线路参数
|
||||
mtrLine=data(zeroIndex(1)+1:zeroIndex(2)-1,:);
|
||||
%% 读取接地支路参数
|
||||
mtrGround=data(zeroIndex(2)+1:zeroIndex(3)-1,:);
|
||||
%% 读取变压器支路参数
|
||||
mtrTrans=data(zeroIndex(3)+1:zeroIndex(4)-1,:);
|
||||
%% 读取运行参数
|
||||
runPara=data(zeroIndex(4)+1:zeroIndex(5)-1,:);
|
||||
pqNode=runPara(:,1);
|
||||
Pg=sparse(nodeNum,1);
|
||||
Qg=Pg;Pd=Pg;Qd=Pg;
|
||||
Pg(pqNode)=runPara(:,2)/capacity; %节点有功出力
|
||||
Qg(pqNode)=runPara(:,3)/capacity; %节点无功出力
|
||||
Pd(pqNode)=runPara(:,4)/capacity; %节点有功负荷
|
||||
Qd(pqNode)=runPara(:,5)/capacity; %节点无功负荷
|
||||
%% 读取PV节点和平衡节点参数
|
||||
mtrPV=data(zeroIndex(5)+1:zeroIndex(6)-1,:);
|
||||
pvNum=zeroIndex(6)-zeroIndex(5)-1;
|
||||
pvNode=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,1),nodeNum,1);
|
||||
pvNode=find(pvNode); %PV节点和平衡节点编号
|
||||
pvV=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,2),nodeNum,1); %PV节点和平衡节点给定电压
|
||||
pvQmin=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,3),nodeNum,1)/capacity; %无功出力下限
|
||||
pvQmax=sparse(mtrPV(:,1),ones(pvNum,1),mtrPV(:,4),nodeNum,1)/capacity; %无功出力上限
|
||||
%% 读取经济参数
|
||||
economyPara=data(zeroIndex(6)+1:zeroIndex(7)-1,:);
|
||||
[ecoRow,ecoCol]=size(economyPara);
|
||||
if ecoCol>=7
|
||||
pgctrl=find(economyPara(:,7)); %可调发电机的下标
|
||||
if isempty(pgctrl)
|
||||
pgctrl=1:ecoRow;
|
||||
end
|
||||
else
|
||||
pgctrl=1:ecoRow;
|
||||
end
|
||||
pgNumall=zeroIndex(7)-zeroIndex(6)-1; %发电机台数
|
||||
pgNodeall=economyPara(:,1); %发电机节点号
|
||||
pgNum=length(pgctrl); %可调发电机台数
|
||||
pgNode=pgNodeall(pgctrl); %可调发电机节点号
|
||||
c=sparse(economyPara(:,1),ones(pgNumall,1),economyPara(:,2),nodeNum,1);
|
||||
b=sparse(economyPara(:,1),ones(pgNumall,1),economyPara(:,3),nodeNum,1);
|
||||
a=sparse(economyPara(:,1),ones(pgNumall,1),economyPara(:,4),nodeNum,1);
|
||||
Pmin=sparse(economyPara(:,1),ones(pgNumall,1),economyPara(:,5),nodeNum,1)/capacity;%发电机有功出力下限
|
||||
Pmax=sparse(economyPara(:,1),ones(pgNumall,1),economyPara(:,6),nodeNum,1)/capacity;%发电机有功出力上限
|
||||
%% 读可调电容器组参数
|
||||
capPara=data(zeroIndex(7)+1:zeroIndex(8)-1,:);
|
||||
capNum=zeroIndex(8)-zeroIndex(7)-1;
|
||||
capI=capPara(:,2); %电容器投入节点编号
|
||||
capGi=capPara(:,3); %可调电容器单位电导
|
||||
capBi=capPara(:,4); %可调电容器单位电纳
|
||||
capK=capPara(:,5); %初始档位值
|
||||
capKmin=capPara(:,6); %电容器最小档位
|
||||
capKmax=capPara(:,7); %电容器最大档位
|
||||
Vmax=1.07*ones(nodeNum,1); %节点电压下限
|
||||
Vmin=0.9*ones(nodeNum,1); %节点电压上限
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
function [nodeNum,lineNum,capacity,kmax,accuracy,balNum,balNode,mtrLine,mtrGround,mtrTrans,runPara,Pg,Qg,Pd,Qd,pvNum,pvNode,pvV,pvQmin,pvQmax,...
|
||||
mtrCapacitor,pgNum,pgNode,a,b,c,Pmin,Pmax,Vmin,Vmax,centrPara]=readData_RPP(data)
|
||||
%程序功能:读取数据
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 获取首列元素为0的行号
|
||||
zeroIndex=find(data(:,1)==0);
|
||||
%% 读取系统参数
|
||||
nodeNum=data(1,1); %系统节点数
|
||||
capacity=data(1,3); %基准容量
|
||||
accuracy=data(1,4); %计算精度
|
||||
balNum=zeroIndex(2)-zeroIndex(1)-1; %平衡节点数
|
||||
balNode=data(zeroIndex(1)+1:zeroIndex(2)-1,2); %平衡节点编号
|
||||
kmax=100; %最大迭代次数
|
||||
centrPara=0.1; %中心参数
|
||||
%% 读取线路参数
|
||||
mtrLine=data(zeroIndex(2)+1:zeroIndex(3)-1,:);
|
||||
lineNum=length(mtrLine);
|
||||
%% 读取变压器支路参数
|
||||
mtrTrans=data(zeroIndex(3)+1:zeroIndex(4)-1,:);
|
||||
%% 读取接地支路参数
|
||||
mtrGround=data(zeroIndex(5)+1:zeroIndex(6)-1,:);
|
||||
%% 读可调电容器参数
|
||||
mtrCapacitor=data(zeroIndex(6)+1:zeroIndex(7)-1,:);
|
||||
%% 读取运行参数
|
||||
runPara=data(zeroIndex(8)+1:zeroIndex(9)-1,:);
|
||||
pqNode=runPara(:,2);
|
||||
Pg=sparse(nodeNum,1);
|
||||
Qg=Pg;Pd=Pg;Qd=Pg;
|
||||
Pg(pqNode)=runPara(:,3); %节点有功出力
|
||||
Qg(pqNode)=runPara(:,4); %节点无功出力
|
||||
Pd(pqNode)=runPara(:,5); %节点有功负荷
|
||||
Qd(pqNode)=runPara(:,6); %节点无功负荷
|
||||
%% 有功出力限制
|
||||
mtrPGLimit=data(zeroIndex(9)+1:zeroIndex(10)-1,:);
|
||||
pgNum=zeroIndex(10)-zeroIndex(9)-1; %发电机台数
|
||||
pgNode=mtrPGLimit(:,3); %发电机节点号
|
||||
c=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,8),nodeNum,1);
|
||||
b=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,9),nodeNum,1);
|
||||
a=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,10),nodeNum,1);
|
||||
Pmin=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,4),nodeNum,1); %发电机有功出力下限
|
||||
Pmax=sparse(mtrPGLimit(:,3),ones(pgNum,1),mtrPGLimit(:,5),nodeNum,1); %发电机有功出力上限
|
||||
%% 无功出力限制
|
||||
mtrQGLimit=data(zeroIndex(11)+1:zeroIndex(12)-1,:);
|
||||
pvNum=zeroIndex(12)-zeroIndex(11)-1;
|
||||
pvNode=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,3),nodeNum,1);
|
||||
pvNode=find(pvNode); %PV节点和平衡节点编号
|
||||
pvV=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,4),nodeNum,1); %PV节点和平衡节点给定电压
|
||||
pvQmin=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,5),nodeNum,1); %无功出力下限
|
||||
pvQmax=sparse(mtrQGLimit(:,3),ones(pvNum,1),mtrQGLimit(:,6),nodeNum,1); %无功出力上限
|
||||
%% 电压限制
|
||||
mtrVLimit=data(zeroIndex(13)+1:zeroIndex(14)-1,:);
|
||||
VLimitNum=zeroIndex(14)-zeroIndex(13)-1; %电压限制的节点数
|
||||
Vmin=sparse(mtrVLimit(:,2),ones(VLimitNum,1),mtrVLimit(:,3),nodeNum,1);
|
||||
Vmax=sparse(mtrVLimit(:,2),ones(VLimitNum,1),mtrVLimit(:,4),nodeNum,1);
|
||||
Vmin=0.9*ones(nodeNum,1); %非电压监测点电压限制
|
||||
Vmax=1.15*ones(nodeNum,1);
|
||||
node_Z=data(zeroIndex(14)+1:zeroIndex(15)-1,1); %变压器中性点,这些点的电压不考核,设置为0.8-1.2
|
||||
Vmin(node_Z)=0.85;
|
||||
Vmax(node_Z)=1.15;
|
||||
node_220=data(zeroIndex(15)+1:zeroIndex(16)-1,1); %220kV及以上节点
|
||||
Vmin(node_220)=0.95;
|
||||
Vmax(node_220)=1.1;
|
||||
node_750=data(zeroIndex(16)+1:zeroIndex(17)-1,1); %750kV节点
|
||||
Vmin(node_750)=1;
|
||||
Vmax(node_750)=1.1;
|
||||
node_Monitor=data(zeroIndex(17)+1:zeroIndex(18)-1,1); %发电厂升压变以及800kV变电站220、363kV母线节点,电压监测点
|
||||
Vmin(node_Monitor)=1;
|
||||
Vmax(node_Monitor)=1.1;
|
||||
|
|
@ -0,0 +1,212 @@
|
|||
31 7.9793e-006 0.780222 0.778376 0.2320 2.3864e-006 1
|
||||
0
|
||||
8 5 0.9500 0.9739 1.0000 0.9500
|
||||
25 26 1.0000 1.0133 1.0500 1.0000
|
||||
17 30 1.0000 1.0052 1.0500 1.0000
|
||||
37 38 1.0000 1.0102 1.0500 1.0000
|
||||
59 63 1.0000 1.0046 1.0500 1.0000
|
||||
61 64 1.0000 1.0085 1.0500 1.0000
|
||||
65 66 1.0000 0.9816 1.0000 0.9500
|
||||
68 69 1.0000 1.0263 1.0500 1.0000
|
||||
80 81 1.0000 1.0017 1.0500 1.0000
|
||||
0
|
||||
1 1.0216 -0.1935 1.0397 1.0428
|
||||
2 1.0326 -0.1797 1.0481 1.0521
|
||||
3 1.0308 -0.1821 1.0467 1.0493
|
||||
4 1.0561 -0.1349 1.0647 1.0694
|
||||
5 1.0621 -0.1302 1.0700 1.0700
|
||||
6 1.0477 -0.1610 1.0600 1.0647
|
||||
7 1.0470 -0.1636 1.0597 1.0644
|
||||
8 1.0445 -0.0651 1.0466 1.0534
|
||||
9 1.0693 0.0387 1.0700 1.0700
|
||||
10 1.0542 0.1501 1.0648 1.0578
|
||||
11 1.0434 -0.1626 1.0560 1.0599
|
||||
12 1.0486 -0.1621 1.0610 1.0657
|
||||
13 1.0249 -0.1895 1.0423 1.0468
|
||||
14 1.0408 -0.1841 1.0570 1.0621
|
||||
15 1.0268 -0.2184 1.0498 1.0560
|
||||
16 1.0386 -0.1802 1.0541 1.0593
|
||||
17 1.0451 -0.1834 1.0611 1.0672
|
||||
18 1.0287 -0.2187 1.0517 1.0577
|
||||
19 1.0231 -0.2261 1.0478 1.0540
|
||||
20 1.0133 -0.2210 1.0371 1.0422
|
||||
21 1.0126 -0.2037 1.0329 1.0371
|
||||
22 1.0220 -0.1737 1.0367 1.0399
|
||||
23 1.0455 -0.1109 1.0513 1.0528
|
||||
24 1.0365 -0.1213 1.0436 1.0448
|
||||
25 1.0700 0.0068 1.0700 1.0700
|
||||
26 1.0676 0.0720 1.0700 1.0700
|
||||
27 1.0297 -0.1921 1.0475 1.0500
|
||||
28 1.0184 -0.2123 1.0403 1.0433
|
||||
29 1.0160 -0.2219 1.0399 1.0435
|
||||
30 1.0627 -0.1032 1.0677 1.0697
|
||||
31 1.0196 -0.2188 1.0428 1.0466
|
||||
32 1.0262 -0.1976 1.0451 1.0481
|
||||
33 1.0204 -0.2266 1.0453 1.0531
|
||||
34 1.0321 -0.2187 1.0551 1.0644
|
||||
35 1.0278 -0.2255 1.0522 1.0616
|
||||
36 1.0283 -0.2258 1.0528 1.0622
|
||||
37 1.0355 -0.2111 1.0568 1.0662
|
||||
38 1.0615 -0.1347 1.0700 1.0700
|
||||
39 1.0057 -0.2531 1.0370 1.0462
|
||||
40 1.0017 -0.2657 1.0363 1.0452
|
||||
41 0.9957 -0.2677 1.0311 1.0398
|
||||
42 1.0147 -0.2357 1.0417 1.0496
|
||||
43 1.0201 -0.2059 1.0407 1.0495
|
||||
44 1.0244 -0.1492 1.0352 1.0429
|
||||
45 1.0255 -0.1126 1.0317 1.0384
|
||||
46 1.0432 -0.0678 1.0454 1.0510
|
||||
47 1.0486 -0.0379 1.0493 1.0543
|
||||
48 1.0571 -0.0304 1.0575 1.0624
|
||||
49 1.0631 -0.0104 1.0632 1.0689
|
||||
50 1.0576 -0.0231 1.0579 1.0637
|
||||
51 1.0475 -0.0366 1.0481 1.0540
|
||||
52 1.0440 -0.0431 1.0449 1.0507
|
||||
53 1.0473 -0.0345 1.0479 1.0537
|
||||
54 1.0645 -0.0036 1.0645 1.0700
|
||||
55 1.0597 -0.0194 1.0599 1.0656
|
||||
56 1.0610 -0.0153 1.0611 1.0667
|
||||
57 1.0573 -0.0249 1.0575 1.0633
|
||||
58 1.0512 -0.0320 1.0516 1.0574
|
||||
59 1.0632 0.0010 1.0632 1.0700
|
||||
60 1.0596 -0.0064 1.0596 1.0679
|
||||
61 1.0616 0.0047 1.0616 1.0700
|
||||
62 1.0577 -0.0139 1.0578 1.0660
|
||||
63 1.0685 0.0066 1.0686 1.0693
|
||||
64 1.0693 0.0095 1.0693 1.0694
|
||||
65 1.0698 0.0193 1.0700 1.0700
|
||||
66 1.0625 0.0107 1.0625 1.0700
|
||||
67 1.0549 -0.0146 1.0550 1.0629
|
||||
68 1.0633 -0.0037 1.0633 1.0688
|
||||
69 1.0100 -0.0000 1.0100 1.0100
|
||||
70 0.9987 -0.1218 1.0061 1.0065
|
||||
71 1.0011 -0.1258 1.0089 1.0094
|
||||
72 1.0138 -0.1342 1.0227 1.0235
|
||||
73 0.9996 -0.1282 1.0077 1.0082
|
||||
74 0.9851 -0.1432 0.9955 0.9958
|
||||
75 0.9857 -0.1200 0.9930 0.9932
|
||||
76 0.9718 -0.1357 0.9813 0.9816
|
||||
77 1.0311 -0.0500 1.0323 1.0327
|
||||
78 1.0274 -0.0529 1.0288 1.0292
|
||||
79 1.0313 -0.0441 1.0323 1.0327
|
||||
80 1.0558 0.0061 1.0558 1.0563
|
||||
81 1.0665 -0.0004 1.0665 1.0696
|
||||
82 1.0349 -0.0706 1.0373 1.0380
|
||||
83 1.0381 -0.0727 1.0407 1.0412
|
||||
84 1.0418 -0.0659 1.0439 1.0442
|
||||
85 1.0501 -0.0577 1.0517 1.0518
|
||||
86 1.0400 -0.0762 1.0428 1.0430
|
||||
87 1.0487 -0.0698 1.0510 1.0512
|
||||
88 1.0545 -0.0333 1.0551 1.0551
|
||||
89 1.0699 0.0148 1.0700 1.0700
|
||||
90 1.0476 -0.0753 1.0503 1.0503
|
||||
91 1.0517 -0.0607 1.0535 1.0535
|
||||
92 1.0588 -0.0252 1.0591 1.0592
|
||||
93 1.0475 -0.0349 1.0481 1.0483
|
||||
94 1.0439 -0.0362 1.0445 1.0448
|
||||
95 1.0302 -0.0497 1.0314 1.0317
|
||||
96 1.0361 -0.0503 1.0374 1.0378
|
||||
97 1.0415 -0.0288 1.0419 1.0423
|
||||
98 1.0532 -0.0168 1.0533 1.0537
|
||||
99 1.0602 -0.0204 1.0604 1.0606
|
||||
100 1.0690 0.0013 1.0690 1.0691
|
||||
101 1.0527 -0.0242 1.0530 1.0531
|
||||
102 1.0562 -0.0266 1.0565 1.0566
|
||||
103 1.0700 -0.0016 1.0700 1.0700
|
||||
104 1.0536 -0.0636 1.0555 1.0556
|
||||
105 1.0499 -0.0766 1.0527 1.0527
|
||||
106 1.0405 -0.0869 1.0442 1.0442
|
||||
107 1.0315 -0.1257 1.0391 1.0392
|
||||
108 1.0539 -0.0783 1.0568 1.0569
|
||||
109 1.0533 -0.0774 1.0561 1.0561
|
||||
110 1.0550 -0.0696 1.0573 1.0574
|
||||
111 1.0699 -0.0129 1.0700 1.0700
|
||||
112 1.0362 -0.1103 1.0421 1.0421
|
||||
113 1.0423 -0.1868 1.0589 1.0643
|
||||
114 1.0216 -0.2030 1.0416 1.0444
|
||||
115 1.0213 -0.2033 1.0414 1.0442
|
||||
116 1.0633 -0.0108 1.0634 1.0683
|
||||
117 1.0301 -0.1840 1.0464 1.0511
|
||||
118 0.9720 -0.1339 0.9812 0.9815
|
||||
0
|
||||
10 3.6967
|
||||
12 2.0000
|
||||
25 1.0556
|
||||
26 4.0000
|
||||
49 3.7575
|
||||
54 2.9977
|
||||
59 2.9002
|
||||
61 1.2241
|
||||
65 3.8134
|
||||
66 1.0000
|
||||
69 2.4623
|
||||
80 5.2137
|
||||
89 3.8041
|
||||
100 2.6935
|
||||
103 1.4836
|
||||
111 0.7977
|
||||
0
|
||||
1 0.1500
|
||||
4 -0.4047
|
||||
6 0.1529
|
||||
8 -0.3565
|
||||
10 -0.9697
|
||||
12 0.4891
|
||||
15 0.2985
|
||||
18 0.3794
|
||||
19 0.2394
|
||||
24 -0.0256
|
||||
25 -0.0467
|
||||
26 -0.4585
|
||||
27 0.3078
|
||||
31 0.2880
|
||||
32 0.2330
|
||||
34 0.0259
|
||||
36 0.2395
|
||||
40 0.3458
|
||||
42 0.4118
|
||||
46 -0.0159
|
||||
49 0.3478
|
||||
54 0.2865
|
||||
55 0.1839
|
||||
56 0.1395
|
||||
59 0.8004
|
||||
61 -0.3633
|
||||
62 0.1107
|
||||
65 -0.6700
|
||||
66 -0.1902
|
||||
69 -2.6190
|
||||
70 0.2231
|
||||
72 -0.0494
|
||||
73 -0.0211
|
||||
74 0.0486
|
||||
76 0.2300
|
||||
77 0.7000
|
||||
80 0.2740
|
||||
85 0.1728
|
||||
87 0.0116
|
||||
89 0.0870
|
||||
90 0.4446
|
||||
91 0.0008
|
||||
92 0.0900
|
||||
99 -0.0335
|
||||
100 0.4333
|
||||
103 0.0524
|
||||
104 0.2293
|
||||
105 -0.0031
|
||||
107 -0.2868
|
||||
110 0.2255
|
||||
111 -0.0421
|
||||
112 0.1253
|
||||
113 -0.0204
|
||||
116 0.0947
|
||||
0
|
||||
17 0.00 0.0054 0.00 0.10
|
||||
34 0.30 0.2728 0.20 0.30
|
||||
44 0.10 0.1038 0.10 0.20
|
||||
107 0.40 0.4555 0.40 0.50
|
||||
82 0.30 0.3105 0.30 0.40
|
||||
48 0.10 0.0803 0.00 0.10
|
||||
74 0.40 0.4323 0.40 0.50
|
||||
105 0.20 0.1753 0.10 0.20
|
||||
0
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
28 4.6553e-006 0.024984 0.024929 21.0945 7.2053e-006 1
|
||||
0
|
||||
6 9 1.1000 1.1000 1.1000 1.0500
|
||||
6 10 0.9000 0.9000 0.9500 0.9000
|
||||
4 12 0.9500 0.9554 1.0000 0.9500
|
||||
28 27 0.9500 0.9565 1.0000 0.9500
|
||||
0
|
||||
1 1.0600 -0.0000 1.0600 1.0600
|
||||
2 1.0568 -0.0124 1.0569 1.0575
|
||||
3 1.0508 -0.0252 1.0511 1.0523
|
||||
4 1.0480 -0.0298 1.0484 1.0500
|
||||
5 1.0374 -0.0754 1.0401 1.0413
|
||||
6 1.0494 -0.0383 1.0501 1.0513
|
||||
7 1.0366 -0.0622 1.0385 1.0397
|
||||
8 1.0491 -0.0376 1.0497 1.0513
|
||||
9 1.0366 -0.0125 1.0366 1.0329
|
||||
10 1.0661 -0.0547 1.0675 1.0695
|
||||
11 1.0634 0.0895 1.0672 1.0477
|
||||
12 1.0696 -0.0278 1.0700 1.0700
|
||||
13 1.0679 0.0377 1.0686 1.0700
|
||||
14 1.0570 -0.0459 1.0580 1.0582
|
||||
15 1.0538 -0.0507 1.0550 1.0555
|
||||
16 1.0600 -0.0441 1.0609 1.0618
|
||||
17 1.0592 -0.0549 1.0607 1.0623
|
||||
18 1.0455 -0.0637 1.0475 1.0484
|
||||
19 1.0438 -0.0682 1.0461 1.0474
|
||||
20 1.0486 -0.0659 1.0506 1.0521
|
||||
21 1.0557 -0.0639 1.0576 1.0595
|
||||
22 1.0569 -0.0644 1.0589 1.0607
|
||||
23 1.0498 -0.0658 1.0519 1.0526
|
||||
24 1.0531 -0.0802 1.0561 1.0573
|
||||
25 1.0550 -0.0923 1.0590 1.0576
|
||||
26 1.0375 -0.0979 1.0421 1.0406
|
||||
27 1.0651 -0.0960 1.0694 1.0664
|
||||
28 1.0446 -0.0435 1.0455 1.0472
|
||||
29 1.0442 -0.1148 1.0505 1.0474
|
||||
30 1.0317 -0.1281 1.0396 1.0364
|
||||
0
|
||||
1 0.3890
|
||||
2 0.6000
|
||||
5 0.5100
|
||||
8 0.3500
|
||||
11 0.5100
|
||||
13 0.5000
|
||||
0
|
||||
1 -0.0540
|
||||
2 0.0763
|
||||
5 0.2121
|
||||
8 0.2700
|
||||
11 0.1811
|
||||
13 0.0046
|
||||
0
|
||||
10 0.30 0.3583 0.30 0.40
|
||||
24 0.10 0.1051 0.10 0.20
|
||||
0
|
||||
|
|
@ -0,0 +1,489 @@
|
|||
41 1.7917e-006 3.366536 3.336695 0.6797 1.8010e-006 1
|
||||
0
|
||||
297 269 1.0000 0.9730 1.0000 0.9500
|
||||
269 226 1.0000 0.9922 1.0000 0.9500
|
||||
269 227 0.9500 0.9753 1.0000 0.9500
|
||||
291 62 1.0000 0.9965 1.0000 0.9500
|
||||
291 63 0.9000 0.9228 0.9500 0.9000
|
||||
291 145 1.0000 1.0002 1.0500 1.0000
|
||||
291 64 1.0500 1.0506 1.1000 1.0500
|
||||
291 65 1.0000 1.0421 1.0500 1.0000
|
||||
228 47 1.0000 0.9695 1.0000 0.9500
|
||||
225 48 1.0000 0.9741 1.0000 0.9500
|
||||
229 49 1.0000 0.9687 1.0000 0.9500
|
||||
229 50 1.0000 0.9694 1.0000 0.9500
|
||||
271 66 0.9500 0.9826 1.0000 0.9500
|
||||
271 67 0.9500 0.9866 1.0000 0.9500
|
||||
300 51 0.9500 0.9556 1.0000 0.9500
|
||||
300 52 0.9500 0.9640 1.0000 0.9500
|
||||
300 53 0.9500 0.9537 1.0000 0.9500
|
||||
270 59 0.9500 0.9780 1.0000 0.9500
|
||||
270 60 0.9500 0.9679 1.0000 0.9500
|
||||
270 61 0.9500 0.9787 1.0000 0.9500
|
||||
300 54 0.9500 0.9923 1.0000 0.9500
|
||||
300 55 0.9500 0.9685 1.0000 0.9500
|
||||
300 56 0.9500 0.9751 1.0000 0.9500
|
||||
300 57 0.9500 0.9734 1.0000 0.9500
|
||||
300 58 0.9500 0.9606 1.0000 0.9500
|
||||
145 69 1.0000 1.0423 1.0500 1.0000
|
||||
6 290 1.1000 1.0990 1.1000 1.0500
|
||||
292 146 1.0000 0.9992 1.0000 0.9500
|
||||
292 230 0.9500 0.9951 1.0000 0.9500
|
||||
292 70 1.1000 1.0701 1.1000 1.0500
|
||||
272 147 0.9500 0.9418 0.9500 0.9000
|
||||
272 71 1.0000 0.9815 1.0000 0.9500
|
||||
73 273 0.9000 0.9000 0.9500 0.9000
|
||||
231 73 1.1000 1.1000 1.1000 1.0500
|
||||
286 76 1.0000 0.9758 1.0000 0.9500
|
||||
149 286 0.9500 0.9567 1.0000 0.9500
|
||||
233 232 0.9500 0.9662 1.0000 0.9500
|
||||
235 234 1.0000 0.9892 1.0000 0.9500
|
||||
81 237 0.9500 0.9142 0.9500 0.9000
|
||||
240 275 1.0000 0.9716 1.0000 0.9500
|
||||
240 153 1.0000 0.9763 1.0000 0.9500
|
||||
276 158 0.9000 0.9000 0.9500 0.9000
|
||||
159 88 1.1000 1.0768 1.1000 1.0500
|
||||
277 246 1.1000 1.0697 1.1000 1.0500
|
||||
248 164 1.0000 0.9619 1.0000 0.9500
|
||||
91 279 1.0000 1.0122 1.0500 1.0000
|
||||
249 280 1.0000 1.0074 1.0500 1.0000
|
||||
163 169 1.0500 1.0220 1.0500 1.0000
|
||||
175 130 1.0000 0.9983 1.0000 0.9500
|
||||
96 178 1.0000 0.9875 1.0000 0.9500
|
||||
176 95 1.0000 1.0253 1.0500 1.0000
|
||||
256 191 1.0000 1.0027 1.0500 1.0000
|
||||
299 98 0.9500 0.9738 1.0000 0.9500
|
||||
299 104 0.9500 0.9644 1.0000 0.9500
|
||||
182 116 0.9000 0.9099 0.9500 0.9000
|
||||
186 198 0.9500 0.9333 0.9500 0.9000
|
||||
187 260 0.9500 0.9221 0.9500 0.9000
|
||||
281 101 0.9500 0.9756 1.0000 0.9500
|
||||
281 188 1.0000 0.9744 1.0000 0.9500
|
||||
282 118 0.9000 0.9074 0.9500 0.9000
|
||||
105 116 0.9000 0.9071 0.9500 0.9000
|
||||
189 120 0.9500 0.9265 0.9500 0.9000
|
||||
190 108 0.9500 0.9551 1.0000 0.9500
|
||||
193 97 1.0000 0.9918 1.0000 0.9500
|
||||
109 178 1.0000 0.9866 1.0000 0.9500
|
||||
112 295 0.9000 0.9000 0.9500 0.9000
|
||||
194 190 1.1000 1.1000 1.1000 1.0500
|
||||
119 185 0.9500 0.9247 0.9500 0.9000
|
||||
202 283 1.0000 1.0237 1.0500 1.0000
|
||||
204 263 1.0000 1.0270 1.0500 1.0000
|
||||
206 213 0.9500 0.9600 1.0000 0.9500
|
||||
208 224 1.1000 1.0982 1.1000 1.0500
|
||||
127 160 1.0500 1.0553 1.1000 1.0500
|
||||
128 298 1.0000 1.0150 1.0500 1.0000
|
||||
209 143 1.0500 1.0180 1.0500 1.0000
|
||||
131 289 1.0500 1.0311 1.0500 1.0000
|
||||
298 213 1.0500 1.0402 1.0500 1.0000
|
||||
216 284 0.9500 0.9488 0.9500 0.9000
|
||||
134 217 0.9500 0.9161 0.9500 0.9000
|
||||
220 7 0.9000 0.9000 0.9500 0.9000
|
||||
221 10 0.9000 0.9000 0.9500 0.9000
|
||||
263 143 1.0000 0.9700 1.0000 0.9500
|
||||
254 26 1.0000 0.9931 1.0000 0.9500
|
||||
255 27 1.0500 1.0657 1.1000 1.0500
|
||||
37 275 0.9500 0.9519 1.0000 0.9500
|
||||
39 242 0.9500 0.9646 1.0000 0.9500
|
||||
0
|
||||
1 1.0137 -0.2238 1.0381 1.0210
|
||||
2 0.8405 -0.4014 0.9314 0.9342
|
||||
3 0.9382 -0.3342 0.9959 0.9992
|
||||
4 1.0010 -0.1506 1.0122 1.0305
|
||||
5 0.8978 -0.0624 0.9000 0.9000
|
||||
6 0.8490 -0.2986 0.9000 0.9007
|
||||
7 1.0213 -0.0864 1.0249 1.0320
|
||||
8 0.8604 -0.2640 0.9000 0.9118
|
||||
9 0.8947 -0.0979 0.9000 0.9000
|
||||
10 1.0606 -0.1402 1.0699 1.0695
|
||||
11 0.9290 -0.0841 0.9328 0.9392
|
||||
12 0.9703 -0.3255 1.0234 1.0323
|
||||
13 0.9889 -0.1898 1.0069 1.0125
|
||||
14 1.0334 -0.2773 1.0700 1.0700
|
||||
15 0.9994 -0.3569 1.0612 1.0582
|
||||
16 0.9524 -0.4416 1.0498 1.0541
|
||||
17 0.9719 -0.3940 1.0487 1.0599
|
||||
18 0.8942 -0.4997 1.0243 1.0275
|
||||
19 0.7993 -0.7066 1.0668 1.0668
|
||||
20 0.9703 -0.4493 1.0693 1.0677
|
||||
21 0.9599 -0.3907 1.0364 1.0400
|
||||
22 1.0158 -0.3363 1.0700 1.0700
|
||||
23 0.9499 -0.4469 1.0498 1.0690
|
||||
24 0.9464 -0.4024 1.0284 1.0284
|
||||
25 1.0404 -0.2013 1.0597 1.0597
|
||||
26 1.0279 -0.2314 1.0536 1.0700
|
||||
27 0.8310 -0.3613 0.9062 0.9000
|
||||
28 1.0568 -0.1678 1.0700 1.0700
|
||||
29 1.0571 -0.1616 1.0694 1.0700
|
||||
30 1.0623 -0.1284 1.0700 1.0700
|
||||
31 1.0535 -0.1873 1.0700 1.0700
|
||||
32 1.0688 -0.0508 1.0700 1.0700
|
||||
33 0.9889 -0.2338 1.0162 1.0392
|
||||
34 1.0429 -0.2393 1.0700 1.0700
|
||||
35 1.0434 -0.0882 1.0471 1.0506
|
||||
36 0.9075 0.0184 0.9077 0.9181
|
||||
37 0.9558 -0.2812 0.9963 1.0168
|
||||
38 1.0507 -0.0000 1.0507 1.0507
|
||||
39 0.9711 -0.2200 0.9957 1.0068
|
||||
40 0.9773 -0.2384 1.0060 1.0141
|
||||
41 1.0436 -0.2362 1.0700 1.0700
|
||||
42 0.9776 -0.1323 0.9865 1.0196
|
||||
43 1.0235 -0.1427 1.0334 1.0306
|
||||
44 1.0658 0.0945 1.0700 1.0700
|
||||
45 1.0518 -0.1148 1.0580 1.0700
|
||||
46 0.8908 0.1284 0.9000 0.9000
|
||||
47 0.9377 -0.4249 1.0294 1.0700
|
||||
48 0.9438 -0.4239 1.0346 1.0700
|
||||
49 0.9449 -0.4084 1.0294 1.0700
|
||||
50 0.9462 -0.4074 1.0302 1.0700
|
||||
51 0.9060 -0.4767 1.0238 1.0700
|
||||
52 0.9231 -0.4667 1.0343 1.0700
|
||||
53 0.9017 -0.4795 1.0212 1.0700
|
||||
54 0.9642 -0.4404 1.0600 1.0700
|
||||
55 0.9324 -0.4606 1.0399 1.0700
|
||||
56 0.9416 -0.4594 1.0477 1.0700
|
||||
57 0.9413 -0.4554 1.0457 1.0700
|
||||
58 0.9156 -0.4720 1.0302 1.0700
|
||||
59 0.9536 -0.4411 1.0507 1.0700
|
||||
60 0.9357 -0.4515 1.0390 1.0700
|
||||
61 0.9533 -0.4439 1.0516 1.0700
|
||||
62 0.9888 -0.4090 1.0700 1.0700
|
||||
63 0.9948 -0.3723 1.0622 1.0700
|
||||
64 1.0208 -0.2017 1.0406 1.0700
|
||||
65 1.0462 -0.2245 1.0700 1.0699
|
||||
66 0.9660 -0.4295 1.0572 1.0700
|
||||
67 0.9735 -0.4237 1.0617 1.0700
|
||||
68 0.9639 -0.3979 1.0428 1.0492
|
||||
69 0.9935 -0.3894 1.0671 1.0235
|
||||
70 0.9676 -0.1807 0.9844 1.0080
|
||||
71 1.0439 -0.2070 1.0642 1.0629
|
||||
72 1.0228 -0.2489 1.0526 1.0519
|
||||
73 0.9199 -0.2415 0.9511 0.9494
|
||||
74 1.0174 -0.2944 1.0592 1.0514
|
||||
75 0.9955 -0.2990 1.0394 1.0400
|
||||
76 0.9945 -0.3137 1.0428 1.0700
|
||||
77 1.0012 -0.3263 1.0530 1.0429
|
||||
78 1.0102 -0.2972 1.0530 1.0526
|
||||
79 0.9654 -0.3787 1.0370 1.0296
|
||||
80 1.0165 -0.2283 1.0418 1.0530
|
||||
81 0.9691 -0.3266 1.0226 1.0207
|
||||
82 1.0117 -0.1799 1.0275 1.0389
|
||||
83 0.9783 -0.2836 1.0186 1.0250
|
||||
84 0.9638 -0.3705 1.0326 1.0463
|
||||
85 0.9920 -0.3231 1.0433 1.0482
|
||||
86 0.9901 -0.3210 1.0408 1.0452
|
||||
87 1.0296 -0.2914 1.0700 1.0700
|
||||
88 0.8945 -0.3990 0.9794 0.9983
|
||||
89 0.9657 -0.4066 1.0478 1.0462
|
||||
90 0.9960 -0.3520 1.0564 1.0564
|
||||
91 0.9503 -0.4357 1.0454 1.0594
|
||||
92 0.9566 -0.3910 1.0334 1.0387
|
||||
93 0.9084 -0.5296 1.0515 1.0594
|
||||
94 0.9311 -0.4625 1.0397 1.0493
|
||||
95 0.8422 -0.4873 0.9730 0.9712
|
||||
96 0.8452 -0.4667 0.9655 0.9642
|
||||
97 0.9001 -0.3466 0.9645 0.9753
|
||||
98 1.0391 -0.1875 1.0559 1.0484
|
||||
99 0.9391 -0.3927 1.0179 1.0203
|
||||
100 0.8928 -0.3453 0.9573 0.9568
|
||||
101 1.0164 -0.2272 1.0415 1.0488
|
||||
102 1.0420 -0.0769 1.0449 1.0481
|
||||
103 1.0440 -0.1326 1.0524 1.0547
|
||||
104 1.0432 -0.1836 1.0592 1.0560
|
||||
105 0.9646 -0.1947 0.9841 0.9930
|
||||
106 1.0599 -0.1469 1.0700 1.0700
|
||||
107 0.9170 -0.3253 0.9730 0.9848
|
||||
108 0.9475 -0.2499 0.9799 0.9764
|
||||
109 0.8586 -0.4675 0.9777 0.9759
|
||||
110 0.9753 -0.1771 0.9912 0.9905
|
||||
111 1.0203 -0.0881 1.0241 1.0244
|
||||
112 0.9812 -0.2343 1.0088 1.0085
|
||||
113 0.9772 0.0149 0.9773 0.9775
|
||||
114 0.9327 0.0653 0.9350 0.9351
|
||||
115 0.8623 -0.3570 0.9333 0.9384
|
||||
116 1.0356 -0.2693 1.0700 1.0700
|
||||
117 1.0336 -0.2188 1.0565 1.0560
|
||||
118 1.0303 -0.2888 1.0700 1.0657
|
||||
119 0.9435 -0.2716 0.9818 0.9746
|
||||
120 1.0271 -0.2025 1.0469 1.0700
|
||||
121 0.9245 -0.3824 1.0005 1.0037
|
||||
122 0.9500 -0.1836 0.9676 0.9669
|
||||
123 0.9482 -0.1988 0.9688 0.9682
|
||||
124 1.0095 0.3548 1.0700 1.0700
|
||||
125 0.9676 -0.0457 0.9687 0.9728
|
||||
126 0.9601 -0.3547 1.0235 1.0285
|
||||
127 0.9679 -0.4302 1.0592 1.0669
|
||||
128 0.9891 -0.3494 1.0490 1.0638
|
||||
129 1.0151 -0.3048 1.0599 1.0650
|
||||
130 0.9328 -0.4850 1.0514 1.0630
|
||||
131 0.9943 -0.3730 1.0620 1.0700
|
||||
132 0.9410 -0.2689 0.9787 0.9876
|
||||
133 0.9088 -0.2181 0.9346 0.9195
|
||||
134 0.9061 -0.2218 0.9329 0.9173
|
||||
135 0.9927 -0.2208 1.0169 1.0279
|
||||
136 0.9850 -0.2477 1.0156 1.0223
|
||||
137 0.9359 -0.1999 0.9570 0.9567
|
||||
138 0.9873 -0.1908 1.0055 1.0111
|
||||
139 0.9783 -0.2485 1.0093 1.0224
|
||||
140 0.9591 -0.2611 0.9940 1.0073
|
||||
141 0.9179 -0.3411 0.9792 0.9885
|
||||
142 0.8285 -0.5152 0.9756 0.9791
|
||||
143 0.9746 -0.3464 1.0343 1.0700
|
||||
144 0.9271 -0.4047 1.0116 1.0599
|
||||
145 0.9992 -0.3827 1.0700 1.0700
|
||||
146 1.0378 -0.2201 1.0609 1.0615
|
||||
147 1.0321 -0.2353 1.0585 1.0595
|
||||
148 1.0299 -0.2491 1.0596 1.0568
|
||||
149 1.0025 -0.2252 1.0275 1.0443
|
||||
150 1.0169 -0.2570 1.0489 1.0500
|
||||
151 0.9869 -0.3432 1.0449 1.0418
|
||||
152 0.9925 -0.3029 1.0377 1.0446
|
||||
153 1.0251 -0.2659 1.0590 1.0700
|
||||
154 0.9588 -0.4160 1.0451 1.0559
|
||||
155 0.9665 -0.3684 1.0344 1.0409
|
||||
156 1.0162 -0.2020 1.0361 1.0412
|
||||
157 0.9808 -0.3542 1.0428 1.0566
|
||||
158 1.0131 -0.3015 1.0570 1.0610
|
||||
159 0.9420 -0.5075 1.0700 1.0700
|
||||
160 0.9601 -0.3740 1.0304 1.0308
|
||||
161 0.9675 -0.3782 1.0388 1.0425
|
||||
162 0.9941 -0.3395 1.0505 1.0480
|
||||
163 1.0096 -0.3481 1.0679 1.0700
|
||||
164 0.9925 -0.3146 1.0411 1.0600
|
||||
165 0.9970 -0.3239 1.0483 1.0556
|
||||
166 1.0032 -0.3010 1.0474 1.0503
|
||||
167 1.0140 -0.3089 1.0600 1.0700
|
||||
168 1.0454 -0.2281 1.0700 1.0700
|
||||
169 0.9635 -0.3495 1.0249 1.0507
|
||||
170 0.9671 -0.3936 1.0441 1.0498
|
||||
171 1.0047 -0.3344 1.0589 1.0622
|
||||
172 0.9495 -0.4346 1.0443 1.0486
|
||||
173 0.9723 -0.3820 1.0446 1.0493
|
||||
174 0.9287 -0.4582 1.0356 1.0387
|
||||
175 0.9134 -0.5252 1.0536 1.0619
|
||||
176 0.8495 -0.4744 0.9729 0.9914
|
||||
177 0.7938 -0.5394 0.9597 0.9657
|
||||
178 0.8383 -0.4754 0.9637 0.9732
|
||||
179 0.7828 -0.5447 0.9536 0.9575
|
||||
180 0.9046 -0.3308 0.9632 0.9672
|
||||
181 0.9062 -0.3234 0.9621 0.9662
|
||||
182 0.9618 -0.2120 0.9848 0.9945
|
||||
183 0.9193 -0.4067 1.0053 1.0083
|
||||
184 1.0262 -0.2678 1.0605 1.0611
|
||||
185 1.0042 -0.2525 1.0355 1.0525
|
||||
186 0.9818 -0.2119 1.0044 0.9969
|
||||
187 0.9971 -0.2776 1.0350 1.0236
|
||||
188 1.0306 -0.2219 1.0542 1.0700
|
||||
189 0.9963 -0.1421 1.0064 1.0049
|
||||
190 0.9183 -0.2181 0.9439 0.9447
|
||||
191 0.8592 -0.4584 0.9739 0.9747
|
||||
192 0.8730 -0.4538 0.9839 0.9849
|
||||
193 0.8760 -0.4249 0.9736 0.9751
|
||||
194 1.0268 -0.1896 1.0442 1.0446
|
||||
195 0.9045 -0.3312 0.9632 0.9672
|
||||
196 0.8762 -0.3555 0.9456 0.9495
|
||||
197 0.9973 -0.3180 1.0468 1.0621
|
||||
198 1.0231 -0.2682 1.0576 1.0700
|
||||
199 1.0604 -0.1429 1.0700 1.0700
|
||||
200 0.9741 -0.3836 1.0469 1.0470
|
||||
201 0.9371 -0.2536 0.9708 0.9701
|
||||
202 0.9852 -0.3777 1.0551 1.0684
|
||||
203 1.0152 -0.2054 1.0358 1.0416
|
||||
204 0.9734 -0.4022 1.0533 1.0700
|
||||
205 1.0424 -0.2413 1.0700 1.0700
|
||||
206 1.0061 -0.2641 1.0402 1.0458
|
||||
207 1.0034 -0.3225 1.0539 1.0573
|
||||
208 0.9651 -0.3591 1.0297 1.0353
|
||||
209 0.9448 -0.4273 1.0369 1.0487
|
||||
210 0.9587 -0.4192 1.0463 1.0606
|
||||
211 0.9365 -0.4646 1.0455 1.0580
|
||||
212 0.9739 -0.3988 1.0524 1.0669
|
||||
213 0.9921 -0.2999 1.0365 1.0427
|
||||
214 0.9794 -0.2229 1.0045 1.0181
|
||||
215 0.9649 -0.2535 0.9977 1.0087
|
||||
216 0.9551 -0.2248 0.9812 0.9841
|
||||
217 0.9787 -0.2180 1.0027 1.0156
|
||||
218 0.9744 -0.0487 0.9756 0.9803
|
||||
219 0.9584 -0.2055 0.9802 0.9850
|
||||
220 0.9611 -0.1839 0.9785 0.9838
|
||||
221 0.9370 -0.1984 0.9578 0.9573
|
||||
222 0.9833 -0.2238 1.0085 1.0223
|
||||
223 0.9295 -0.2808 0.9710 0.9845
|
||||
224 0.9211 -0.3346 0.9800 0.9892
|
||||
225 0.9795 -0.3963 1.0566 1.0629
|
||||
226 0.9537 -0.3717 1.0236 1.0700
|
||||
227 0.9955 -0.3750 1.0638 1.0700
|
||||
228 0.9732 -0.3976 1.0513 1.0576
|
||||
229 0.9597 -0.3971 1.0386 1.0450
|
||||
230 1.0507 -0.2022 1.0700 1.0648
|
||||
231 1.0346 -0.1951 1.0528 1.0511
|
||||
232 1.0137 -0.3295 1.0659 1.0528
|
||||
233 1.0039 -0.2529 1.0353 1.0369
|
||||
234 1.0369 -0.2599 1.0690 1.0700
|
||||
235 1.0363 -0.1992 1.0553 1.0553
|
||||
236 0.9960 -0.2886 1.0370 1.0450
|
||||
237 0.9832 -0.3682 1.0499 1.0582
|
||||
238 0.9915 -0.2955 1.0346 1.0425
|
||||
239 0.9716 -0.3574 1.0352 1.0487
|
||||
240 1.0098 -0.3147 1.0577 1.0506
|
||||
241 1.0496 -0.0708 1.0520 1.0533
|
||||
242 0.9925 -0.3111 1.0401 1.0472
|
||||
243 1.0040 -0.3206 1.0540 1.0608
|
||||
244 1.0115 -0.3345 1.0654 1.0638
|
||||
245 0.9770 -0.3702 1.0448 1.0484
|
||||
246 0.9641 -0.3392 1.0220 1.0388
|
||||
247 0.9888 -0.3612 1.0527 1.0504
|
||||
248 1.0242 -0.2819 1.0623 1.0563
|
||||
249 0.9751 -0.4037 1.0554 1.0664
|
||||
250 0.9978 -0.3407 1.0543 1.0573
|
||||
251 0.9110 -0.5103 1.0442 1.0506
|
||||
252 0.9070 -0.5023 1.0368 1.0419
|
||||
253 0.8981 -0.3356 0.9588 0.9696
|
||||
254 1.0398 -0.2119 1.0612 1.0700
|
||||
255 0.8703 -0.4075 0.9609 0.9688
|
||||
256 0.8353 -0.4955 0.9713 0.9723
|
||||
257 0.8725 -0.4323 0.9737 0.9774
|
||||
258 1.0249 -0.1495 1.0357 1.0379
|
||||
259 0.9272 -0.4190 1.0174 1.0330
|
||||
260 0.9851 -0.3477 1.0447 1.0612
|
||||
261 0.9635 -0.3254 1.0170 1.0160
|
||||
262 0.9384 -0.2414 0.9689 0.9683
|
||||
263 0.9813 -0.3398 1.0385 1.0413
|
||||
264 0.9766 -0.2379 1.0051 1.0092
|
||||
265 0.9351 -0.2129 0.9590 0.9575
|
||||
266 0.9469 -0.2051 0.9688 0.9711
|
||||
267 0.9417 -0.2704 0.9797 0.9933
|
||||
268 0.9371 -0.2820 0.9786 0.9915
|
||||
269 0.9996 -0.2742 1.0366 1.0700
|
||||
270 0.9250 -0.4044 1.0095 1.0579
|
||||
271 0.9404 -0.3899 1.0180 1.0653
|
||||
272 1.0402 -0.1905 1.0575 1.0534
|
||||
273 1.0343 -0.2435 1.0626 1.0604
|
||||
274 1.0197 -0.2209 1.0434 1.0550
|
||||
275 0.9880 -0.3576 1.0507 1.0700
|
||||
276 1.0084 -0.2313 1.0345 1.0455
|
||||
277 0.9945 -0.3948 1.0700 1.0667
|
||||
278 0.9818 -0.3732 1.0504 1.0574
|
||||
279 0.9291 -0.4589 1.0363 1.0393
|
||||
280 0.9622 -0.4096 1.0457 1.0506
|
||||
281 1.0473 -0.1585 1.0592 1.0522
|
||||
282 0.9689 -0.2251 0.9947 0.9972
|
||||
283 0.9895 -0.3317 1.0436 1.0480
|
||||
284 1.0182 -0.2244 1.0427 1.0478
|
||||
285 1.0129 -0.2137 1.0352 1.0407
|
||||
286 1.0132 -0.3026 1.0575 1.0613
|
||||
287 1.0047 -0.2597 1.0377 1.0454
|
||||
288 0.8913 -0.3342 0.9519 0.9546
|
||||
289 1.0247 -0.2748 1.0609 1.0700
|
||||
290 1.0111 -0.2160 1.0339 1.0397
|
||||
291 0.9998 -0.2757 1.0371 1.0700
|
||||
292 1.0471 -0.1859 1.0635 1.0617
|
||||
293 0.9883 -0.3523 1.0492 1.0492
|
||||
294 0.8473 -0.4668 0.9674 0.9707
|
||||
295 0.9404 -0.2585 0.9753 0.9745
|
||||
296 0.9481 -0.2775 0.9879 0.9833
|
||||
297 0.9997 -0.2738 1.0365 1.0411
|
||||
298 1.0195 -0.3248 1.0700 1.0700
|
||||
299 0.9831 -0.1711 0.9979 1.0073
|
||||
300 0.9315 -0.4049 1.0157 1.0638
|
||||
0
|
||||
5 5.7219
|
||||
4 2.0000
|
||||
9 5.2983
|
||||
11 7.1670
|
||||
28 3.0000
|
||||
29 3.0000
|
||||
30 6.0000
|
||||
31 3.2707
|
||||
32 5.0000
|
||||
33 5.0000
|
||||
34 1.0000
|
||||
35 4.0289
|
||||
36 5.9655
|
||||
38 6.0000
|
||||
40 1.4559
|
||||
41 3.1676
|
||||
42 3.0381
|
||||
43 3.0000
|
||||
44 14.2610
|
||||
45 9.0000
|
||||
46 4.0000
|
||||
0
|
||||
1 -0.0365
|
||||
2 1.5000
|
||||
3 -0.5000
|
||||
4 0.1493
|
||||
5 -0.3799
|
||||
6 0.1412
|
||||
7 -1.8428
|
||||
8 0.0357
|
||||
9 -0.1947
|
||||
10 0.4173
|
||||
11 -6.0000
|
||||
28 0.5767
|
||||
29 -0.1912
|
||||
30 0.8331
|
||||
31 0.5019
|
||||
32 0.9377
|
||||
33 2.5379
|
||||
34 0.0571
|
||||
35 -0.0839
|
||||
36 -2.0000
|
||||
37 0.0000
|
||||
38 0.0939
|
||||
39 0.0611
|
||||
40 0.1496
|
||||
41 0.6892
|
||||
42 0.2646
|
||||
43 0.5071
|
||||
44 5.8656
|
||||
45 2.0486
|
||||
46 -1.8983
|
||||
62 0.1313
|
||||
64 0.3800
|
||||
65 0.0463
|
||||
73 0.2000
|
||||
92 -0.2969
|
||||
100 0.9295
|
||||
102 -0.5000
|
||||
103 -0.1820
|
||||
106 -0.5000
|
||||
108 -0.1000
|
||||
116 0.9000
|
||||
117 0.3500
|
||||
122 -0.9981
|
||||
123 -0.6306
|
||||
124 6.6698
|
||||
133 -0.8676
|
||||
139 0.4000
|
||||
145 0.1219
|
||||
148 0.1000
|
||||
159 0.2165
|
||||
161 0.2495
|
||||
167 -0.1100
|
||||
168 0.0245
|
||||
174 -0.2400
|
||||
178 0.0889
|
||||
179 0.3758
|
||||
186 0.1071
|
||||
189 -0.5000
|
||||
199 -0.2692
|
||||
203 -3.0000
|
||||
221 0.8947
|
||||
222 0.9586
|
||||
225 0.0200
|
||||
232 0.2000
|
||||
254 11.2040
|
||||
258 -0.1500
|
||||
265 -0.6000
|
||||
281 1.6383
|
||||
289 0.0102
|
||||
0
|
||||
259 0.40 0.4111 0.40 0.50
|
||||
107 0.00 0.0000 0.00 0.10
|
||||
200 0.50 0.4150 0.40 0.50
|
||||
224 0.50 0.4755 0.40 0.50
|
||||
54 0.00 0.0047 0.00 0.10
|
||||
300 0.10 0.0928 0.00 0.10
|
||||
0
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,66 @@
|
|||
function [e,f,PG,QR,Pg,Qg,T,pgvNum,xNum,m,r,l,u,z,w,x,y,para3,mu0,b0,bei,dmaxOut1,dmaxOut2,xz1,xz2,dmaxOut3,dmaxOut4,xz3,xz4,xz5,muOut,opfGoal,...
|
||||
times,secondBegin,ifconverge,k2,mismatch]=seting(nodeNum,lineNum,transNum,transK0,capNum,capK,pvQmin,pvQmax,pvNum,pvNode,pvV,pgNum,pgNode,Pmin,Pmax,Pg,Qg)
|
||||
%程序功能:预计算过程初始化
|
||||
%编写时间:2010年10月
|
||||
|
||||
%初始化调整参数
|
||||
para3=0.6; %陡度参数修正量初值β0
|
||||
para4=5; %陡度参数初值
|
||||
if nodeNum==30 %各测试系统要得到最好的优化结果,需要取不同的陡度参数修正值
|
||||
para3=0.51;
|
||||
para4=3.9;
|
||||
else if nodeNum==118
|
||||
para3=0.09;
|
||||
para4=5;
|
||||
else if nodeNum==300
|
||||
para3=0.45;
|
||||
para4=4.6;
|
||||
else if nodeNum==1047
|
||||
para3=0.54;
|
||||
para4=0.9;
|
||||
else if nodeNum==1780
|
||||
para3=0.4;
|
||||
para4=0.6;
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
mu0=para4; %mut,mub的初始值
|
||||
b0=para3; %β0
|
||||
bei=20; %对Zt,Zb的上下限限制调整参数
|
||||
%% 设PQ节点电压幅值为1,相角为0
|
||||
e=ones(nodeNum,1);
|
||||
f=sparse(nodeNum,1);
|
||||
e(pvNode)=pvV(pvNode); %初始值对计算结果有一点点影响
|
||||
%% 发电机有功无功出力以及无功源无功出力初值(分别取上下界的平均值)
|
||||
PG=(Pmin+Pmax)/2; %发电机有功功率初值,取发电机有功上下限的平均值
|
||||
QR=(pvQmin+pvQmax)/2; %发电机无功功率初值,取平衡节点、PV节点无功上下限的平均值
|
||||
Pg(pgNode)=PG(pgNode);
|
||||
Qg(pvNode)=QR(pvNode);
|
||||
T=1./transK0;
|
||||
x=[T;PG(pgNode);QR(pvNode);capK;e;f]; %系统的控制变量和状态变量
|
||||
%% 设定松弛变量l,u,拉格朗日乘子z,w,y的初值
|
||||
pgvNum=pgNum+pvNum;
|
||||
xNum=pgvNum+2*nodeNum+transNum+capNum; %变量个数
|
||||
m=2*nodeNum; %等式约束条件个数
|
||||
r=pgvNum+nodeNum+lineNum+transNum+capNum; %不等式约束条件个数
|
||||
s=1;
|
||||
l=s*ones(r,1); %初始化l,u,z为1,w为-1,y为0
|
||||
u=l;
|
||||
z=l;
|
||||
w=-l;
|
||||
y=sparse(m,1);
|
||||
|
||||
xz1=[];xz2=xz1;xz3=xz1;xz4=xz1;dmaxOut1=xz1;dmaxOut2=xz1;dmaxOut3=xz1; %用于保存中间计算结果,以提供作图数据
|
||||
dmaxOut4=xz1;xz5=xz1;muOut=xz1;
|
||||
|
||||
opfGoal=2; %目标函数为有功出力最小
|
||||
times=1; %计算阶段标志
|
||||
secondBegin=1; %连续化处理阶段开始标志
|
||||
ifconverge=0; %收敛标志
|
||||
k2=0;
|
||||
mismatch=0.00001; %最大不平衡量计算精度
|
||||
if nodeNum==1780 %由于1780系统在预计算时最大不平衡量要收敛到0.00001的精度迭代次数会比较多,为了提高整体收敛速度
|
||||
mismatch=0.01; %在预计算时最大不平衡量精度达到0.01则视为收敛,在连续化处理收敛时最大不平衡量精度可达0.00001
|
||||
end
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
function [const,Lz,Lw,L1,U1]=snd_Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,lineI,lineJ,balNode,mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,...
|
||||
a,b,PG,QR,pvQmin,pvQmax,pgNum,pgvNum,xNum,pgNode,pvNode,dhx,dgx,L1,U1,LZ,UW,l,u,y,r,dT_Zt,capNum,hx,Vmax,Vmin,Zt,Zb,bei,mu0,oneTrans,oneCap)
|
||||
%程序功能:连续化处理过程,形成扰动KKT方程不平衡量矩阵
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 形成目标函数一阶偏导矩阵▽f(.)
|
||||
if(opfGoal==2)
|
||||
dPG=ones(pgNum,1);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==1)
|
||||
dPG=2*a(pgNode).*PG(pgNode)+b(pgNode);
|
||||
dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1);
|
||||
else if(opfGoal==3)
|
||||
dfT=-transG.*dT_Zt.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=2*sum(G.*(EE-EE'));
|
||||
dff=2*sum(G.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
else if(opfGoal==4)
|
||||
dfT=transB.*dT_Zt.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
dfPQ=zeros(pgvNum,1);
|
||||
dfcapK=zeros(capNum,1);
|
||||
EE=e*ones(1,nodeNum);
|
||||
FF=f*ones(1,nodeNum);
|
||||
dfe=-2*sum(B.*(EE-EE'));
|
||||
dff=-2*sum(B.*(FF-FF'));
|
||||
dfx=[dfT;dfPQ;dfcapK;dfe';dff'];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%% 不等式约束项
|
||||
tmp=1;
|
||||
Zbmin=-tmp*bei*mu0*oneCap; %这里加入了Zt,Zb的取值限制在陡度参数初值的一定倍数(取20倍,Zt,Zb取到这个值已经非常接近0,或1,
|
||||
Zbmax=tmp*bei*mu0*oneCap; %完全可以保证)范围内,这样处理既能不影响计算精度,还可以避免由于Zt,Zb的绝对值取值过大,
|
||||
Ztmin=-tmp*bei*mu0*oneTrans; %使得离散变量过早固定在0或1处,而导致收敛困难
|
||||
Ztmax=tmp*bei*mu0*oneTrans;
|
||||
gxT=Zt;
|
||||
gxTx=Ztmin;
|
||||
gxTs=Ztmax;
|
||||
gxv=[PG(pgNode);QR(pvNode);Zb;e.^2+f.^2]; %约束条件当前值
|
||||
gxvx=[Pmin(pgNode);pvQmin(pvNode);Zbmin;Vmin.*Vmin]; %约束下限
|
||||
gxvs=[Pmax(pgNode);pvQmax(pvNode);Zbmax;Vmax.*Vmax]; %约束上限
|
||||
gxl=(e(lineI).*e(lineI)+f(lineI).*f(lineI)-e(lineI).*e(lineJ)-f(lineI).*f(lineJ)).*GIJ+(e(lineI).*f(lineJ)-e(lineJ).*f(lineI)).*BIJ;%线路功率当前值
|
||||
gxlx=-ones(lineNum,1)*1000; %线路约束下限
|
||||
gxls=ones(lineNum,1)*1000; %线路约束上限
|
||||
|
||||
gx=[gxT;gxv;gxl]; %组合所有约束条件
|
||||
gxx=[gxTx;gxvx;gxlx];
|
||||
gsx=[gxTs;gxvs;gxls];
|
||||
Lz=gx-l-gxx;
|
||||
Lw=gx+u-gsx;
|
||||
%% 形成修正方程常数项向量
|
||||
muUL=mu*(U1-L1);
|
||||
BB1=UW*Lw-LZ*Lz-muUL*ones(r,1);
|
||||
BB=dhx*y-dfx+dgx*BB1; %修正方程常数项ψ(.,μ)
|
||||
BB(transNum+pgvNum+capNum+nodeNum+balNode,1)=0; %保持平衡节点电压虚部不变,始终为0,则常数项平衡节点处置0
|
||||
BB(transNum+pgvNum+capNum+balNode,1)=0; %保持平衡节点电压实部不变
|
||||
const=[BB;hx]; %修正方程常数项向量
|
||||
|
|
@ -0,0 +1,263 @@
|
|||
function [HSB,dhx,dgx,dgxT,GIJ,BIJ,L1,U1,LZ,UW,transG,transB,dT_Zt,mut,mub]=snd_formHSB(nodeNum,balNode,opfGoal,lineNum,transNum,lineI,lineJ,transI,transJ,...
|
||||
T,transG,transB,pgNode,pvNode,G,B,e,f,pgNum,pvNum,pgvNum,xNum,a,m,r,l,u,z,w,y,kt0,mut,Zt,oneTrans,oneCap,Zb,mub,q0,capBi,capNum,capI,tij,Bci,N1,H1,diagE,...
|
||||
diagF,b0,balNum)
|
||||
%程序功能:连续化处理过程,形成修正方程系数矩阵
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 修正陡度参数μt
|
||||
dicVar=[tij;Bci];
|
||||
tmp1=dicVar.*(1-dicVar);
|
||||
if sum(tmp1)==0
|
||||
tmp2=0;
|
||||
else
|
||||
tmp2=tmp1/sum(tmp1);
|
||||
end
|
||||
tmp3=ones(transNum+capNum,1)./(ones(transNum+capNum,1)+tmp2); %计算每一步迭代中陡度参数的修正量
|
||||
bk=tmp3*b0;
|
||||
|
||||
mut_bk=bk(1:transNum);
|
||||
mub_bk=bk(transNum+1:end);
|
||||
|
||||
smallest=0.0000000001; %当陡度参数已经非常接近0时,让其以0.9的速率减小,保证其还能继续下降,
|
||||
large_mut=find(mut>smallest); %不过只要选择好适当的陡度参数初值和修正参数,陡度参数达到这个精度时基本上都已经收敛
|
||||
small_mut=find(mut<=smallest);
|
||||
mut(large_mut)=mut_bk(large_mut).*mut(large_mut);
|
||||
mut(small_mut)=0.9*mut(small_mut);
|
||||
large_mub=find(mub>smallest);
|
||||
small_mub=find(mub<=smallest);
|
||||
mub(large_mub)=mub_bk(large_mub).*mub(large_mub);
|
||||
mub(small_mub)=0.9*mub(small_mub);
|
||||
|
||||
dT_Zt=oneTrans;
|
||||
d2T_Zt2=oneTrans;
|
||||
n_zt= Zt<0; %为了避免指数运算时出现的计算机溢出问题,在计算Sigmoid函数及其一、二阶导数时,
|
||||
p_zt= Zt>=0; %区分Zt的正负取值情况,采用不同的表达形式(两种形式完全等价),这是算法得以实现的关键。
|
||||
n_Ezu=exp(Zt(n_zt)./mut(n_zt));
|
||||
dT_Zt(n_zt)=kt0(n_zt).*(n_Ezu./(mut(n_zt).*(oneTrans(n_zt)+n_Ezu).^2)); %zt为负时,T对zt求一次偏导
|
||||
d2T_Zt2(n_zt)=(dT_Zt(n_zt)./mut(n_zt)).*(oneTrans(n_zt)-2*n_Ezu./(oneTrans(n_zt)+n_Ezu));%zt为负时,T对zt求二次偏导
|
||||
p_Ezu=exp(-Zt(p_zt)./mut(p_zt));
|
||||
dT_Zt(p_zt)=kt0(p_zt).*(p_Ezu./(mut(p_zt).*(oneTrans(p_zt)+p_Ezu).^2)); %zt为正时,T对zt求一次偏导
|
||||
d2T_Zt2(p_zt)=(dT_Zt(p_zt)./mut(p_zt)).*(oneTrans(p_zt)-2./(oneTrans(p_zt)+p_Ezu)); %zt为正时,T对zt求二次偏导
|
||||
transGmut=transG.*dT_Zt;
|
||||
transBmut=transB.*dT_Zt;
|
||||
|
||||
dcapK_Zb=oneCap;
|
||||
d2capK_Zb2=oneCap;
|
||||
n_zb= Zb<0; %对于Zb,同样要区分其正负取值进行计算
|
||||
p_zb= Zb>=0;
|
||||
n_Ezbu=exp(Zb(n_zb)./mub(n_zb));
|
||||
dcapK_Zb(n_zb)=q0.*(n_Ezbu./(mub(n_zb).*(oneCap(n_zb)+n_Ezbu).^2)); %zb为负时,capK对zb求一次偏导
|
||||
d2capK_Zb2(n_zb)=(dcapK_Zb(n_zb)./mub(n_zb)).*(oneCap(n_zb)-2*n_Ezbu./(oneCap(n_zb)+n_Ezbu));%zb为负时,capK对zb求二次偏导
|
||||
p_Ezbu=exp(-Zb(p_zb)./mub(p_zb));
|
||||
dcapK_Zb(p_zb)=q0.*(p_Ezbu./(mub(p_zb).*(oneCap(p_zb)+p_Ezbu).^2)); %zb为正时,capK对zb求一次偏导
|
||||
d2capK_Zb2(p_zb)=(dcapK_Zb(p_zb)./mub(p_zb)).*(oneCap(p_zb)-2./(oneCap(p_zb)+p_Ezbu));%zb为正时,capK对zb求二次偏导
|
||||
capBi_dBci=capBi.*dcapK_Zb;
|
||||
|
||||
%% 形成等式约束雅可比矩阵
|
||||
ef1=e(transI).*e(transJ)+f(transI).*f(transJ);
|
||||
ef2=e(transI).*f(transJ)-e(transJ).*f(transI);
|
||||
ef3=e(transI).*e(transI)+f(transI).*f(transI);
|
||||
ef1G=ef1.*transGmut;
|
||||
ef1B=ef1.*transBmut;
|
||||
ef2G=ef2.*transGmut;
|
||||
ef2B=ef2.*transBmut;
|
||||
dhPTi=-ef1G+ef2B+2*ef3.*transGmut.*T;
|
||||
dhPTj=-ef1G-ef2B;
|
||||
dhPT=sparse(1:transNum,transI,dhPTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhPTj,transNum,nodeNum);%有功平衡方程P对变压器变比求偏导
|
||||
dhQTi=ef1B+ef2G-2*ef3.*transBmut.*T;
|
||||
dhQTj=ef1B-ef2G;
|
||||
dhQT=sparse(1:transNum,transI,dhQTi,transNum,nodeNum)+sparse(1:transNum,transJ,dhQTj,transNum,nodeNum);%无功平衡方程Q对变压器变比求偏导
|
||||
dhP=sparse(1:pgNum,pgNode,ones(pgNum,1),pgNum,m);
|
||||
dhQ1=sparse(1:pvNum,pvNode,ones(pvNum,1),pvNum,nodeNum);
|
||||
dhQ=[sparse(pvNum,nodeNum) dhQ1];
|
||||
dhcapK1=sparse(1:capNum,capI,(e(capI).^2+f(capI).^2).*capBi_dBci,capNum,nodeNum);%功率平衡方程对电容电抗器组数求偏导
|
||||
dhcapK=[sparse(capNum,nodeNum) dhcapK1];
|
||||
%功率方程雅可比矩阵
|
||||
deG=diagE*G;
|
||||
dfB=diagF*B;
|
||||
deB=diagE*B;
|
||||
dfG=diagF*G;
|
||||
dH1=sparse(1:nodeNum,1:nodeNum,H1,nodeNum,nodeNum);
|
||||
dN1=sparse(1:nodeNum,1:nodeNum,N1,nodeNum,nodeNum);
|
||||
Hij=-dH1-deG-dfB;
|
||||
Nij=-dN1+deB-dfG;
|
||||
Jij=dN1-dfG+deB;
|
||||
Lij=-dH1+dfB+deG;
|
||||
dhJacb=[Hij Nij;Jij Lij]'; %合并形成功率方程雅可比矩阵
|
||||
dhx=[dhPT dhQT;dhP;dhQ;dhcapK;dhJacb]; %合并形成等式约束雅可比矩阵h(x)
|
||||
%% 形成不等式约束雅可比矩阵▽g(x)
|
||||
gtransNum=transNum; %在原来变比和电容电抗器上下限不等式约束的模块,替换为Zt、Zb的上下限不等式约束
|
||||
gcapNum=capNum;
|
||||
dgT1=sparse(1:transNum,1:transNum,ones(transNum,1),transNum,r-lineNum);
|
||||
dglT=(e(transI).^2+f(transI).^2-e(transI).*e(transJ)-f(transI).*f(transJ))...
|
||||
.*transGmut+(e(transI).*f(transJ)-e(transJ).*f(transI)).*transBmut;
|
||||
dgT2=sparse(1:transNum,lineNum-transNum+1:lineNum,dglT,transNum,lineNum);
|
||||
dgT=[dgT1 dgT2]; %所有不等式对Zt求导的模块
|
||||
dgP=sparse(1:pgNum,gtransNum+1:gtransNum+pgNum,ones(pgNum,1),pgNum,r); %所有不等式约束对P求导的模块
|
||||
dgQ=sparse(1:pvNum,gtransNum+pgNum+1:gtransNum+pgvNum,ones(pvNum,1),pvNum,r);%所有不等式约束对Q求导的模块
|
||||
dgcapK=sparse(1:capNum,transNum+pgvNum+1:transNum+pgvNum+capNum,ones(capNum,1),capNum,r);%所有不等式约束对Zb求导的模块
|
||||
dgve=2*diagE;
|
||||
dgvf=2*diagF;
|
||||
sizeG=size(G);
|
||||
GIJ=G(sub2ind(sizeG,lineI,lineJ));
|
||||
BIJ=B(sub2ind(sizeG,lineI,lineJ));
|
||||
dgleI=(2*e(lineI)-e(lineJ)).*GIJ+f(lineJ).*BIJ;
|
||||
dgleJ=-e(lineI).*GIJ-f(lineI).*BIJ;
|
||||
dglfI=(2*f(lineI)-f(lineJ)).*GIJ-e(lineJ).*BIJ;
|
||||
dglfJ=-f(lineI).*GIJ+e(lineI).*BIJ;
|
||||
dgle=sparse(lineI,(1:lineNum),dgleI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dgleJ,nodeNum,lineNum);
|
||||
dglf=sparse(lineI,(1:lineNum),dglfI,nodeNum,lineNum)+sparse(lineJ,(1:lineNum),dglfJ,nodeNum,lineNum);
|
||||
dg0=sparse(m,gtransNum+pgvNum+gcapNum);
|
||||
dgvl=[dgve dgle;dgvf dglf];
|
||||
dgef=[dg0 dgvl]; %所有不等式约束对电压实部、虚部求偏导的模块
|
||||
dgx=[dgT;dgP;dgQ;dgcapK;dgef]; %不等式约束雅克比矩阵
|
||||
%% 形成对角阵
|
||||
Z=sparse(1:r,1:r,z,r,r);
|
||||
W=sparse(1:r,1:r,w,r,r);
|
||||
L1=sparse(1:r,1:r,1./l,r,r);
|
||||
U1=sparse(1:r,1:r,1./u,r,r);
|
||||
LZ=L1*Z;
|
||||
UW=U1*W;
|
||||
%% 形成海森伯矩阵
|
||||
%目标函数的海森伯矩阵▽2f(x)
|
||||
if(opfGoal==2) %目标为有功出力最小
|
||||
HSdfx=sparse(xNum,xNum);
|
||||
else if(opfGoal==1)
|
||||
HSdfx=sparse(transNum+1:transNum+pgNum,transNum+1:transNum+pgNum,2*a(pgNode),xNum,xNum);%仅目标函数对PG求偏导处的对角元为非零元素,其他都为0(目标为发电耗量最小)
|
||||
else if(opfGoal==3)
|
||||
d2ftei=-2*transGmut.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=-2*transGmut.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT2=-transG.*d2T_Zt2.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
d2fT0=sparse(1:transNum,1:transNum,d2fT2,transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=2*(G-sparse(1:nodeNum,1:nodeNum,sum(G,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
else if(opfGoal==4)
|
||||
d2ftei=2*transBmut.*(e(transI)-e(transJ));
|
||||
d2ftej=-d2ftei;
|
||||
d2ftfi=2*transBmut.*(f(transI)-f(transJ));
|
||||
d2ftfj=-d2ftfi;
|
||||
d2fte=sparse(1:transNum,transI,d2ftei,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftej,transNum,nodeNum);
|
||||
d2ftf=sparse(1:transNum,transI,d2ftfi,transNum,nodeNum)+sparse(1:transNum,transJ,d2ftfj,transNum,nodeNum);
|
||||
d2fT2=transB.*d2T_Zt2.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2);
|
||||
d2fT0=sparse(1:transNum,1:transNum,d2fT2,transNum,transNum+pgvNum+capNum);
|
||||
d2fT=[d2fT0 d2fte d2ftf];
|
||||
d2fPGQR=sparse(pgvNum,xNum);
|
||||
d2fcapK=sparse(capNum,xNum);
|
||||
d2fee=-2*(B-sparse(1:nodeNum,1:nodeNum,sum(G,2),nodeNum,nodeNum));
|
||||
d2fff=d2fee;
|
||||
zero_nodeNum=sparse(nodeNum,nodeNum);
|
||||
d2f_ef_ef=[d2fee zero_nodeNum;zero_nodeNum d2fff];
|
||||
d2efT=[d2fte d2ftf]';
|
||||
d2f_ef=[d2efT sparse(2*nodeNum,pgvNum+capNum) d2f_ef_ef];
|
||||
HSdfx=[d2fT;d2fPGQR;d2fcapK;d2f_ef];
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
%等式约束海森伯矩阵与拉格朗日乘子y的乘积▽2h(x)*y
|
||||
y1=y(1:nodeNum,1);
|
||||
y2=y(nodeNum+1:2*nodeNum,1);
|
||||
ef1Gd2=ef1.*transG.*d2T_Zt2;
|
||||
ef1Bd2=ef1.*transB.*d2T_Zt2;
|
||||
ef2Gd2=ef2.*transG.*d2T_Zt2;
|
||||
ef2Bd2=ef2.*transB.*d2T_Zt2;
|
||||
d2P_T2=(-ef1Gd2+ef2Bd2+2*ef3.*transG.*(dT_Zt.^2+T.*d2T_Zt2)).*y1(transI)+(-ef1Gd2-ef2Bd2).*y1(transJ);
|
||||
d2Q_T2=(ef1Bd2+ef2Gd2-2*ef3.*transB.*(dT_Zt.^2+T.*d2T_Zt2)).*y2(transI)+(ef1Bd2-ef2Gd2).*y2(transJ);
|
||||
dhT2=d2P_T2+d2Q_T2; %功率方程对变压器Zt求二次偏导所得的列向量
|
||||
HSdhT=sparse(1:transNum,1:transNum,dhT2,transNum+pgvNum+capNum,transNum+pgvNum+capNum)+...
|
||||
sparse(transNum+pgvNum+1:transNum+pgvNum+capNum,transNum+pgvNum+1:transNum+pgvNum+capNum,...
|
||||
(e(capI).^2+f(capI).^2).*d2capK_Zb2.*y2(capI),transNum+pgvNum+capNum,transNum+pgvNum+capNum);
|
||||
eiG=e(transI).*transGmut;
|
||||
ejG=e(transJ).*transGmut;
|
||||
eiB=e(transI).*transBmut;
|
||||
ejB=e(transJ).*transBmut;
|
||||
fiG=f(transI).*transGmut;
|
||||
fjG=f(transJ).*transGmut;
|
||||
fiB=f(transI).*transBmut;
|
||||
fjB=f(transJ).*transBmut;
|
||||
ejG_fjB=ejG-fjB;
|
||||
ejGfjB=ejG+fjB;
|
||||
fjGejB=fjG+ejB;
|
||||
ejB_fjG=ejB-fjG;
|
||||
eiGfiB=eiG+fiB;
|
||||
eiG_fiB=eiG-fiB;
|
||||
eiB_fiG=eiB-fiG;
|
||||
fiGeiB=fiG+eiB;
|
||||
dP2_ei_t=(4*eiG.*T-ejG_fjB).*y1(transI)-ejGfjB.*y1(transJ);
|
||||
dP2_ej_t=-eiGfiB.*y1(transI)-eiG_fiB.*y1(transJ);
|
||||
dQ2_ei_t=(-4*eiB.*T+fjGejB).*y2(transI)+ejB_fjG.*y2(transJ);
|
||||
dQ2_ej_t=eiB_fiG.*y2(transI)+fiGeiB.*y2(transJ);
|
||||
HSdh_et=sparse(1:transNum,transI,dP2_ei_t+dQ2_ei_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_ej_t+dQ2_ej_t,transNum,nodeNum);%功率方程先对Zt求偏导,再对电压实部求偏导模块
|
||||
dP2_fi_t=(4*fiG.*T-fjGejB).*y1(transI)+ejB_fjG.*y1(transJ);
|
||||
dP2_fj_t=eiB_fiG.*y1(transI)-fiGeiB.*y1(transJ);
|
||||
dQ2_fi_t=(-4*fiB.*T-ejG_fjB).*y2(transI)+ejGfjB.*y2(transJ);
|
||||
dQ2_fj_t=eiGfiB.*y2(transI)-eiG_fiB.*y2(transJ);
|
||||
HSdh_ft=sparse(1:transNum,transI,dP2_fi_t+dQ2_fi_t,transNum,nodeNum)+sparse(1:transNum,transJ,dP2_fj_t+dQ2_fj_t,transNum,nodeNum);%功率方程先对Zt求偏导,再对电压虚部求偏导模块
|
||||
HSdh_eft=[HSdh_et HSdh_ft];
|
||||
HSdh_tef=HSdh_eft';
|
||||
HSdhPQ=sparse(pgvNum,2*nodeNum); %功率方程先对PG、QR求偏导,再对其他变量求偏导的部分
|
||||
d2hcap_e=sparse(1:capNum,capI,2*e(capI).*capBi_dBci.*y2(capI),capNum,nodeNum); %功率方程先对Zb求偏导,再对e求偏导的部分
|
||||
d2hcap_f=sparse(1:capNum,capI,2*f(capI).*capBi_dBci.*y2(capI),capNum,nodeNum); %功率方程先对Zb求偏导,再对f求偏导的部分
|
||||
HSdhcap_ef=[d2hcap_e d2hcap_f];
|
||||
d2htPQ_ef=[HSdh_eft;HSdhPQ;HSdhcap_ef];
|
||||
HSdhtPQ=[HSdhT d2htPQ_ef];
|
||||
HSdhx1=sparse(m,pgvNum);
|
||||
%潮流方程海森矩阵
|
||||
diagy1=sparse(1:nodeNum,1:nodeNum,y1,nodeNum,nodeNum);
|
||||
diagy2=sparse(1:nodeNum,1:nodeNum,y2,nodeNum,nodeNum);
|
||||
HSdhey=-diagy1*G+diagy2*B+(-G*diagy1+B*diagy2);
|
||||
HSdhefy=diagy1*B+diagy2*G-(B*diagy1+G*diagy2);
|
||||
HSdhx2=[HSdhey HSdhefy;HSdhefy' HSdhey];
|
||||
HSdhx=[HSdhtPQ;HSdh_tef HSdhx1 HSdhcap_ef' HSdhx2];
|
||||
%形成不等式约束二阶偏导的矩阵▽2g(x)*(z+w)
|
||||
ZWcl=z(gtransNum+pgvNum+gcapNum+nodeNum+1:end)+w(gtransNum+pgvNum+gcapNum+nodeNum+1:end);
|
||||
ZWv=z(gtransNum+pgvNum+gcapNum+1:gtransNum+pgvNum+gcapNum+nodeNum)+w(gtransNum+pgvNum+gcapNum+1:gtransNum+pgvNum+gcapNum+nodeNum);
|
||||
dg2T=((e(transI).^2+f(transI).^2-e(transI).*e(transJ)-f(transI).*f(transJ)).*transG.*d2T_Zt2+...
|
||||
(e(transI).*f(transJ)-e(transJ).*f(transI)).*transB.*d2T_Zt2).*ZWcl(lineNum-transNum+1:end);
|
||||
HSdg2T=sparse(1:transNum,1:transNum,dg2T,transNum,transNum); %不等式对Zt求二次偏导模块
|
||||
dgeiT=((2*e(transI)-e(transJ)).*transGmut+f(transJ).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgejT=(-e(transI).*transGmut-f(transI).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgeT=sparse(1:transNum,transI,dgeiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgejT,transNum,nodeNum);%不等式约束先对Zt求偏导,再对e求偏导的模块
|
||||
dgfiT=((2*f(transI)-f(transJ)).*transGmut-e(transJ).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfjT=(-f(transI).*transGmut+e(transI).*transBmut).*ZWcl(lineNum-transNum+1:end);
|
||||
dgfT=sparse(1:transNum,transI,dgfiT,transNum,nodeNum)+sparse(1:transNum,transJ,dgfjT,transNum,nodeNum);%不等式约束先对Zt求偏导,再对f求偏导的模块
|
||||
HSdgefT=[dgeT dgfT];
|
||||
HSdgT=[HSdg2T sparse(transNum,pgvNum+capNum) HSdgefT];
|
||||
HSdgee=sparse(lineI,lineI,2*GIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineI,lineJ,GIJ.*ZWcl,nodeNum,nodeNum)-...
|
||||
sparse(lineJ,lineI,GIJ.*ZWcl,nodeNum,nodeNum)+sparse(1:nodeNum,1:nodeNum,2*ZWv,nodeNum,nodeNum);
|
||||
HSdgff=HSdgee; %所有不等式约束对e、f求二次偏导模块
|
||||
HSdgef=sparse(lineI,lineJ,BIJ.*ZWcl,nodeNum,nodeNum)-sparse(lineJ,lineI,BIJ.*ZWcl,nodeNum,nodeNum);
|
||||
HSdgfe=HSdgef';
|
||||
HSdgx1=[HSdgee HSdgef;HSdgfe HSdgff];
|
||||
HSdgxtPQ_0=sparse(pgvNum+capNum,xNum);
|
||||
HSdgef_0=[HSdgefT' sparse(2*nodeNum,pgvNum+capNum)];
|
||||
HSdgx=[HSdgT;HSdgxtPQ_0;HSdgef_0 HSdgx1]; %合成不等式约束海森矩阵
|
||||
%求和形成H(.)矩阵.
|
||||
dgxT=dgx'; %求dgx的转置
|
||||
MULdgx=dgx*(UW-LZ)*dgxT;
|
||||
H=HSdhx+HSdgx-HSdfx+MULdgx; %求和形成H(.)矩阵.
|
||||
%% 根据以上所求的各个矩阵合成海森伯矩阵
|
||||
HSB0=sparse(m,m);
|
||||
HSB=[H dhx;dhx' HSB0];
|
||||
balN=transNum+pgvNum+capNum+nodeNum+balNode;
|
||||
HSB(balN,:)=0; %保持平衡节点电压虚部不变,始终为0,即将海森矩阵中平衡节点虚部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN)=0;
|
||||
HSB_balN=sub2ind(size(HSB),balN,balN);
|
||||
HSB(HSB_balN)=ones(balNum,1);
|
||||
balN1=transNum+pgvNum+capNum+balNode;
|
||||
HSB(balN1,:)=0; %保持平衡节点电压实部不变,始终为0,即将海森矩阵中平衡节点实部所对应的行列元素置0,对角元素置1
|
||||
HSB(:,balN1)=0;
|
||||
HSB_balN1=sub2ind(size(HSB),balN1,balN1);
|
||||
HSB(HSB_balN1)=ones(balNum,1);
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
function [x,secondBegin,mut,oneTrans,Zt,tij,Tn,kt0,r,l,u,z,w,y,oneCap,capKn,Bci,Zb,mub,q0,Tn1,capKn1,Kn,capK,firstT,firstcapK,firstfx,firstV,Gap]=...
|
||||
snd_setting(x,secondBegin,transNum,T,transKmin,transKmax,r,m,capNum,capK,pgvNum,mu0,capBi,fx,e,f)
|
||||
%程序功能:连续化处理过程重新初始化
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 保留预计算结果
|
||||
firstT=T;
|
||||
firstcapK=capK;
|
||||
firstfx=fx;
|
||||
firstV=sqrt(e.^2+f.^2);
|
||||
%% 连续化处理阶段赋初值
|
||||
secondBegin=secondBegin-1;
|
||||
oneTrans=ones(transNum,1);
|
||||
oneCap=ones(capNum,1);
|
||||
mut=oneTrans*mu0; %Zt对应的陡度参数初值
|
||||
mub=oneCap*mu0; %Zb对应的陡度参数初值
|
||||
maxTap=5; %变压器最大调节档位
|
||||
K=1./T; %变压器采用的是k:1模型,但是为了推导公式方便将T=1/k代入公式中,在获取实际变比时要转化回来
|
||||
Kmax=1./transKmin;
|
||||
Kmin=1./transKmax;
|
||||
kt0=(Kmax-Kmin)/(maxTap-1); %变压器单位调节幅度
|
||||
Kn=fix((K-Kmin)./kt0).*kt0+Kmin; %获取变压器变量连续最优解左右两侧档位对应的变比
|
||||
Kn1=Kn+kt0;
|
||||
Tn=1./Kn1;
|
||||
Tn1=1./Kn;
|
||||
kt0=Tn1-Tn;
|
||||
|
||||
q0=1; %电容器档位的单位调节幅度
|
||||
capK=capK./capBi; %由于在预计算中capK是表示投入电容器的容量,而这里是要将其转为投入电容器的档位
|
||||
capKn=floor(capK);
|
||||
capKn1=capKn+q0;
|
||||
tij=(T-Tn)./kt0; %经过预计算后,对离散量的求解转变为求解0-1变量
|
||||
Bci=(capK-capKn)/q0;
|
||||
Zt=mut.*log(tij./(oneTrans-tij)); %变比对应的新引入连续变量
|
||||
Zb=mub.*log(Bci./(oneCap-Bci)); %电容电抗器对应的新引入的连续变量
|
||||
x(1:transNum)=Zt; %在连续化处理阶段,所求的变量不再是原来的离散变量,而是新引入的连续变量
|
||||
x(transNum+pgvNum+1:transNum+pgvNum+capNum)=Zb;
|
||||
%% 连续化处理阶段重新给松弛因子和拉格朗日乘子赋初值
|
||||
l=ones(r,1);
|
||||
u=l;
|
||||
z=l;
|
||||
w=-l;
|
||||
y=sparse(m,1);
|
||||
Gap=l'*z-u'*w;
|
||||
|
|
@ -0,0 +1,77 @@
|
|||
function [z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,G,B,Zt,tij,Zb,Bci,capK,mut,mub]=snd_solve(HSB,const,mu,r,nodeNum,pgNum,pvNum,pgvNum,xNum,transNum,pgNode,pvNode,...
|
||||
Pg,Qg,m,x,y,z,l,u,w,Lz,Lw,LZ,UW,dgxT,L1,U1,G,B,transI,transJ,T,transG1,transB1,kt0,Tn,mut,oneTrans,q0,capKn,mub,oneCap,capK,capNum,capI,capBi)
|
||||
%程序功能:连续化处理过程,求解修正方程
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 求解方程,求出各变量的修正量
|
||||
dX=-HSB\const;
|
||||
dx=dX(1:xNum,1);
|
||||
dy=dX(xNum+1:xNum+m,1);
|
||||
dl=dgxT*dx+Lz;
|
||||
du=-dgxT*dx-Lw;
|
||||
Ll=(l.*z-mu*ones(r,1));
|
||||
Lu=(u.*w+mu*ones(r,1));
|
||||
diagZ=sparse(1:r,1:r,z,r,r);
|
||||
diagW=sparse(1:r,1:r,w,r,r);
|
||||
dz=-LZ*dgxT*dx-L1*(diagZ*Lz+Ll);
|
||||
dw=UW*dgxT*dx+U1*(diagW*Lw-Lu);
|
||||
|
||||
%求最大步长
|
||||
minusdz=find(dz<0);
|
||||
dzmin=min(-z(minusdz)./dz(minusdz));
|
||||
minusdl=find(dl<0);
|
||||
dlmin=min(-l(minusdl)./dl(minusdl));
|
||||
minusdw=find(dw>0);
|
||||
dwmin=min(-w(minusdw)./dw(minusdw));
|
||||
minusdu=find(du<0);
|
||||
dumin=min(-u(minusdu)./du(minusdu));
|
||||
ap=min(dlmin,dumin);
|
||||
ad=min(dzmin,dwmin);
|
||||
stepp=0.9995*min(ap,1);
|
||||
stepd=0.9995*min(ad,1);
|
||||
|
||||
%更新变量
|
||||
x=x+stepp*dx;
|
||||
l=l+stepp*dl;
|
||||
u=u+stepp*du;
|
||||
y=y+stepd*dy;
|
||||
z=z+stepd*dz;
|
||||
w=w+stepd*dw;
|
||||
|
||||
%保留上一次计算的变比,用于修正节点导纳矩阵
|
||||
Tlast=T;
|
||||
capKlast=capK;
|
||||
|
||||
%给控制变量、状态变量重新赋值
|
||||
Zt=x(1:transNum,1);
|
||||
Zb=x(transNum+pgvNum+1:transNum+pgvNum+capNum);
|
||||
tij=oneTrans;
|
||||
Bci=oneCap;
|
||||
n_zt= Zt<0;
|
||||
p_zt= Zt>=0;
|
||||
tij(n_zt)=exp(Zt(n_zt)./mut(n_zt))./(exp(Zt(n_zt)./mut(n_zt))+oneTrans(n_zt));%为了避免计算机溢出,对Zt为正为负时,分开表达式计算,两种表达式等价
|
||||
tij(p_zt)=oneTrans(p_zt)./(oneTrans(p_zt)+exp(-Zt(p_zt)./mut(p_zt)));
|
||||
n_zb= Zb<0;
|
||||
p_zb= Zb>=0;
|
||||
Bci(n_zb)=exp(Zb(n_zb)./mub(n_zb))./(exp(Zb(n_zb)./mub(n_zb))+oneCap(n_zb));
|
||||
Bci(p_zb)=oneCap(p_zb)./(oneCap(p_zb)+exp(-Zb(p_zb)./mub(p_zb)));
|
||||
T=Tn+tij.*kt0; %根据Sigmoid函数更新T和capK
|
||||
capK=capKn+Bci.*q0;
|
||||
|
||||
PG(pgNode,1)=x(transNum+1:transNum+pgNum,1);
|
||||
QR(pvNode,1)=x(transNum+pgNum+1:transNum+pgNum+pvNum,1);
|
||||
e=x(transNum+pgNum+pvNum+capNum+1:transNum+pgNum+pvNum+capNum+nodeNum,1);
|
||||
f=x(transNum+pgNum+pvNum+capNum+nodeNum+1:xNum,1);
|
||||
Pg(pgNode)=PG(pgNode);
|
||||
Qg(pvNode)=QR(pvNode);
|
||||
|
||||
%% 变比变化后需修正节点导纳矩阵
|
||||
transG=transG1;
|
||||
transB=transB1;
|
||||
G=G-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transG,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transG.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transG.*(T-Tlast),nodeNum,nodeNum);
|
||||
B=B-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transB,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(capI,capI,(capK-capKlast).*capBi,nodeNum,nodeNum);
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
function [z,l,u,w,x,y,PG,QR,Pg,Qg,e,f,T,capK,G,B]=solve(HSB,const,mu,r,nodeNum,pgNum,pvNum,xNum,transNum,capNum,capI,capK,pgNode,pvNode,...
|
||||
Pg,Qg,m,x,y,z,l,u,w,Lz,Lw,LZ,UW,dgxT,L1,U1,G,B,transI,transJ,T,transG1,transB1)
|
||||
%程序功能:预计算过程,求解修正方程
|
||||
%编写时间:2010年10月
|
||||
|
||||
%% 求解方程,求出各变量的修正量
|
||||
dX=-HSB\const;
|
||||
dx=dX(1:xNum,1);
|
||||
dy=dX(xNum+1:xNum+m,1);
|
||||
dl=dgxT*dx+Lz;
|
||||
du=-dgxT*dx-Lw;
|
||||
Ll=(l.*z-mu*ones(r,1));
|
||||
Lu=(u.*w+mu*ones(r,1));
|
||||
diagZ=sparse(1:r,1:r,z,r,r);
|
||||
diagW=sparse(1:r,1:r,w,r,r);
|
||||
dz=-LZ*dgxT*dx-L1*(diagZ*Lz+Ll);
|
||||
dw=UW*dgxT*dx+U1*(diagW*Lw-Lu);
|
||||
|
||||
%% 求最大步长
|
||||
minusdz=find(dz<0);
|
||||
dzmin=min(-z(minusdz)./dz(minusdz));
|
||||
minusdl=find(dl<0);
|
||||
dlmin=min(-l(minusdl)./dl(minusdl));
|
||||
minusdw=find(dw>0);
|
||||
dwmin=min(-w(minusdw)./dw(minusdw));
|
||||
minusdu=find(du<0);
|
||||
dumin=min(-u(minusdu)./du(minusdu));
|
||||
|
||||
ap=min(dlmin,dumin);
|
||||
ad=min(dzmin,dwmin);
|
||||
stepp=0.9995*min(ap,1);
|
||||
stepd=0.9995*min(ad,1);
|
||||
|
||||
%更新变量
|
||||
x=x+stepp*dx;
|
||||
l=l+stepp*dl;
|
||||
u=u+stepp*du;
|
||||
y=y+stepd*dy;
|
||||
z=z+stepd*dz;
|
||||
w=w+stepd*dw;
|
||||
|
||||
%保留上一次计算的变比,用于修正节点导纳矩阵
|
||||
Tlast=T;
|
||||
capKlast=capK;
|
||||
|
||||
%给控制变量、状态变量重新赋值
|
||||
T=x(1:transNum,1);
|
||||
PG(pgNode,1)=x(transNum+1:transNum+pgNum,1);
|
||||
QR(pvNode,1)=x(transNum+pgNum+1:transNum+pgNum+pvNum,1);
|
||||
capK=x(transNum+pgNum+pvNum+1:transNum+pgNum+pvNum+capNum,1);
|
||||
e=x(transNum+pgNum+pvNum+capNum+1:transNum+pgNum+pvNum+capNum+nodeNum,1);
|
||||
f=x(transNum+pgNum+pvNum+capNum+nodeNum+1:xNum,1);
|
||||
Pg(pgNode)=PG(pgNode);
|
||||
Qg(pvNode)=QR(pvNode);
|
||||
|
||||
%% 变比变化后需修正节点导纳矩阵
|
||||
transG=transG1;
|
||||
transB=transB1;
|
||||
G=G-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transG,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transG.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transG.*(T-Tlast),nodeNum,nodeNum);
|
||||
B=B-sparse(transI,transI,(T.*T-Tlast.*Tlast).*transB,nodeNum,nodeNum)...
|
||||
+sparse(transI,transJ,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(transJ,transI,transB.*(T-Tlast),nodeNum,nodeNum)...
|
||||
+sparse(capI,capI,(capK-capKlast),nodeNum,nodeNum);
|
||||
Loading…
Reference in New Issue