节点导纳矩阵生成的matlab程序代码,关于利用矩阵稀疏技术求解节点导纳矩阵的MATLAB编程...-程序员宅基地

技术标签: 节点导纳矩阵生成的matlab程序代码  

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

求大神帮忙看看这个程序,解释一下!

%形成节点导纳矩阵

%考虑参考节点

%考虑互感支路

function [d_g,d_b,u_g,u_b]=calyy(itoi,noels_hgln,noelsnum_hgln,bs_noels,bs_cp,gb_hgln,gb_noels,gb_cp,lv_bs,lv_hgln,lv_noels,lv_cp,type_bs,iy,jy,remv_noels)

%lv_bs

d_g=zeros(1,lv_bs);

d_b=zeros(1,lv_bs);

u_g=zeros(1,length(jy));

u_b=zeros(1,length(jy));

type_noels=zeros(1,lv_noels);

for i=1:lv_hgln

%%支路自阻抗

lnnum=noelsnum_hgln(i);

lnnum;

gb_noels;

for ii1=1:lnnum

iln=noels_hgln(i,ii1);

[d_g,d_b,u_g,u_b]=getlnselfgb(iln,bs_noels,type_bs,itoi,gb_noels,iy,jy,d_g,d_b,u_g,u_b,lv_bs);

type_noels(iln)=1;

end

for ii1=1:lnnum

iln=noels_hgln(i,ii1);

for ii2=ii1+1:lnnum

zln=noels_hgln(i,ii2);

b=gb_hgln(i,ii1,ii2);

[d_g,d_b,u_g,u_b]=getlnhugb(iln,zln,bs_noels,type_bs,itoi,0,b,iy,jy,d_g,d_b,u_g,u_b,lv_bs);

end

end

end

for i=1:lv_noels

if remv_noels(i)==1%被除去线路

continue;

end

ibs=bs_noels(i,1);

zbs=bs_noels(i,2);

if type_noels(i)==1

continue;

end

type_noels(i)=1;

iibs=itoi(ibs);

zzbs=itoi(zbs);

g=gb_noels(i,1);

b=gb_noels(i,2);

j=0;

if iibs~=zzbs

j=getlocal(iy,jy,iibs,zzbs,lv_bs,1);

end

bch=gb_noels(i,3);

%分接头所在端的自导纳要+=(g+jb)/t^2

if bch<0

bch=-bch;

if gb_noels(i,4)==1%变比位于末端

ibs=iibs;

zbs=zzbs;

else %变比位于首段

ibs=zzbs;

zbs=iibs;

end

if ibs<=lv_bs

d_b(ibs)=d_b(ibs)+b;

d_g(ibs)=d_g(ibs)+g;

end

if zbs<=lv_bs

d_b(zbs)=d_b(zbs)+b/bch/bch;

d_g(zbs)=d_g(zbs)+g/bch/bch;

end

if j~=0

u_g(j)=u_g(j)-g/bch;

u_b(j)=u_b(j)-b/bch;

end

continue;

end

%disp('线路支路');

if iibs<=lv_bs

d_b(iibs)=d_b(iibs)+b;

d_b(iibs)=d_b(iibs)+bch;

d_g(iibs)=d_g(iibs)+g;

end

if zzbs<=lv_bs

d_b(zzbs)=d_b(zzbs)+b;

d_b(zzbs)=d_b(zzbs)+bch;

d_g(zzbs)=d_g(zzbs)+g;

end

if j~=0

u_g(j)=u_g(j)-g;

u_b(j)=u_b(j)-b;

end

end

for i=1:lv_cp

ibs=bs_cp(i,1);

if ibs==0

continue;

end

headbs=itoi(ibs);

if headbs>lv_bs

continue;

end

d_b(headbs)=d_b(headbs)+gb_cp(i,1);

end

k=iy(lv_bs);

u_g=u_g(1:k-1);

u_b=u_b(1:k-1);

function [d_g,d_b,u_g,u_b]=getlnselfgb(iln,bs_noels,type_bs,itoi,gb_noels,iy,jy,d_g,d_b,u_g,u_b,lv_bs)

g=gb_noels(iln,1);

b=gb_noels(iln,2);

bch=gb_noels(iln,3);

if bch<0

disp('error!!!');

return;

end

ibs=bs_noels(iln,1);

zbs=bs_noels(iln,2);

iibs=itoi(ibs);

zzbs=itoi(zbs);

if iibs~=lv_bs+1

d_b(iibs)=d_b(iibs)+b+bch;

d_g(iibs)=d_g(iibs)+g;

end

if zzbs~=lv_bs+1

d_b(zzbs)=d_b(zzbs)+b+bch;

d_g(zzbs)=d_g(zzbs)+g;

end

j=0;

if iibs~=zzbs

j=getlocal(iy,jy,iibs,zzbs,lv_bs,1);

end

if j==0

disp('找不到支路位置');

%exit;

return;

end

u_g(j)=u_g(j)-g;

u_b(j)=u_b(j)-b;

function [d_g,d_b,u_g,u_b]=getlnhugb(iln,zln,bs_noels,type_bs,itoi,g,b,iy,jy,d_g,d_b,u_g,u_b,lv_bs)

ibsi=bs_noels(iln,1);%首

zbsi=bs_noels(iln,2);%末

ibsz=bs_noels(zln,1);%首

zbsz=bs_noels(zln,2);%末

first_head=itoi(ibsi);

first_tail=itoi(zbsi);

second_head=itoi(ibsz);

second_tail=itoi(zbsz);

if first_head==second_head&&first_head~=lv_bs+1

disp('add');

d_b(first_head)=d_b(first_head)+2*b;

d_g(first_head)=d_g(first_head)+2*g;

end

if first_tail==second_tail&&first_tail~=lv_bs+1

disp('add');

d_b(first_tail)=d_b(first_tail)+2*b;

d_g(first_tail)=d_g(first_tail)+2*g;

end

if first_head==second_tail&&first_head~=lv_bs+1

disp('add');

d_b(first_head)=d_b(first_head)-2*b;

d_g(first_head)=d_g(first_head)-2*g;

end

if first_tail==second_head&&first_tail~=lv_bs+1

disp('add');

d_b(first_tail)=d_b(first_tail)-2*b;

d_g(first_tail)=d_g(first_tail)-2*g;

end

[d_g,d_b,u_g,u_b]=addlnval(first_head,second_head,g,b,iy,jy,d_g,d_b,u_g,u_b,lv_bs);

[d_g,d_b,u_g,u_b]=addlnval(first_head,second_tail,-g,-b,iy,jy,d_g,d_b,u_g,u_b,lv_bs);

[d_g,d_b,u_g,u_b]=addlnval(second_head,first_tail,-g,-b,iy,jy,d_g,d_b,u_g,u_b,lv_bs);

[d_g,d_b,u_g,u_b]=addlnval(second_tail,first_tail,g,b,iy,jy,d_g,d_b,u_g,u_b,lv_bs);

function [d_g,d_b,u_g,u_b]=addlnval(first_head,second_head,g,b,iy,jy,d_g,d_b,u_g,u_b,lv_bs)

if first_head==second_head

return;

end

j=getlocal(iy,jy,first_head,second_head,lv_bs,1);

if j==0

return;

end

u_b(j)=u_b(j)+b;

u_g(j)=u_g(j)+g;

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_28235889/article/details/115855935

智能推荐

计算机基础——操作系统-程序员宅基地

文章浏览阅读8.5k次,点赞28次,收藏38次。本章将会讲解计算机的操作系统。操作系统(Operating System,OS)就好比一个计算机内部的管理者,是管理和控制计算机硬件与软件资源的计算机程序,直接运行在“裸机”上的最基本的系统软件,任何其他应用软件都必须在操作系统的支持下才能运行,操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。操作系统的功能包括管理计算机系统的硬件,软件及数据资源,控制程序运行,为其他应用软件提供支持等。_操作系统

Python之pip download 命令用法-下载指定平台和python版本的依赖包-程序员宅基地

文章浏览阅读1.9w次,点赞7次,收藏27次。pip download 和 pip install 有着相同的解析和下载过程,不同的是,pip install 会安装依赖项,而 pip download 会把所有已下载的依赖项保存到指定的目录 ( 默认是当前目录 ),此目录稍后可以作为值传递给 pip install --find-links 以便离线或锁定下载包安装_pip download

centos7设置密码策略_CentOS7 设置密码复杂度-程序员宅基地

文章浏览阅读3.4k次。在CentOS下设置密码复杂度分为两步(1)修改/etc/login.defs文件vim /etc/login.defsPASS_MAX_DAYS90   # 密码最长过期天数PASS_MIN_DAYS80    # 密码最小过期天数PASS_MIN_LEN10    # 密码最小长度PASS_WARN_AGE7    # 密码过期警告天数(2)..._echo 'mypassword' | openssl passwd -6 -stdin centos7

王斌老师的博客_王斌 github-程序员宅基地

文章浏览阅读480次。http://blog.sina.com.cn/s/blog_736d0b9101018cgc.html_王斌 github

ACM OJ Collection_htt//acm.wydtang.top/-程序员宅基地

文章浏览阅读737次。原文来自:http://blog.csdn.net/hncqp/article/details/4455263 ACM OJ Collection(排名不分先后):中国:浙江大学(ZJU):http://acm.zju.edu.cn/北京大学(PKU):htt_htt//acm.wydtang.top/

ios 自己服务器 苹果支付_修复苹果IOS支付-程序员宅基地

文章浏览阅读467次。更新记录1.0.0(2019-07-01)插件简介专门用来修复苹果IOS支付时出现"您已购买此App内购买项目。此项目将免费恢复"。问题描述首先在IOS平台里面创建“APP内购买项目”,选择的是“消耗型项目”,然后用uni-app官方的支付api进行支付,多支付几次,有时候就会出现提示“您已购买此App内购买项目。此项目将免费恢复”,特别是在沙盒测试里面支付很大几率出现,我明明选的是消耗型项目,应..._ios开发苹果支付恢复权益

随便推点

郁金香2021年游戏辅助技术中级班(七)_squad辅助科技-程序员宅基地

文章浏览阅读379次。郁金香2021年游戏辅助技术中级班(七)058-C,C++写代码HOOK分析封包数据格式A059-C,C++写代码HOOK分析封包数据格式B-detours劫持060-C,C++写代码HOOK分析封包数据格式C-过滤和格式化061-C,C++写代码HOOK分析封包数据格式D-写入配置文件062-C,C++写代码HOOK分析封包数据格式D-读取配置文件058-C,C++写代码HOOK分析封包数据格式A_squad辅助科技

ssh登录qemu虚拟机里的linux系统_qemu ssh连接-程序员宅基地

文章浏览阅读350次。上面的命令启动了一个带有NAT网络的QEMU虚拟机,并设置了端口转发,将主机的2222端口映射到虚拟机的22端口(SSH端口)。1、安装openssh,如果是根文件系统用buildroot构建,打开 BR2_PACKAGE_OPENSSH 开关。2、在qemu的启动脚本里增加。3、在虚拟机里增加一个新用户。4、向虚拟机里发送文件。_qemu ssh连接

用netty实现zcool_Netty框架入门-程序员宅基地

文章浏览阅读63次。一、概述Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。二、体系结构图三、Netty的核心结构Netty是典型的Reactor模型结构,在实现上,Netty中的Boss类充当mainReactor,NioWorker类充当subReactor(默认NioWorker的个数是当前服务器的..._channelconnected

SpringBoot 过滤器 filter 3种方法_spring boot filter 配置-程序员宅基地

文章浏览阅读4.7k次。最近Spring Boot项目做单点登录对接的时候,在配置过滤器的时候,找了几种方法,记录一下。欢迎评论补充沟通~由于之前JAVA Web项目最开始都有web.xml配置,随着框架慢慢的进化,从Spring Boot开始,已经没有了web.xml配置文件。那原来在web.xml里,配置的filter过滤器,在Spring Boot中怎么配置呢?注意,这个自定义类,也不能加@Component或@Configuration注解,加了就会初始化Filter了,过滤全部的路径了。_spring boot filter 配置

Ubuntu下,Python源码制作deb包_unmet build dependencies: debhelper (>= 11)-程序员宅基地

文章浏览阅读1k次。背景: 自己写了一个Python的qt客户端, 然后需要制作deb包1.先贴上代码的目录结构x@hostv6:~/mywork/my-client$ tree.├── 1├── debian│ ├── changelog│ ├── compat│ ├── control│ ├── copyright│ ├── README.Debian│ ├── rules│ ├── source│ │ ├── format│ │ └── loc..._unmet build dependencies: debhelper (>= 11)

13. PyQt5实现多页面切换之QTabWidget_pyqt5 tabwidget-程序员宅基地

文章浏览阅读2.8w次,点赞19次,收藏96次。QTabWidget 类,是一个实现多页面切换的类,该类已经实现了多页面切换的部分功能,只需再对其进行少量的设计(主要是要设计页面中的内容)便可实现多页面切换了。因此,使用该类实现多页面切换时,就不需要再使用 QStackedLayout 布局把页面与选项卡相关联,也不需要使用类似 QVBoxLayout 的布局把选项卡和页面放置在一起。与 QStackedLayout 布局原理相同,只有当前页面(即可见页面)是可见的,所有其他页面都不可见,用户可通过选择不同的选项卡来显示其对应的其他页面。_pyqt5 tabwidget

推荐文章

热门文章

相关标签