潮流計(jì)算上機(jī)指導(dǎo)_第1頁(yè)
潮流計(jì)算上機(jī)指導(dǎo)_第2頁(yè)
潮流計(jì)算上機(jī)指導(dǎo)_第3頁(yè)
潮流計(jì)算上機(jī)指導(dǎo)_第4頁(yè)
潮流計(jì)算上機(jī)指導(dǎo)_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、華北電力大學(xué)華北電力大學(xué)概述 潮流計(jì)算是電力系統(tǒng)規(guī)劃、設(shè)計(jì)、運(yùn)行的基礎(chǔ)計(jì)算,潮流計(jì)算的方法和程序設(shè)計(jì)技巧,包含了電力系統(tǒng)網(wǎng)絡(luò)分析的重要內(nèi)容,是學(xué)生掌握電力系統(tǒng)分析計(jì)算的主要教學(xué)內(nèi)容。 本課程屬于電力系統(tǒng)分析基礎(chǔ)課程的課程設(shè)計(jì),主要內(nèi)容是利用C/C+語(yǔ)言完成一個(gè)直角或極坐標(biāo)牛頓-拉夫遜(Newton-Raphson)潮流算法的程序。課程安排課程共分為幾個(gè)階段:o程序設(shè)計(jì)初步知識(shí)(2學(xué)時(shí))o數(shù)據(jù)結(jié)構(gòu)、主程序框架、數(shù)據(jù)錄入(2學(xué)時(shí))o節(jié)點(diǎn)導(dǎo)納矩陣的生成(2學(xué)時(shí))o設(shè)置電壓初始值、計(jì)算不平衡量(2學(xué)時(shí))o建立雅可比矩陣、解修正方程(2學(xué)時(shí))o設(shè)定收斂條件,完成潮流迭代程序(2學(xué)時(shí))o計(jì)算線路潮流,網(wǎng)損

2、,平衡節(jié)點(diǎn)功率,輸出計(jì)算結(jié)果(2學(xué)時(shí))成績(jī) o提交課程設(shè)計(jì)論文報(bào)告,包含三部分內(nèi) 容:程序設(shè)計(jì)體會(huì)、思考題答案和潮流程序及計(jì)算結(jié)果。o比試。1 基礎(chǔ)知識(shí) 開(kāi)發(fā)潮流計(jì)算程序使用的平Microsoft Visual Studio系列開(kāi)發(fā)軟件,本課程主要采用Visual C/C+軟件開(kāi)發(fā)。下面介紹一些常用的知識(shí)。 1.1創(chuàng)建開(kāi)發(fā)項(xiàng)目 1.2簡(jiǎn)單輸入輸出程序測(cè)試 1.3程序的調(diào)試方法 1.4文件輸入輸出程序測(cè)試 1.5解方程程序測(cè)試創(chuàng)建開(kāi)發(fā)項(xiàng)目 打開(kāi)“開(kāi)始-程序 -Microsoft Visual Studio2008 - Microsoft Visual Studio2008”,啟動(dòng)Microsof

3、t Visual Studio2008的主程序界面如右 點(diǎn)擊“文件-新建-項(xiàng)目”,啟動(dòng)了創(chuàng)建項(xiàng)目對(duì)話框如右選擇Visual C+,點(diǎn)擊“CLR-CLR控制臺(tái)應(yīng)用程序(模版)” 在對(duì)話框下面部分“位置”處選擇程序放置的目錄。在“名稱(chēng)”對(duì)應(yīng)的文本框中輸入一個(gè)由英文字母組成的程序名字,點(diǎn)擊右下角的“確定”按鈕,創(chuàng)建一個(gè)新項(xiàng)目。如下圖所示:簡(jiǎn)單輸入輸出程序測(cè)試 建立的CLR控制臺(tái)應(yīng)用程序既可以使用傳統(tǒng)的Standard C+類(lèi)庫(kù),也可以使用.net Framework類(lèi)庫(kù)。本課程推薦采用標(biāo)準(zhǔn)C+類(lèi)庫(kù),這樣可以有利于把程序遷移至Unix C+等其他編程環(huán)境。創(chuàng)建的程序TEST.CPP中有main函數(shù),可

4、以利用C/C+語(yǔ)言的函數(shù)庫(kù)進(jìn)行輸入輸出的嘗試。 1.2.1 頭文件和命名空間的引用 1.2.2 iostream類(lèi)的使用頭文件和命名空間的引用根據(jù)C語(yǔ)言標(biāo)準(zhǔn),所有類(lèi)和函數(shù)都是使用頭文件進(jìn)行定義和說(shuō)明的。在程序的開(kāi)始需要加入必需的頭文件(.h)。C+類(lèi)庫(kù)還增加了命名空間(namespace),程序所 用到的大多數(shù)類(lèi)都包含在 “std”命名空間中,這些都 需要在程序中加以說(shuō)明。iostream類(lèi)的使用 iostream是C+中提供的用于輸入輸出的類(lèi)庫(kù),意為輸入輸出流。常用到的命令語(yǔ)句有以下: cina: 把一個(gè)數(shù)輸入給變量a,對(duì)象的默認(rèn)輸入是鍵盤(pán); cout開(kāi)始執(zhí)行(不調(diào)試)即可輸出運(yùn)行結(jié)果。(快

5、捷方式是Ctrl+F5)需注意每次調(diào)試前需清理上次生成的解決方案。增加斷點(diǎn)的方法 在潮流計(jì)算程序調(diào)試的過(guò)程中,為了便于監(jiān)視變量的變化,通常需要設(shè)置一系列的斷點(diǎn),設(shè)置斷點(diǎn)的具體操作方式為: 在變量定義的左側(cè)點(diǎn)擊鼠標(biāo)左鍵,即可設(shè)置斷點(diǎn),如下圖所示:調(diào)試中查看變量的方法 在調(diào)試過(guò)程中,如需查看變量的變化,需在待觀測(cè)變量處設(shè)置斷點(diǎn),進(jìn)行調(diào)試時(shí),程序執(zhí)行到斷點(diǎn)處,將自動(dòng)停止,顯示變量值,以F11控制程序執(zhí)行,一步一步觀察變量的變化。文件輸入輸出程序測(cè)試o文件輸入輸出命令推薦采用fstream的標(biāo)準(zhǔn)類(lèi)庫(kù)方式。ifstream infile; ofstream outfile;oifstream與ofstr

6、eam的程序測(cè)試,如右圖:解方程程序測(cè)試添加頭文件:添加頭文件: 將已建好的頭文件復(fù)制粘貼,(在這次潮流上機(jī)中可使用老師編好的頭文件“NEquation.h”)再回到C+主程序界面,在“解決方案管理器窗口”處右擊“頭文件”-添加-現(xiàn)有項(xiàng)-NEquation.h-確定:NEquation.h的調(diào)用: 對(duì)于一個(gè)方程,AX=B,A為系數(shù)矩陣,B為值矩陣,要求出X,在頭文件中NEquation.h中用Data表示系數(shù)矩陣,Value表示值矩陣。也就是說(shuō),我們需要把一個(gè)方程的系數(shù)矩陣和值矩陣賦給NEquation.h頭文件中的Data陣和Value陣,運(yùn)行后即可完成解方程。另外調(diào)用時(shí)需要在main函數(shù)前

7、敲入添加語(yǔ)句,即:include“NEquation.h”.解方程程序調(diào)試:設(shè)有方程: ,改寫(xiě)成矩陣的形式,可表 示為: 。按照上文中介紹的從文件中讀數(shù)據(jù)的方法,在相應(yīng)的“TEST”文件夾下,分別建立兩個(gè)文本文檔“Xishu”和“Hanshuzhi”。其中“Xishu”文本文檔的內(nèi)容為:1 2 3 4;“Hanshuzhi”文檔的內(nèi)容為:3 4。返回C+主界面,鍵入如下程序:121223344xxxx12123344xx / TEST.cpp: 主項(xiàng)目文件。#include stdafx.h#include fstream #include iostream#include NEquation

8、.husing namespace System;using namespace std;int main(array args)NEquation ObNEquation; /建立一個(gè)對(duì)象ObNEquation.SetSize(2); /設(shè)置矩陣的維數(shù)為2維ifstream infile1;infile1.open(Xishu.txt);for(int i=0;i2;i+)for(int j=0;jObNEquation.Data(i,j);infile1.close();ifstream infile2;infile2.open(Hanshuzhi.txt);for(int i=0;iOb

9、NEquation.Value(i);infile2.close();ObNEquation.Run(); /調(diào)用NEquation頭文件中的Run函數(shù)。for(int i=0;i2;i+)coutObNEquation.Value(i)endl; /輸出結(jié)果Console:WriteLine(LHello World); return 0; 運(yùn)行后可得到方程的解:運(yùn)行后可得到方程的解:-2 ,2.5。2.潮流計(jì)算的數(shù)據(jù)結(jié)構(gòu)3 主程序Void BranchLoss( );4.讀入數(shù)據(jù)程序參考示例5.節(jié)點(diǎn)導(dǎo)納矩陣的形成o節(jié)點(diǎn)導(dǎo)納矩陣的概念和性質(zhì)o節(jié)點(diǎn)導(dǎo)納矩陣的形成技術(shù)o形成節(jié)點(diǎn)導(dǎo)納矩陣程序的參考

10、示例節(jié)點(diǎn)導(dǎo)納矩陣的概念和性質(zhì) 在電路理論課中,利用基爾霍夫電流定律,我們推導(dǎo)出了電網(wǎng)絡(luò)的節(jié)點(diǎn)電壓方程:BBBIYU將方程展開(kāi),可得:111121311221222322331323333123.nnnnnnnnnnIYYYYUIYYYYUIYYYYUIYYYYU 即為節(jié)點(diǎn)導(dǎo)納矩陣,如右圖所示的三節(jié)點(diǎn)電路: 可得,自導(dǎo)納: 互導(dǎo)納:BY11101213Yyyy22201223Yyyy33301323Yyyy1 22 11 2YYy 2 33 22 3YYy 節(jié)點(diǎn)導(dǎo)納矩陣的形成技術(shù)o支路追加支路追加方式形成節(jié)點(diǎn)導(dǎo)納矩陣對(duì)于連接兩個(gè)節(jié)點(diǎn)支路上的導(dǎo)納(如圖3.1所示的y12)在節(jié)點(diǎn)導(dǎo)納陣中,會(huì)出現(xiàn)在與

11、這兩個(gè)節(jié)點(diǎn)相關(guān)的四個(gè)位置上(即:Y11,Y12,Y21,Y22.)。o對(duì)地支路的處理方法 對(duì)于某節(jié)點(diǎn)的對(duì)地支路,其對(duì)地導(dǎo)納(如y10),只會(huì)出現(xiàn)在節(jié)點(diǎn)導(dǎo)納陣中自導(dǎo)納所在位置上(對(duì)角線上元素,即Y11)節(jié)點(diǎn)導(dǎo)納矩陣的形成支路追加法o1、確定矩陣階數(shù)no2、將各支路編號(hào),并按編號(hào)順序填寫(xiě)各支路導(dǎo)納對(duì)矩陣中元素的影響。 例:例:n每考慮一條支路的影響,就對(duì)導(dǎo)納矩陣各元素進(jìn)行一次修正,直到所有支路的影響均考慮完,導(dǎo)納矩陣就形成了。o3、導(dǎo)納矩陣是稀疏,0元素不用存儲(chǔ),只考慮非零元素即可??紤]節(jié)點(diǎn)考慮節(jié)點(diǎn)1對(duì)地對(duì)地支路對(duì)導(dǎo)納矩陣支路對(duì)導(dǎo)納矩陣的影響;的影響;考慮節(jié)點(diǎn)考慮節(jié)點(diǎn)1和和2支路對(duì)導(dǎo)納矩支路對(duì)導(dǎo)納

12、矩陣的影響;陣的影響; 0000012121212yyyy0000000010y 在文件夾下可以找到輸出的“result”文本,打開(kāi)后即為輸出的14節(jié)點(diǎn)導(dǎo)納陣。6.雅格比矩陣的形成o牛頓-拉夫遜法解潮流方程的數(shù)學(xué)模型oPQ、PV、平衡節(jié)點(diǎn)的類(lèi)型oJacobian矩陣oJacobian矩陣生成程序示例牛頓-拉夫遜法解潮流方程的數(shù)學(xué)模型 對(duì)于網(wǎng)絡(luò)方程 據(jù)此可得到網(wǎng)絡(luò)的功率方程如下:BBB *SY UIU*1j nijijiijUY UPjQ 引入節(jié)點(diǎn)注入電流的表達(dá)式: 將 代入,并將實(shí)部(有 功)和虛部(無(wú)功)分列: 11()()jniiijjijjjjniiijjijjjaGeBfbGfBe,i

13、ijijijiiYGjB Uejf11222()()()()()()jniijjijjiijjijjijjniijjijjiijjijjijiiie G eB ff G fB ePf G eB fe G fB eQ PQUefPV節(jié)點(diǎn)節(jié)點(diǎn)11222 ()() ()()()j niijjijjiijjijjiiiii iijj niijjijjiijjijjiiiii iijiiie G eB ff G fB ePeaf bf G eB fe G fB eQf aebUefPV節(jié)點(diǎn)牛頓拉夫遜法的修正方程11111111121211111111121222122121222222222121222

14、21122211222.ppnnppnnppnnppnnpppppppppppnnHNHNHNHNPJLJLJLJLQHNHNPHNHNJLJLQJLJLPHNHNHUJLJLPU112211221122.pppppnpnppppppnpnnnpnpnnnnnnnnnnpnpnnnnnnnnfefefNHNeJLJLfHNHNHNHNeJLJLJLJL 其中當(dāng) 時(shí),修正方程中各元素表達(dá)如下:其中當(dāng) 時(shí),修正方程中各元素表達(dá)如下:22;0;0iiijijiijiijijiijijjiiijijiijiijijijiijiijjjiiijijjjPPHB eG fNG eB ffeQQJB fG

15、eNLG fB eHfeUURSfe 22;2;2iiiiiiiiiiiiiiijiijiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiPPHB eGfbNG eB fafeQQJB fG eaLGfB ebfeUURfSefe ji ji 功率的不平衡量:2222()iiiiiiiiiiiiiiiiiiiiPPeaf bQQf aebUUefPQ、PV、平衡節(jié)點(diǎn)的處理在存儲(chǔ)節(jié)點(diǎn)數(shù)據(jù)時(shí),struct BusDataint Num, Bustype;float e,f,Gp,Gq,Lp,Lq; 其中Bustype即為節(jié)點(diǎn)類(lèi)型,我們可以采用以下表示方法:節(jié)點(diǎn)類(lèi)型節(jié)點(diǎn)類(lèi)型BustypeBustype取值取值平衡節(jié)點(diǎn)平衡節(jié)點(diǎn)3 3PQPQ節(jié)點(diǎn)節(jié)點(diǎn)1 1PVPV節(jié)點(diǎn)節(jié)點(diǎn)2 2Jacobian矩陣 Jacobian矩陣的生成其實(shí)就是正確求解出H, N, J, L, R, S,并把它們正確填入Jacobian矩陣中,矩陣的維數(shù)應(yīng)為: 2(n-1)*2(n-1)。牛頓-拉夫遜法潮流計(jì)算的迭代部分程序和支路潮流的求解o 修正方程的求解o功率的不平衡量程序求解示例o平衡節(jié)點(diǎn),線路功率以及線路

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論