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

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

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

[复制链接]

该用户从未签到

尚未签到

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

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

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

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

该用户从未签到

尚未签到

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

    连续签到: 1 天

    [LV.7]常住居民III

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

    该用户从未签到

    尚未签到

     楼主| 发表于 2015-6-16 15:02:40 | 显示全部楼层
    回复 3# 玉门关山
    + `" R* L0 Z" G6 R2 k  q+ E, d( p& n- z% ^6 a. h* \

    0 o4 D  Q- E/ I, L0 ~2 s1 q    因为我不知道问题出在哪里了。。
    ( g# v5 ?& z6 j/ N& Ddo
    $ B( a6 f% c2 D% f1 w; O        {! N# F- U- p7 @1 Z
                    //求解不平衡量  S( B4 w! L" a* N$ k
                    for(i=0;i<nB;i++)
    8 ]. b0 j& q9 i" b( E5 Z                {$ I- a4 ^6 Y- g  J  B* N
                            if(sB.Type!=2)//假如不是平衡节点7 i  W  [, h) q! C  J
                            {         2 N' U- i' y" Y  R/ X' V( ^4 C# n
                                    DP=sB.GenP-sB.LoadP;
    ) A" @2 F, `" O4 O5 O1 e8 n" T                                DQ=sB.GenQ-sB.LoadQ;$ o. k5 G7 k. {$ I( D2 `
                                   
    ; |6 I3 t* \$ {, z' v8 p                                for(j=0;j<nB;j++)
    7 X) I& ]9 Q& O6 S! k4 d! l! P                                {% i7 w9 d6 [& w7 P
                                            A=sB.Phase-sB[j].Phase;- _5 u2 D. ^; T) k! l( g' Y
                                            DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));
    7 J- S$ e% x( C) ^, j                                        $ }' I5 x! j5 G' h. Y& j
                                            if(sB.Type==0)//PQ节点3 c% ^6 ^* }7 C5 `
                                                    DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));
    # I& C  @; Y, t! S                                : d. O7 \$ T  i" `9 S9 ~
                                            else if(sB.Type==1)//PV节点
    1 x8 N3 i3 }( d5 l                                                DQ=0;
    0 [! m0 @9 {8 d/ f; e5 [8 a! t                                }
    $ l; g. Z, U$ n+ }( B3 ^                        }
    " a9 R7 p% w9 r" ^4 k" b                        else if(sB.Type==2)//平衡节点6 d; k3 |7 H* o+ u
                                    DP=DQ=0;1 |; p: [, B9 k$ T3 u8 C
                    }
    ! e, d; O. A# }- e! T                //for(i=0;i<nB;i++)
    - I# q; B( J3 R  L: @% L                //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);" t# @; M0 j, q! W2 \, T
    " `1 O8 s% I/ T8 {- e9 @* o
                //求解修正方程
    1 i8 g4 ~) r$ A( _, r. Q& P' Z                for(i=0;i<nB-1;i++)
    # K+ Q2 M; l+ _6 R                    AA1=DP[i+1]/sB[i+1].Volt;; N5 H. w2 ]- B
                    for(i=0;i<nB-1-count_PVnode;i++)
    0 U2 e9 s! w, {0 n1 a2 i+ h                        AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;
    $ ~7 e+ Z, J2 C! K& z7 w, l                calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量% G% u0 {: @7 ]& ^+ Q: K
                    calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);
    " k0 H/ ?% @( i5 _3 k' O& \. w9 x" j' \; v2 A/ }
                    max1=fabs(AA1[0]);0 m# g8 X) _1 T* w3 [( |. T# @
                    for(i=1;i<nB-1;i++)/ k! ]+ q0 I7 K6 q7 f; I  a1 h9 {" B
                            if(max1<fabs(AA1))       
    * U( ]: H, [" \* q                                max1=fabs(AA1);( ^2 P" I( B. c/ i# @. h7 K
                            max2=fabs(AA2[0]);
    8 t& ?% v6 D3 W6 H3 p                        for(i=1;i<nB-1-count_PVnode;i++); p3 m) G' g1 z2 |( d
                                    if(max2<fabs(AA2))       
    5 M3 c- r: c& W4 y+ \                                max2=fabs(AA2);/ B1 ]- B2 l4 U- t7 v
                    for(i=0;i<nB-1;i++)1 K3 p( I+ g' a% x
                            sB[i+1].Phase+=BB1/sB.Volt;
    ; _3 y2 U6 v# @                for(i=0;i<nB-1-count_PVnode;i++); k4 A3 D% s0 y; R0 b4 n
                            sB[i+1+count_PVnode].Volt+=BB2;
    8 L/ F& O% |+ p, {2 ]                for(i=0;i<nB;i++)
    ) }# ?5 ?' U; U% N                {
      m8 I( b. w9 |) L+ n: x: g, V                        printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);& H& S  _7 F7 k8 u& x# p  e% B
                           
    6 ?8 _% {3 b) p9 E, x. e, f# d# l                }6 `, e0 U7 s4 M2 N6 b
                    printf("\n");
    2 ?! z9 Z+ ~: Q) [8 r. R                        ci++;: d6 `3 L+ x: L1 [5 }0 X9 C
            }1 D0 H) C% X, e7 _: }
            while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);1 p1 l) N" G1 B. }; g
    这是我求潮流的程序,用的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 5 |  f2 H2 V: P3 J. U/ M) U
      y' x+ {: m# M& d1 }  W
    - l6 _0 R  t. D! c) h
       跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 19:00:33 | 显示全部楼层
    回复 4# lllmos   j! M1 m( z. i1 A

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-10-30 10:06

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

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