資源簡介
采用切線逼近方法求解IEEE14節點電力系統多目標的無功優化問題,目標為發電機無功總出力和網損。好用的matlab代碼。

代碼片段和文件信息
function?[fxmin?xmin]?=?ORPD_30bus()
clc
clear?all
warning?off?all
global?Ybus?Yf?Yt;
%%?define?named?indices?into?bus?gen?branch?matrices
[PQ?PV?REF?NONE?BUS_I?BUS_TYPE?PD?QD?GS?BS?BUS_AREA?VM?...
????VA?base_KV?ZONE?VMAX?VMIN?LAM_P?LAM_Q?MU_VMAX?MU_VMIN]?=?idx_bus;?
[F_BUS?T_BUS?BR_R?BR_X?BR_B?RATE_A?RATE_B?RATE_C?...
????TAP?SHIFT?BR_STATUS?PF?QF?PT?QT?MU_SF?MU_ST?...
????ANGMIN?ANGMAX?MU_ANGMIN?MU_ANGMAX]?=?idx_brch;
[GEN_BUS?PG?QG?QMAX?QMIN?VG?Mbase?GEN_STATUS?PMAX?PMIN?...
????MU_PMAX?MU_PMIN?MU_QMAX?MU_QMIN?PC1?PC2?QC1MIN?QC1MAX?...
????QC2MIN?QC2MAX?RAMP_AGC?RAMP_10?RAMP_30?RAMP_Q?APF]?=?idx_gen;
[baseMVA?bus?gen?branch?areas?gencost]=case_ieee30;?%Input?data?of?IEEE?30?bus?test?system
%?Determine?the?value?of?weight?change
w_start?=?1;???%Initial?inertia?weight‘s?value
w_end?=?0.20;???????%Final?inertia?weight
w_varyfor?=?floor(0.7*100);?
w_now?=?w_start;
inertdec?=?(w_start-w_end)/w_varyfor;?%Inertia?weight‘s?change?per?iteration
iter=0;
%?Initialize?size?of?Swarm?no.?of?control?varialbes?and?Velocity
%size?of?swarm=50?(user?may?change?it)?no.?of?control?variables=vg1?vg2
%vg5vg8?vg11?vg13?(Generator?bus?voltage?in?pu)?T1?T2?T3?T4
%(Transformer?tap?position)?QC3?QC10?QC24?(Injected?reactive?power?of
%capacitors?in?MVAR)
Swarm=[unifrnd(0.901.10506)unifrnd(0.951.05504)unifrnd(120503)];?
VStep?=[unifrnd(0.040.04506)unifrnd(0.0020.002504)?unifrnd(44503)];
for?i=1:50?%?no?of?particles
????global?bus?gen?branch?v1?v2?v5?v8?v11?v13
????v1=Swarm(i1);
????v2=Swarm(i2);
????v5=Swarm(i3);
????v8=Swarm(i4);
????v11=Swarm(i5);
????v13=Swarm(i6);
????bus(1VM)=Swarm(i1);?
????bus(2VM)=Swarm(i2);
????bus(5VM)=Swarm(i3);
????bus(8VM)=Swarm(i4);
????bus(11VM)=Swarm(i5);
????bus(13VM)=Swarm(i6);
????gen(1VG)=Swarm(i1);?%?gen1
????gen(2VG)=Swarm(i2);?%gen2
????gen(3VG)=Swarm(i3);??%gen5
????gen(4VG)=Swarm(i4);??%gen8
????gen(5VG)=Swarm(i5);??%gen11
????gen(6VG)=Swarm(i6);??%gen13
????
????branch(11TAP)=Swarm(i7);%?T1?transformer?tap
????branch(12TAP)=Swarm(i8);?%T2
????branch(15TAP)=Swarm(i9);?%T3
????branch(36TAP)=Swarm(i10);?%T4
????bus(3BS)=Swarm(i11);?%?QC3?capacitor
????bus(10BS)=Swarm(i12);?%?QC10?capacitor
????bus(24BS)=Swarm(i13);?%?QC24?capacitor
???
?????????global?bus?gen?branch?Yf?Yt?Ybus
????????[Ybus?Yf?Yt]?=?makeYbus(baseMVA?bus?branch);%?construct?Ybus
????????[MVAbasebusgenbranchsuccesset]=runpf;?%?run?NR?load?flow
?????????global?V
????global?Ybus
????bbb=branch(:[PFQF]).^2;?%?ans.?is?P(from)^2?Q(from)^2
????ccc=bbb‘;?
????ddd=(sum(ccc))‘;
????eee=sqrt(ddd);??%actual?values?of?apparent?powers?“From?bus?injection“?
????
????fff=branch(:[PTQT]).^2;
????ggg=fff‘;
????hhh=(sum(ggg))‘;
????iii=sqrt(hhh);?%actual?values?of?apparent?powers?“To?bus?injection“?
????jjj=[];
????for?count_1=1:41?%?j
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????12082??2013-04-11?19:44??ORPD_30bus.m
?????文件??????160256??2013-04-12?14:43??ORPD_introduction.doc
?????文件????????1313??2013-04-12?05:50??license.txt
評論
共有 條評論