C#与MATLAB混合编程在简单潮流计算可视化窗体设计中的应用.docVIP

C#与MATLAB混合编程在简单潮流计算可视化窗体设计中的应用.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C#与MATLAB混合编程在简单潮流计算可视化窗体设计中的应用.doc

C#与MATLAB混合编程在简单潮流计算可视化窗体设计中的应用   摘要:电力网络的安全稳定运行和电能的经济调度运行离不开对电力参数的潮流计算。由于.NET组件对MATLAB的良好支持性,C#与MATLAB混合编程的潮流计算可视化窗体的设计具有开发周期短、移植性好、便于修改和能够实现实时性信息传递的优点。本文就采用这种混合编程的设计原理进行阐述。   关键词:MATLAB C# 混合编程 潮流计算 可视化窗体   中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2016)04-0000-00   潮流计算是电力系统领域内非常重要的数学计算之一,电力网络的安全稳定运行和电能的经济调度运行离不开对电力参数的潮流计算,潮流计算的计算机算法是在知道各节点的部分运行参数、线路参数的情况下,通过建立方程进行矩阵运算,通过迭代求解电力网络中的节点其他运行参数的程序。而本文讨论的算法是电力系统的简单潮流计算机算法。   MATLAB是由MathWorks公司开发的通过高级语言--M语言来解决数学问题的软件,MATLAB集成了数学运算和图像可视化处理,广泛运用于数值分析、图像处理、系统仿真等领域,并且具备程序简单、数值运算仿真能力强等优点[1]。但是由于MTALAB是以解释的方式运行程序,程序的执行率低,MATLAB自带的界面设计落后,且其对子设备的控制能力差,不适合做界面开发。   .NET平台是基于.NET Framwork 框架的程序开发平台,访问平台所需内存小,数据访问效率高且对设备具有操作能力。而C#语言是基于.NET平台而开发的程序语言,其具备程序简单、执行效率高、具备界面友好性、对外围设备操作能力强等优点,但是C#语言在进行庞大的数学计算和数值分析与绘图上存在不足[2]。   由于MATLAB语言和C#语言是基于C语言的高级语言,因此可以实现MATLAB与C#的混合编程,由具有界面友好性的C#语言实现界面的开发,由MATLAB提供用于庞大的数学运算和图像生成的函数,充分运用两者自身的优点,弥补对方的不足,使得程序适用性得到提升。   1 潮流算法   1.1 潮流算法的选择   在潮流计算中比较基础的电力系统计算机潮流计算算法有高斯-塞德尔迭代法、牛顿-拉夫逊迭代法和PQ分解法(快速解耦法)。而在潮流算法的选择中,应当充分考虑到算法的收敛特性、对初值的敏感性和对计算机的内存容量要求等因素。收敛精度不在考量的范围中,一般的潮流算法精度还是可以保证的。在这三种算法中,高斯-塞德尔迭代法对初值的选取不敏感,占用内存不大,但缺点是收敛缓慢,运行效率不高。牛顿-拉夫逊迭代法具有平方收敛特性,收敛速度很快,但是缺点是对初值选取敏感,很容易出现不收敛的情况,并且每次迭代都需要更新Jacobian矩阵,占用大量运算内存。一般可以用高斯-塞德尔法迭代一两步后用牛顿-拉夫逊法迭代,可以互相弥补对方的缺点。PQ分解法(快速解耦法)是对牛顿-拉夫逊法的改进,该法只考虑电压相角对有功的影响和电压幅值对无功的影响,常数化Jacobian矩阵。该法具有直线收敛特性,收敛快,占用内存小,但缺点是在配电网中电阻部分往往不能忽略,故本文不讨论该法,本文仅以全极坐标下的牛顿-拉夫逊迭代法为例。   1.2 牛顿-拉夫逊潮流算法   1.2.1 带变压器支路的处理   牛顿-拉夫逊潮流算法是基于节点电压方程的一种算法,首先需要生成节点导纳矩阵,普通的线路可以转换成与线路阻抗和电纳等值的π型模型,若一条线路首端连变压器,变比为首端:末端=k:1,串联导纳为Y,那么等值后的π型模型为:串联导纳为Y/k,首端对地电纳为((1-k)/ )*Y,末端对地电纳为((1-k)/k)*Y。经过处理后,变压器支路也可以等效转换成普通线路。   1.2.2 修正方程   在全极坐标下,牛顿-拉夫逊潮流算法将PV节点和平衡节点全部看作是PQ节点进行处理,故雅可比矩阵有2*n阶并且在每次迭代中,不断利用更新的电压幅值相角获得新的功率不平衡量和更新雅可比矩阵,并通过修正方程求得下一次的电压幅值相角,最终使不平衡量达到目标精度以内即完成收敛。   2 C#与MATLAB混合编程   2.1 MATLAB与C#混合编程方式选择   由于MATLAB和C#语言都是基于C语言的高级语言,所以目前有多种方式可以实现MATLAB和C#的混合编程:   (1)MATLAB的函数文件是.m文件,可以用MATLAB的mcc编译器生成C共享库,再调用。   (2)C#调用MATLAB工作区计算并返回结果。   (3)C#使用MATLAB的DeployTool函数生成COM组件再由C#调用。   (4)C#使用MATLAB的DeployTool

文档评论(0)

guan_son + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档