设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 2283|回复: 6

[讨论] 潮流计算程序有误差,不知道是哪里出了问题。求大神解救

[复制链接]

该用户从未签到

尚未签到

发表于 2015-6-16 10:44:58 | 显示全部楼层 |阅读模式

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

该用户从未签到

尚未签到

 楼主| 发表于 2015-6-16 11:17:56 | 显示全部楼层
潮流程序计算结果又误差是什么问题造成的啊?
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    难过
    2021-6-9 13:53
  • 签到天数: 178 天

    连续签到: 1 天

    [LV.7]常住居民III

    累计签到:186 天
    连续签到:1 天
    发表于 2015-6-16 11:33:18 | 显示全部楼层
    你给这么些信息量,,真得靠大神来答了。。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

     楼主| 发表于 2015-6-16 15:02:40 | 显示全部楼层
    回复 3# 玉门关山 ( d' p5 ]9 i7 |% [( ^& q6 v! ^

    : m/ x( x8 p4 H. F3 y4 B& s8 a8 I, Z% |' x: F. _; m* \9 Z4 a
        因为我不知道问题出在哪里了。。8 z, m9 b8 _4 B! V7 B) T
    do
    3 b3 q1 Z( R9 c. Q        {
    # s/ @  _% y6 y                //求解不平衡量
    & y& u$ t, o9 s# I2 ^  R  u                for(i=0;i<nB;i++)& m) T4 |( L! Z7 ?( `) d- p
                    {
    & k  ?4 ]) V4 ~/ |- k# m1 R                        if(sB.Type!=2)//假如不是平衡节点4 N/ l% r( V+ Q$ K
                            {         1 u  n, A7 J- l. q. d" i
                                    DP=sB.GenP-sB.LoadP;
    9 H5 o8 i! Z* V                                DQ=sB.GenQ-sB.LoadQ;8 s( ?3 n" Q. c  g1 l
                                    2 R, ~$ X% Z, H! Y: s
                                    for(j=0;j<nB;j++)
    ( x$ w# B/ E* X) U1 q5 ]8 I                                {
      t0 y( h0 |- |                                        A=sB.Phase-sB[j].Phase;4 G! m5 `: h  Z/ q' i2 _9 S& H+ z" `
                                            DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));* b3 j$ w% \6 w. W: j
                                           
    9 ]% t1 T  B2 P! X8 S% D                                        if(sB.Type==0)//PQ节点% e) y; Y) V+ S( Y( t6 Y" `
                                                    DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));
    " l! c8 c5 W6 x7 ?                               
    5 d" q# j4 l" ^3 f# L6 m" ~                                        else if(sB.Type==1)//PV节点8 |" a# U# s4 u
                                                    DQ=0;9 r: K9 |) J6 h9 K, {- v, A
                                    }& W$ L! w( I: U
                            }
    $ d3 ]* B, D. ?2 @, E                        else if(sB.Type==2)//平衡节点
    ) \( P" ]4 _& u: Z8 b2 A$ H0 E# `                                DP=DQ=0;
    : a$ c# \% \$ Z( B. ], @. a                }
    % u; @' m" K4 E& X# R                //for(i=0;i<nB;i++)  Q7 r( K+ v- {5 E. J$ S
                    //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);9 U/ w4 l1 h$ |* k
    6 }5 k% L# }7 K
                //求解修正方程
    7 y" P! D/ ^) [% A5 c0 o' z9 [/ _/ L                for(i=0;i<nB-1;i++)
    6 c' K; T% {  q                    AA1=DP[i+1]/sB[i+1].Volt;2 V  E$ ~& ~2 U) I
                    for(i=0;i<nB-1-count_PVnode;i++), C7 J+ M" I4 d% X& t  e8 s( r9 |
                            AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;
    $ b7 V8 S) S% {: o) C! B                calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量% G  D9 V! P8 f% D" u4 H
                    calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);
    8 i# J0 T3 K' a+ Y) n' j
    3 h% A2 W' d/ p0 h( R                max1=fabs(AA1[0]);; u7 m3 }5 Z% c. d7 S: X
                    for(i=1;i<nB-1;i++)
    / w$ A7 l& {5 K/ p3 T/ {% T5 i5 \                        if(max1<fabs(AA1))       
    0 M' P* G( G, n2 r$ H                                max1=fabs(AA1);3 `( m( {" Z9 d7 B
                            max2=fabs(AA2[0]);
    * Y0 @$ p, ~/ A, ^; K                        for(i=1;i<nB-1-count_PVnode;i++)
    5 m) s# J* [, W/ l# K" X& {                                if(max2<fabs(AA2))       
    ! V/ H" ~: X5 E9 o3 t, B                                max2=fabs(AA2);& f7 D& o2 w( a7 s
                    for(i=0;i<nB-1;i++)8 r% {# s; W3 e7 y! t
                            sB[i+1].Phase+=BB1/sB.Volt;  }' u; f$ I2 M% W1 @- [. @. h
                    for(i=0;i<nB-1-count_PVnode;i++)
    ; K% m9 F) U5 K8 @                        sB[i+1+count_PVnode].Volt+=BB2;$ p8 s- f7 R# a% A8 g8 Q2 h
                    for(i=0;i<nB;i++)8 }9 i, J2 q3 _- `4 P4 `+ N
                    { 7 a/ K3 q, e) V. y2 g$ {" ]/ X  z
                            printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);
    4 X" R* ~( m/ ]! s1 g                        1 S/ m# S4 a6 w
                    }
    : _" ~4 t, X! V# F                printf("\n");* N, t( ?  Y: Y: i! L# [
                            ci++;
    # x3 z+ p  O1 w; [  \6 t  J- _        }6 w+ Q6 \  R3 N) e5 }
            while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);
    9 N  o: T& I- b& W这是我求潮流的程序,用的PQ分解法,最后得到的结果是只能精确到小数点后第二位,第三位就不对了。
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2015-6-16 19:38:59 | 显示全部楼层
    别急躁,好好找找一定能好到原因。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 18:59:11 | 显示全部楼层
    回复 2# lllmos / J1 O9 l- h2 V" A. a: U0 g

    1 i' u6 ^" h# c# T( Q# M8 |
    1 M5 i5 W" s1 ^+ B. s2 t8 ]   跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 19:00:33 | 显示全部楼层
    回复 4# lllmos 3 n- d/ m. {& R% R

    6 ?* c& {0 H* T# z6 M5 L6 c建议楼主换几个软件试试,SPS,PSSE,PowerSystemWorld,特别是PSSE算潮流比较专业。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

    小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

    GMT+8, 2024-5-7 07:36

    Powered by Discuz! X3.5 Licensed

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表