版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目錄</b></p><p><b> 摘要1</b></p><p> 1.任務(wù)及題目要求2</p><p><b> 2.計(jì)算原理3</b></p><p> 2.1牛頓—拉夫遜法簡介3</p><p>
2、 2.2牛頓—拉夫遜法的幾何意義7</p><p><b> 3計(jì)算步驟7</b></p><p><b> 4.結(jié)果分析9</b></p><p><b> 小結(jié)11</b></p><p><b> 參考文獻(xiàn)12</b></p
3、><p><b> 附錄:源程序13</b></p><p> 本科生課程設(shè)計(jì)成績評定表33</p><p><b> 摘要</b></p><p> 電力系統(tǒng)的出現(xiàn),使高效,無污染,使用方便,易于調(diào)控的電能得到廣泛應(yīng)用,推動了社會生產(chǎn)各個領(lǐng)域的變化,開創(chuàng)了電力時代,發(fā)生率第二次技術(shù)革命。電
4、力系統(tǒng)的規(guī)模和技術(shù)水準(zhǔn)已經(jīng)成為一個國家經(jīng)濟(jì)發(fā)展水平的標(biāo)志之一。</p><p> 電力系統(tǒng)穩(wěn)態(tài)分析包括潮流計(jì)算和靜態(tài)安全分析。電力系統(tǒng)潮流計(jì)算是電力系統(tǒng)最基本的計(jì)算,也是最重要的計(jì)算。所謂潮流計(jì)算,就是已知電網(wǎng)的接線方式與參數(shù)及運(yùn)行條件,計(jì)算電力系統(tǒng)穩(wěn)態(tài)運(yùn)行各母線電壓、個支路電流與功率及網(wǎng)損。對于正在運(yùn)行的電力系統(tǒng),通過潮流計(jì)算可以判斷電網(wǎng)母線電壓、支路電流和功率是否越限,如果有越限,就應(yīng)采取措施,調(diào)整運(yùn)行方式
5、。對于正在規(guī)劃的電力系統(tǒng),通過潮流計(jì)算,可以為選擇電網(wǎng)供電方案和電氣設(shè)備提供依據(jù)。潮流計(jì)算還可以為繼電保護(hù)和自動裝置定整計(jì)算、電力系統(tǒng)故障計(jì)算和穩(wěn)定計(jì)算等提供原始數(shù)據(jù)。</p><p> 在電力系統(tǒng)運(yùn)行方式和規(guī)劃方案的研究中,都需要進(jìn)行潮流計(jì)算以比較運(yùn)行方式或規(guī)劃供電方案的可行性、可靠性和經(jīng)濟(jì)性。同時,為了實(shí)時監(jiān)控電力系統(tǒng)的運(yùn)行狀態(tài),也需要進(jìn)行大量而快速的潮流計(jì)算。因此,潮流計(jì)算是電力系統(tǒng)中應(yīng)用最廣泛、最基本和
6、最重要的一種電氣運(yùn)算。在系統(tǒng)規(guī)劃設(shè)計(jì)和安排系統(tǒng)的運(yùn)行方式時,采用離線潮流計(jì)算;在電力系統(tǒng)運(yùn)行狀態(tài)的實(shí)時監(jiān)控中,則采用在線潮流計(jì)算。</p><p> 關(guān)鍵詞:電力系統(tǒng) 潮流計(jì)算 牛頓-拉夫遜法</p><p><b> 1.任務(wù)及題目要求</b></p><p> 對如下所訴系統(tǒng)編程進(jìn)行潮流計(jì)算:</p><p>
7、 節(jié)點(diǎn)數(shù):3 支路數(shù):3 計(jì)算精度:0.00010</p><p> 支路1: 0.0300+j0.0900</p><p> 1┠—————□—————┨2</p><p> 支路2: 0.0200+j0.0900</p><p> 2┠—————□—————┨3</p><p
8、> 支路3: 0.0300+j0.0900</p><p> 3┠—————□—————┨1</p><p> 節(jié)點(diǎn)1:PQ節(jié)點(diǎn),S(1)=-0.5000-j0.2000</p><p> 節(jié)點(diǎn)2:PQ節(jié)點(diǎn),S(2)=-0.6000-j0.2500</p><p> 節(jié)點(diǎn)3:平衡節(jié)點(diǎn),U(3)=1.0000∠0.
9、0000</p><p> 經(jīng)分析可知題目所給的系統(tǒng)為三節(jié)點(diǎn)組成的環(huán)形回路,且均為線路沒有變壓器。有兩個為PQ節(jié)點(diǎn),這類節(jié)點(diǎn)的有功功率P和無功功率Q是給定的,節(jié)點(diǎn)電壓是待求量。節(jié)點(diǎn)3為平衡節(jié)點(diǎn),在潮流分布算出來以前,網(wǎng)絡(luò)中的功率損失是未知的,因此,至少要有一個節(jié)點(diǎn)的有功功率不能給定,這個節(jié)點(diǎn)承擔(dān)了系統(tǒng)的有功功率平衡,故稱之為平衡節(jié)點(diǎn)。對系統(tǒng)進(jìn)行潮流計(jì)算,要求各線路的功率分布及功率損耗,未知節(jié)點(diǎn)的電壓等,并進(jìn)行編
10、程運(yùn)行得到結(jié)果。</p><p><b> 2.計(jì)算原理</b></p><p> 潮流計(jì)算是電力系統(tǒng)分析中的一種最基本的計(jì)算,它的任務(wù)是對給定的運(yùn)行條件確定系統(tǒng)的運(yùn)行狀態(tài),如各母線上的電壓(幅值及相角),網(wǎng)絡(luò)中的功率分布及功率損耗等。常用的計(jì)算潮流分析的方法有牛頓—拉夫遜法,P—Q分解法等。本次設(shè)計(jì)采用牛頓—拉夫遜法進(jìn)行計(jì)算。</p><p&
11、gt; 牛頓—拉夫遜法(簡稱牛頓法)在數(shù)學(xué)上是求解非線性代數(shù)方程式的有效方法,其要點(diǎn)是把非線性方程式的求解過程變成反復(fù)地對相應(yīng)的線性方程式進(jìn)行求解的過程,即通常所稱的逐次線性化過程。</p><p> 2.1牛頓—拉夫遜法簡介</p><p> 牛頓—拉夫遜法(Newton—Raphson法)是求解非線性方程代數(shù)方程組的有效迭代計(jì)算方法。在牛頓—拉夫遜法的每一次迭代過程中,對非線性方
12、程通過線性化處理逐步近似。下面以單變量加以說明。</p><p> 設(shè)有單變量非線性方程</p><p><b> (2-1)</b></p><p> 求解此方程時。先給出解的近似值它與真解的誤差為,則將滿足方程,即</p><p><b> (2-2)</b></p>&l
13、t;p> 將(2-2)式左邊的函數(shù)在附近展成泰勒級數(shù),于是便得</p><p><b> ?。?-3)</b></p><p> 式中,……分別為函數(shù)在處的一階導(dǎo)數(shù),….,n階導(dǎo)數(shù)。</p><p> 如果差值很小,2-3式右端的二次及以上階次的各項(xiàng)均可略去。于是,2-3便簡化為</p><p> =0
14、 (2-4)</p><p> 這是對于變量的修正量的現(xiàn)行方程式,亦稱修正方程式。解此方程可得修正量 </p><p><b> (2-5)</b></p><p> 用所求的去修正近似解,變得</p><p><b> (2-6)</b></p><p>
15、 由于2-6是略去高次項(xiàng)的簡化式,因此所解出的修正量也只是近似值。修正后的近似解同真解仍然有誤差。但是,這樣的迭代計(jì)算可以反復(fù)進(jìn)行下去,迭代計(jì)算的通式是</p><p><b> (2-7)</b></p><p> 迭代過程的收斂判據(jù)為</p><p><b> (2-8)</b></p><
16、p> 或 (2-9)</p><p> 式中,為預(yù)先給定的小正數(shù)。</p><p> 這種解法的幾何意義可以從圖1得到說明。函數(shù)y=f(x)為圖中的曲線。f(x)=0的解相當(dāng)于曲線與x軸的交點(diǎn)。如果第k次迭代中得到,則過點(diǎn)作一切線,此切線同x軸的交點(diǎn)便確定了下一個近似值。由此可見,牛頓-拉夫遜法
17、實(shí)質(zhì)上就是切線法,是一種逐步線性化的方法。</p><p> 應(yīng)用牛頓法求解多變量非線性方程組2-1時,假定已給出各變量的初值,…. ,令,,….. 分別為各變量的修正量,使其滿足方程</p><p><b> (2-10)</b></p><p> 將上式中的n個多元函數(shù)在初始值附近分別展成泰勒級數(shù),并略去含有,,……,二次及以上階次的
18、各項(xiàng),便得</p><p><b> .</b></p><p><b> (2-11)</b></p><p> 方程式2-11也可以寫成矩陣形式</p><p><b> (2-12)</b></p><p> 方程式2-11是對于修正量,
19、,……, 的線性方程組,稱為牛頓法的修正方程式.利用高斯消去法或三角分解法可以解出修正量,,……,。然后對初始近似值進(jìn)行修正</p><p> (i=1,2,….,n) (2-13)</p><p> 如此反復(fù)迭代,在進(jìn)行k+1次迭代時,從求解修正方程式</p><p><b> (2-14)</b><
20、;/p><p> 得到修正量,,,并對各變量進(jìn)行修正</p><p> (i=1,2,…,n) (2-15)</p><p><b> 也可以縮寫為</b></p><p><b> (2-16)</b></p><p> 和
21、 (2-17) </p><p> 式中的X和分別是由n個變量和修正量組成的n維列向量;F(X)是由n個多元函數(shù)組成的n維列項(xiàng)量;J是n階方陣,稱為雅可比矩陣,它的第i、j個元素是第n個函數(shù)對第j個變量的偏導(dǎo)數(shù);上角標(biāo)(k)表示陣的每一個元素都在點(diǎn)處取值。迭代過程一直到滿足收斂判據(jù)</p><p> (2-18)
22、 或 (2-19)</p><p> 為止。和為預(yù)先給定的小正數(shù)。</p><p> 將牛頓-拉夫遜法用于潮流計(jì)算,要求將潮流方程寫成形如方程式2-1的形式。由于節(jié)點(diǎn)電壓可以采用不同的坐標(biāo)系表示,牛頓-拉夫遜法潮流計(jì)算也將相應(yīng)的采用不同的
23、計(jì)算公式。</p><p> 2.2牛頓—拉夫遜法的幾何意義</p><p> 牛頓-拉夫遜法幾何意義:</p><p> 圖中為假設(shè)的初始值它和真值之間的差值</p><p> 為:,然后求得:,其與真值之間的</p><p> 差值為:。如此類推,求得逼近真值</p><p>&l
24、t;b> 。</b></p><p> 圖1牛頓法的幾何解釋</p><p><b> 3計(jì)算步驟</b></p><p> 用牛頓—拉夫遜法計(jì)算電力系統(tǒng)潮流的基本步驟:</p><p> 求解過程大致可以分為以下步驟:</p><p> (1)形成節(jié)點(diǎn)導(dǎo)納矩陣;&l
25、t;/p><p> (2)將各節(jié)點(diǎn)電壓設(shè)初值 ;</p><p> (3)將節(jié)點(diǎn)初值代入相關(guān)求式,求出修正方程式的常數(shù)項(xiàng)向量;</p><p> (4)將節(jié)點(diǎn)電壓初值代入求式,求出雅可比矩陣元素;</p><p> (5)求解修正方程,求修正向量;</p><p> (6)求取節(jié)點(diǎn)電壓的新值;</p>
26、<p> (7)檢查是否收斂,如不收斂,則以各節(jié)點(diǎn)電壓的新值作為初值自第3步重新開始進(jìn)行狹義次迭代,否則轉(zhuǎn)入下一步;</p><p> (8)計(jì)算支路功率分布,節(jié)點(diǎn)無功功率和平衡節(jié)點(diǎn)功率。</p><p> 圖2中示出牛頓拉夫遜法計(jì)算潮流的程序框圖。</p><p><b> 圖2計(jì)算流程圖</b></p>
27、<p><b> 4.結(jié)果分析</b></p><p> 經(jīng)過用C語言編程運(yùn)算得到第一次迭代結(jié)果為:</p><p><b> 節(jié)點(diǎn)導(dǎo)納矩陣為:</b></p><p> 6.66667+j-20.00000-3.33333+j10.00000-3.33333+j10.00000</p>
28、<p> -3.33333+j10.00000 5.68627+j-20.58824-2.35294+j10.58824</p><p> -3.33333+j10.00000-2.35294+j10.58824 5.68627+j-20.58824</p><p> Gauss_Seidel迭代結(jié)果:</p><p> 第1次迭代
29、PQ節(jié)點(diǎn)e及f的值:0.983500 -0.019500</p><p> 第1次迭代PQ節(jié)點(diǎn)e及f的值:0.973610 -0.033997</p><p> 第2次迭代PQ節(jié)點(diǎn)e及f的值:0.969642 -0.036485</p><p> 第2次迭代PQ節(jié)點(diǎn)e及f的值:0.965875 -0.042673</p><
30、p> Jacobi 矩陣:</p><p> 19.31452 6.80237-9.57480-3.59699</p><p> -7.5856018.98468 3.59699-9.57480</p><p> -9.51651-3.6463119.92097 5.76424</p><p> 3.6463
31、1-9.51651-6.9773519.36506</p><p><b> 不平衡值:</b></p><p><b> -0.114256</b></p><p><b> -0.054375</b></p><p><b> -0.002280&l
32、t;/b></p><p><b> -0.007412</b></p><p><b> 輸出 df,de</b></p><p> 節(jié)點(diǎn)為 1 的電壓不平衡值: df=-0.00508 de=-0.00267</p><p> 節(jié)點(diǎn)為 2 的電壓不平衡值: df=-
33、0.00006 de=-0.00037</p><p> -輸出迭代過程中的電壓值</p><p> 節(jié)點(diǎn)為 1 的電壓修正新值: f=-0.04156 e= 0.96698</p><p> 節(jié)點(diǎn)為 2 的電壓修正新值: f=-0.04273 e= 0.96551</p><p> 還不能達(dá)到題
34、目中的精度要求,繼續(xù)進(jìn)行迭代,經(jīng)6次迭代后得到結(jié)果。</p><p><b> 各節(jié)點(diǎn)電壓為:</b></p><p> U[1]=0.963186 + j-0.042323</p><p> U[2]=0.962333 + j-0.045732</p><p> U[3]=1.000000 + j0.00000
35、0</p><p><b> 平衡節(jié)點(diǎn)功率為:</b></p><p> S[3]=1.118788+j0.518288</p><p><b> 輸電線路功率如下:</b></p><p> ***** 輸電線路1-2的功率: 0.035453 + j-0.004289</p>
36、<p> ***** 輸電線路2-1的功率: -0.035412 + j0.004412</p><p> ***** 輸電線路2-3的功率: -0.564587 + j-0.254058</p><p> ***** 輸電線路3-2的功率: 0.572847 + j0.291225</p><p> ***** 輸電線路3-1的功率: 0.5
37、45942 + j0.227063</p><p> ***** 輸電線路1-3的功率: -0.535453 + j-0.195598</p><p> 輸電線路上損耗的功率為:</p><p> ***** 輸電線路1-2上的功率損耗: 0.000041 + j 0.000123</p><p> ***** 輸電線路2-3上的功
38、率損耗: 0.008259 + j 0.037167</p><p> ***** 輸電線路3-1上的功率損耗: 0.010488 + j 0.031465</p><p> 網(wǎng)絡(luò)總損耗: 0.018789 + j 0.068755</p><p> 結(jié)果滿足了題目中所需的精度要求,并且計(jì)算出了潮流計(jì)算要求的各節(jié)點(diǎn)電壓,網(wǎng)絡(luò)中的功率分布及功率損耗。<
39、;/p><p><b> 小結(jié)</b></p><p> 在這次課程設(shè)計(jì)中,我強(qiáng)烈感覺到自己在很多方面的不足,對別人的依賴性比較強(qiáng)。我想我會在以后的學(xué)習(xí)中不斷去發(fā)現(xiàn)自己的不足,并一一改正,希望在以后的學(xué)習(xí)中不要犯同樣的錯誤。</p><p> 在這次課程設(shè)計(jì)中,我們盡量按照老師的要求做,但在具體的操作過程中,還是出現(xiàn)了很多的問題。搞完這個課程
40、設(shè)計(jì)讓我感覺電力系統(tǒng)分析是一門很有用的課程。因?yàn)槲覍λ膶W(xué)到的知識比較少。在很多時候我很多東西都不了解。并且走了很多的彎路。而且我感覺自己的知識不夠連貫。好些時候都出現(xiàn)了卡殼的情況。這次課程設(shè)計(jì)后,我一定要重新對電力系統(tǒng)分析這門課程做進(jìn)一步的了解。對在此過程中遺留下的問題做好好的研究。爭取早點(diǎn)對電力系統(tǒng)分析這門課程有個全方位的了解。為在以后的畢業(yè)課程設(shè)計(jì)中多些方案。也為我子以后走上工作崗位,提升自己的專業(yè)技能,打下扎實(shí)的基礎(chǔ)。</
41、p><p> 還有就是在十幾天的課程設(shè)計(jì)中,使我養(yǎng)成了很好的學(xué)習(xí)習(xí)慣,和對學(xué)習(xí)知識的嚴(yán)謹(jǐn)?shù)膽B(tài)度,同時也養(yǎng)成了積極查閱相關(guān)資料的好習(xí)慣,好習(xí)慣的養(yǎng)成是來之不易的,我相信在以后的學(xué)習(xí)和工作中,我將繼續(xù)保持這些良好的習(xí)慣,并積極努力的學(xué)習(xí)。讓自己更上一層樓。也感謝班上同學(xué)給了我很多寶貴的意見和參考,使我獲益很多。</p><p><b> 參考文獻(xiàn):</b></p&g
42、t;<p> [1] 何仰贊 溫增銀 電力系統(tǒng)分析 華中科技大學(xué)出版社 2006</p><p> [2] 何仰贊 溫增銀 電力系統(tǒng)分析題解 華中科技大學(xué)出版社 2006</p><p> [3] 王錫凡 現(xiàn)代電力系統(tǒng)分析 科學(xué)出版社 2004</p><p> [4] 于永源 楊綺雯 電力系統(tǒng)分析(第二版)中國電力出版社 2007&l
43、t;/p><p> [5] 薛定宇 控制系統(tǒng)計(jì)算機(jī)輔助設(shè)計(jì) 清華大學(xué)出版社 1996</p><p><b> 附錄:源程序</b></p><p> #include <stdio.h></p><p> #include <math.h></p><p> #de
44、fine M 40 /*矩陣階數(shù)*/</p><p> #define N 10 /*最大迭代次數(shù)*/</p><p> int i,j,k,a,b,l,z; /* 循環(huán)變量 */</p><p> int n, /* 節(jié)點(diǎn)數(shù) */<
45、;/p><p> m, /* 支路數(shù) */</p><p> dd, /*對地支路數(shù)*/</p><p> pq, /* PQ節(jié)點(diǎn)數(shù) */</p><p> pv, /*
46、 PV節(jié)點(diǎn)數(shù) */</p><p> byq; /* 變壓器數(shù) */</p><p> float eps, /* 精度 */</p><p> bb, /* 變比 */</p><p> max;
47、 /*指標(biāo)標(biāo)志*/</p><p> float yy[M]; /*中間變量*/</p><p> static float G[M][M],B[M][M],B1[M][M],B2[M][M],B3[M][M];</p><p> struct jiedian /* 定義節(jié)點(diǎn)結(jié)構(gòu)
48、體 */</p><p> { int num,s; /* num為節(jié)點(diǎn)號,s為節(jié)點(diǎn)類型*/</p><p> float p,q,u,f,v;</p><p> float dp,dq,df,du;</p><p> } jiedian[M];</p><p> struct
49、 zhilu /* 定義支路結(jié)構(gòu)體 */</p><p> { int num;</p><p> int p1,p2; /*支路的兩個節(jié)點(diǎn)*/</p><p> float r,x; /*支路的電阻與電抗*/</p>
50、<p> } zhilu[M];</p><p> FILE *fp1,*fp2; /*文件指針*/</p><p> void data1() /* 讀取數(shù)據(jù)函數(shù) */</p><p> { int h,numb,a,b;</p><p>
51、;<b> a=1;</b></p><p> fp1=fopen("d:\input.txt","r");</p><p> if(fp1==NULL)</p><p> { printf(" can not open file !\n");</p><p
52、><b> exit(0);</b></p><p><b> }</b></p><p> fscanf(fp1,"%d,%d,%d,%d,%d,%d,%f\n",&n,&m,&dd,&pq,&pv,&byq,&eps); /*輸入節(jié)點(diǎn)數(shù),支路數(shù),對地支路
53、數(shù),PQ節(jié)點(diǎn)數(shù),PV節(jié)點(diǎn)數(shù),變壓器數(shù)和精度*/</p><p> j=1;k=pq+1;</p><p> for(i=1;i<=n;i++) /*輸入節(jié)點(diǎn)類型的輸入功率和節(jié)電電壓初值*/</p><p><b> {</b></p><p> fscanf
54、(fp1,"%d,%d",&numb,&h);</p><p> if(h==1) /*類型h=1是PQ節(jié)點(diǎn)*/</p><p> { fscanf(fp1,",%f,%f,%f,%f\n",&jiedian[j].p,&a
55、mp;jiedian[j].q,&jiedian[j].u,&jiedian[j].f); /*輸入PQ節(jié)點(diǎn)的數(shù)據(jù)*/</p><p> jiedian[j].num=numb;</p><p> jiedian[j].s=h;</p><p><b> j++;</b></p><p><
56、;b> }</b></p><p> if(h==2) /*類型h=2是pv節(jié)點(diǎn)*/</p><p> { fscanf(fp1,",%f,%f,%f,%f\n",&jiedian[k].p,&jiedian[k].v,&j
57、iedian[k].u,&jiedian[k].f); /*輸入PV節(jié)點(diǎn)的數(shù)據(jù)*/</p><p> jiedian[k].num=numb;</p><p> jiedian[k].s=h;</p><p><b> k++;</b></p><p><b> }</b>&l
58、t;/p><p> if(h==3) /*類型h=3是平衡節(jié)點(diǎn)*/</p><p> { fscanf(fp1,",%f,%f\n",&jiedian[n].u,&jiedian[n].f); /*輸入平衡節(jié)點(diǎn)的數(shù)據(jù)*/</p>&l
59、t;p> jiedian[n].num=numb;</p><p> jiedian[n].s=h;</p><p><b> }</b></p><p><b> }</b></p><p> for(i=1;i<=m;i++)
60、 /*輸入支路阻抗*/</p><p><b> { </b></p><p> fscanf(fp1,"%d,%d,",&zhilu[i].num,&h);</p><p> if(h==0)
61、 /*輸入非變壓器支路阻抗*/</p><p> {fscanf(fp1,"%d,%d,%f,%f\n", &zhilu[i].p1,&zhilu[i].p2,&zhilu[i].r,&zhilu[i].x);</p><p><b> }</b></p><p
62、> if(h==1) /*輸入變壓器支路阻抗*/</p><p> {fscanf(fp1,"%f,%d,%d,%f,%f\n",&bb,&zhilu[i].p1,&zhilu[i].p2,&zhilu[i].r, &zhilu[i].x);</p
63、><p> zhilu[i].r=zhilu[i].r*bb;</p><p> zhilu[i].x=zhilu[i].x*bb;</p><p><b> b=m+a;</b></p><p> zhilu[b].num=b;</p><p> zhilu[b].p1=zhilu[i].
64、p1;</p><p> zhilu[b].p2=0;</p><p> zhilu[b].r=zhilu[i].r*bb/(1-bb);</p><p> zhilu[b].x=zhilu[i].x*bb/(1-bb);</p><p> zhilu[b+1].num=b</p><p> zhilu[b+
65、1].p1=zhilu[i].p2;</p><p> zhilu[b+1].p2=0;</p><p> zhilu[b+1].r=zhilu[i].r/(bb-1);</p><p> zhilu[b+1].x=zhilu[i].x/(bb-1);</p><p><b> a=a+2;</b></p&
66、gt;<p><b> }</b></p><p><b> }</b></p><p> fclose(fp1);</p><p> if((fp2=fopen("d:\output.txt","w"))==NULL)</p><p>
67、 { printf(" can not open file!\n");</p><p><b> exit(0);</b></p><p><b> }</b></p><p> fprintf(fp2,"\n\n ********* 原
68、始數(shù)據(jù) *********\n");</p><p> fprintf(fp2," ===================================================================\n")</p><p> fprintf(fp2," 節(jié)點(diǎn)數(shù):%2d 支路數(shù):%2d 對地支路數(shù):%2d
69、 變壓器數(shù):%2d \n PQ節(jié)點(diǎn)數(shù):%2d PV節(jié)點(diǎn)數(shù):%2d 精度:%f\n",n,m+2*byq,dd,byq,pq,pv,eps);</p><p> fprintf(fp2," -------------------------------------------------------------------\n");</p>&l
70、t;p> for(i=1;i<=pq;i++)</p><p> fprintf(fp2," PQ節(jié)點(diǎn) 節(jié)點(diǎn)%2d P[%d]=%+f Q[%d]=%+f\n",</p><p> jiedian[i].num,jiedian[i].num,jiedian[i].p,jiedian[i].num,jiedian[i].q
71、);</p><p> for(i=pq+1;i<=pq+pv;i++)</p><p> fprintf(fp2," PV節(jié)點(diǎn) 節(jié)點(diǎn)%2d P[%d]=%+f V[%d]=%+f\n",</p><p> jiedian[i].num,jiedian[i].num,jiedian[i].p,jiedi
72、an[i].num,jiedian[i].v);</p><p> fprintf(fp2," 平衡節(jié)點(diǎn) 節(jié)點(diǎn)%2d u[%d]=%+f f[%d]=%+f\n",</p><p> jiedian[n].num,jiedian[n].num,jiedian[n].u,jiedian[n].num,jiedian[n].f);</p
73、><p> fprintf(fp2," -------------------------------------------------------------------\n");</p><p> for(i=1;i<=m+2*byq;i++)</p><p> fprintf(fp2," 支路%2d 相關(guān)
74、節(jié)點(diǎn):%2d,%2d R=%+f X=%+f\n",</p><p> i,zhilu[i].p1,zhilu[i].p2,zhilu[i].r,zhilu[i].x);</p><p> fprintf(fp2," ===================================================================\n&q
75、uot;);</p><p><b> }</b></p><p> void form_y() /* 形成節(jié)點(diǎn)導(dǎo)納矩陣函數(shù) */</p><p><b> {</b></p><p><b> float S;</b>
76、</p><p> for(i=1;i<=m+2*byq;i++) /*節(jié)點(diǎn)導(dǎo)納矩陣的主對角線上的導(dǎo)納*/</p><p> for(j=0;j<=n;j++)</p><p> if((zhilu[i].p1==j)||(zhilu[i].p2==j))</p><p> { S=zhilu[
77、i].r*zhilu[i].r+zhilu[i].x*zhilu[i].x;</p><p> if(S==0) continue;</p><p> G[j][j]+=zhilu[i].r/S;</p><p> B[j][j]+=-zhilu[i].x/S;</p><p><b> }</b></p
78、><p> for(i=1;i<=m+2*byq;i++) /*對地導(dǎo)納*/</p><p> {j=zhilu[i].p1;</p><p> k=zhilu[i].p2;</p><p> if((j==0)||(k==0))</p><p> {S=zhilu[i].r*
79、zhilu[i].r+zhilu[i].x*zhilu[i].x;</p><p> if(S==0) {G[0][i]=B[0][i]=G[i][0]=B[i][0]=0;continue;}</p><p><b> if(j==0)</b></p><p> {G[0][k]+=zhilu[i].r/S;</p>&l
80、t;p> B[0][k]+=-zhilu[i].x/S;</p><p> G[k][0]=G[0][k];</p><p> B[k][0]=B[0][k];</p><p><b> }</b></p><p><b> if(k==0)</b></p><p
81、> {G[0][j]+=zhilu[i].r/S;</p><p> B[0][j]+=-zhilu[i].x/S;</p><p> G[j][0]=G[0][j];</p><p> B[j][0]=B[0][j];</p><p><b> } </b></p><p&g
82、t;<b> }</b></p><p><b> }</b></p><p> for(k=1;k<=m-dd;k++) /*節(jié)點(diǎn)導(dǎo)納矩陣非主對角線上的導(dǎo)納*/</p><p> { i=zhilu[k].p1;</p><p> j=zhil
83、u[k].p2;</p><p> S=zhilu[k].r*zhilu[k].r+zhilu[k].x*zhilu[k].x;</p><p> if(S==0) continue;</p><p> G[i][j]+=-zhilu[k].r/S;</p><p> B[i][j]+=zhilu[k].x/S;</p>
84、<p> G[j][i]=G[i][j];</p><p> B[j][i]=B[i][j];</p><p><b> }</b></p><p> for(i=1;i<=(pq+pv);i++) /*形成B'矩陣*/</p><p> for(j=1;j&
85、lt;=(pq+pv);j++)</p><p> B1[i][j]=B[jiedian[i].num][jiedian[j].num];</p><p> for(i=1;i<=pq;i++) /*形成B''矩陣*/</p><p> for(j=1;j<=pq;j++)</p>&
86、lt;p> B2[i][j]=B[jiedian[i].num][jiedian[j].num]; </p><p> /*輸出節(jié)點(diǎn)導(dǎo)納矩陣、系數(shù)矩陣B'、系數(shù)矩陣B''*/</p><p> fprintf(fp2,"\n\n ********* 計(jì)算結(jié)果 *********\n");&
87、lt;/p><p> fprintf(fp2,"</p><p> ===================================================================\n")</p><p> fprintf(fp2,"\n 節(jié)點(diǎn)導(dǎo)納矩陣為:");</p><p>
88、; for(i=1;i<=n;i++)</p><p> { fprintf(fp2,"\n ");</p><p> for(j=1;j<=n;j++)</p><p> fprintf(fp2,"%+8.6f+j%+8.6f ",G[i][j],B[i][j]);</p>&l
89、t;p><b> }</b></p><p> fprintf(fp2,"\n -------------------------------------------------------------\n");</p><p> fprintf(fp2,"\n 節(jié)點(diǎn)導(dǎo)納矩陣實(shí)部G為:"); </p&g
90、t;<p> for(i=1;i<=n;i++)</p><p> { fprintf(fp2,"\n ");</p><p> for(j=1;j<=n;j++)</p><p> fprintf(fp2,"%+8.6f ",G[i][j]);</p><p&
91、gt;<b> }</b></p><p> fprintf(fp2,"\n -------------------------------------------------------------\n");</p><p> fprintf(fp2,"\n 節(jié)點(diǎn)導(dǎo)納矩陣虛部B為:"); </p>
92、<p> for(i=1;i<=n;i++)</p><p> { fprintf(fp2,"\n ");</p><p> for(j=1;j<=n;j++)</p><p> fprintf(fp2,"%+8.6f ",B[i][j]);</p><p>&
93、lt;b> }</b></p><p> fprintf(fp2,"\n -------------------------------------------------------------\n");</p><p> fprintf(fp2,"\n 系數(shù)矩陣B'為:"); </p><
94、;p> for(i=1;i<=pv+pq;i++)</p><p> { fprintf(fp2,"\n ");</p><p> for(j=1;j<=pv+pq;j++)</p><p> fprintf(fp2,"%+8.6f ",B1[i][j]);</p><
95、p><b> }</b></p><p> fprintf(fp2,"\n -------------------------------------------------------------\n");</p><p> fprintf(fp2,"\n 系數(shù)矩陣B''為:"); <
96、/p><p> for(i=1;i<=pq;i++)</p><p> { fprintf(fp2,"\n ");</p><p> for(j=1;j<=pq;j++)</p><p> fprintf(fp2,"%+8.6f ",B2[i][j]);</p>
97、<p><b> }</b></p><p> fprintf(fp2,"\n ==============================================================\n");</p><p><b> }</b></p><p> void
98、gaoshi(int A,float aa[M][M],float bb[M]) /*高斯計(jì)算函數(shù)*/</p><p> {int i,j,z;</p><p><b> int k=0;</b></p><p><b> float a;</b></p><p> for(i=k+
99、1;i<A;i++)</p><p> { for(z=0;(z+i)<A;z++)</p><p> { aa[i+z][k]=aa[i+z][k]/aa[k][k]; /*校驗(yàn)過程*/</p><p> bb[i+z]=bb[i+z]-aa[i+z][k]*bb[k];</p><p> for
100、(j=k+1;j<A;j++)</p><p> {aa[i+z][j]=aa[i+z][j]-aa[i+z][k]*aa[k][j];}</p><p><b> }</b></p><p><b> k=k+1;</b></p><p><b> }</b>&
101、lt;/p><p> bb[A-1]=bb[A-1]/aa[A-1][A-1];</p><p> for(i=A-2,k=A-2;i>=0;i--)</p><p><b> {a=0;</b></p><p> for(j=i+1;j<A;j++)</p><p> {a=a
102、a[i][j]*bb[j]+a;</p><p><b> }</b></p><p> bb[i]=(bb[i]-a)/aa[i][i];</p><p><b> }</b></p><p><b> }</b></p><p> floa
103、t solve(float max) /*迭代函數(shù)*/</p><p><b> {</b></p><p> float aa[M],bb[M];</p><p> /**********************************求節(jié)點(diǎn)有功功率不平衡量dp******************
104、********************************/</p><p> for(i=1;i<=(pq+pv);i++) /*求dp*/</p><p> { jiedian[i].dp=jiedian[i].p;</p><p> for(j=1;j<=n;j++)</p><p>
105、; {jiedian[i].dp=jiedian[i].dp-jiedian[i].u*jiedian[j].u*(G[jiedian[i].num][jiedian[j].num]*cos(jiedian[i].f-jiedian[j].f)+B[jiedian[i].num][jiedian[j].num]*sin(jiedian[i].f-jiedian[j].f));</p><p><b>
106、 }</b></p><p><b> }</b></p><p> for(i=1;i<=(pq+pv);i++) /*定義各節(jié)點(diǎn)的dP/U*/</p><p> if(jiedian[i].s!=3)</p><p> yy[i]=fabs(jiedian[i].
107、dp/jiedian[i].u);</p><p> max=yy[1]; /*求dP/U的最大值*/</p><p> for(i=1;i<=(pq+pv);i++)</p><p> if(yy[i]>max){max=yy[i];}</p><p> for(i=1
108、;i<=(pq+pv);i++)</p><p> fprintf(fp2," 有功功率不平衡量dP[%d]=%+f\n",jiedian[i].num,jiedian[i].dp);</p><p> fprintf(fp2,"\n -------------------------------------------------------
109、------\n");</p><p> /*********************************求各節(jié)點(diǎn)的相位角f,df**************************************************/</p><p> {a=1; /*裝換為高斯函數(shù)的標(biāo)準(zhǔn)形式*
110、/</p><p> for(i=1;i<=n;i++)</p><p> {if(jiedian[i].s==3){a=a+1;continue;}</p><p> aa[i-a]=jiedian[i].dp/jiedian[i].u;</p><p><b> b=1;</b></p>
111、<p> for(j=1;j<=n;j++)</p><p> {if(jiedian[j].s==3){b=b+1;continue;}</p><p> B3[i-a][j-b]=0.0-B1[i+1-a][j+1-b]*jiedian[i].u;</p><p><b> }</b></p><
112、p><b> }</b></p><p> gaoshi((pv+pq),B3,aa); /*代入高斯函數(shù)求解方程*/</p><p><b> a=1;</b></p><p> for(i=1;i<=n;i++)</p><p>
113、 {if(jiedian[i].s==3){a++;continue;}</p><p> jiedian[i].df=aa[i-a];</p><p> jiedian[i].f=jiedian[i].f+jiedian[i].df;}</p><p> for(i=1;i<=(pq+pv);i++)</p><p> fpr
114、intf(fp2," df[%d]=%f 電壓的相位角f[%d]=%+f\n",jiedian[i].num,jiedian[i].df,jiedian[i].num,jiedian[i].f);</p><p> fprintf(fp2,"\n -------------------------------------------------------------\n&q
115、uot;);</p><p> /*********************************求節(jié)點(diǎn)的無功功率不平衡量dq********************************************/</p><p> for(i=1;i<=n;i++) /*求dq*/</p><p><b> {<
116、/b></p><p> jiedian[i].dq=jiedian[i].q;</p><p> for(j=1;j<=n;j++)</p><p> {jiedian[i].dq=jiedian[i].dq-jiedian[i].u*jiedian[j].u*(G[jiedian[i].num][jiedian[j].num]*sin(jied
117、ian[i].f-jiedian[j].f)-B[jiedian[i].num][jiedian[j].num]*cos(jiedian[i].f-jiedian[j].f));</p><p><b> }</b></p><p><b> }</b></p><p> for(i=1;i<=pq;i++)
118、 /*定義各節(jié)點(diǎn)的dQ/U*/</p><p> yy[i]=fabs(jiedian[i].dq/jiedian[i].u);</p><p> for(i=1;i<=pq;i++) /*求所有dP/U和dQ/U中的最大值*/</p><p> if(yy[i]>max){max=yy[i];
119、}</p><p> for(i=1;i<=pq;i++)</p><p> fprintf(fp2," 無功功率不平衡量dQ[%d]=%+f\n",jiedian[i].num,jiedian[i].dq);</p><p> fprintf(fp2,"\n -----------------------------
120、--------------------------------\n"); </p><p> /********************************計(jì)算各節(jié)點(diǎn)電壓***************************************************/</p><p> for(i=1;i<=n;i++) /*
121、裝換為高斯函數(shù)的標(biāo)準(zhǔn)形式*/</p><p> for(j=1;j<=n;j++)</p><p> B3[i-1][j-1]=0-B2[i][j];</p><p><b> a=1;</b></p><p> for(i=1;i<=n;i++)</p><p> {if(
122、jiedian[i].s!=1){a=a+1;continue;}</p><p> bb[i-a]=jiedian[i].dq/jiedian[i].u;</p><p><b> }</b></p><p> gaoshi(pq,B3,bb); /*代入高斯函數(shù)求解方程*/</p><
123、;p><b> a=1;</b></p><p> for(i=1;i<=n;i++)</p><p> {if(jiedian[i].s==3){a++;continue;}</p><p> jiedian[i].du=bb[i-a];</p><p> jiedian[i].u=jiedian
124、[i].u+jiedian[i].du;</p><p><b> }</b></p><p> for(i=1;i<=n;i++)</p><p> if(jiedian[i].s==1)</p><p> fprintf(fp2," dU[%d]=%f 電壓的大小U[%d]=%+f\n&q
125、uot;,jiedian[i].num,jiedian[i].du,jiedian[i].num,jiedian[i].u);</p><p> fprintf(fp2,"\n ==============================================================\n"); </p><p> }return(max);
126、 /*返回循環(huán)標(biāo)志值*/</p><p><b> }</b></p><p> float mul_Re(x1,y1,x2,y2) /*求實(shí)部*/</p><p> float x1,x2,y1,y2;</p><p>
127、;<b> {float x;</b></p><p> x=x1*x2-y1*y2;</p><p> return(x);</p><p><b> }</b></p><p> float mul_Im(x1,y1,x2,y2) /*求虛部*/</
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電力系統(tǒng)分析課程設(shè)計(jì)---潮流計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)-- 電力系統(tǒng)潮流計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)--電力系統(tǒng)潮流計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)---潮流計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)--潮流計(jì)算
- 《電力系統(tǒng)分析基礎(chǔ)》課程設(shè)計(jì)--電力系統(tǒng)潮流(手工)計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)--電力系統(tǒng)潮流和穩(wěn)定計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)-基于matlab的電力系統(tǒng)潮流計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)-基于matlab的電力系統(tǒng)潮流計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)-基于matlab的電力系統(tǒng)潮流計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)電力系統(tǒng)短路計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)---電力系統(tǒng)短路計(jì)算
- 電力系統(tǒng)分析課程設(shè)計(jì)電力系統(tǒng)短路計(jì)算
- 課程設(shè)計(jì)---電力系統(tǒng)分析
- 電力系統(tǒng)分析課程設(shè)計(jì)
- 電力系統(tǒng)分析課程設(shè)計(jì)
- 電力系統(tǒng)分析課程設(shè)計(jì)
- 電力系統(tǒng)分析課程設(shè)計(jì)
- 電力系統(tǒng)分析課程設(shè)計(jì)--潮流計(jì)算和短路計(jì)算的程序?qū)崿F(xiàn)
- 電力系統(tǒng)分析課程設(shè)計(jì)
評論
0/150
提交評論