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

 找回密码
 立即加入
搜索
查看: 2702|回复: 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# 玉门关山 - v2 h) G7 E8 v+ z* o

    ' I) s, f0 ], T3 N. f
    $ [. j: C7 D& F4 }* I# K    因为我不知道问题出在哪里了。。+ t! p; A& I3 i, q6 O3 u- S7 T& e/ {$ p
    do 8 m3 y, `$ S4 e3 h$ [+ s4 B
            {
    7 P+ \* j9 ?; J4 t: i& S1 U                //求解不平衡量9 k1 j9 H1 D! N  C4 c, P- A* Y
                    for(i=0;i<nB;i++)
    4 ^! V8 Z3 e' [5 I7 \5 [; b                {) q# R, `/ H4 a1 b: j* H
                            if(sB.Type!=2)//假如不是平衡节点$ i( c! ?% s% b% U
                            {        
    / L, K" x( K( n7 T6 @" i7 s1 F2 l                                DP=sB.GenP-sB.LoadP;0 Q0 a7 z& u+ T
                                    DQ=sB.GenQ-sB.LoadQ;
    7 s. D2 k2 D8 L; ~! R+ H5 p                                $ b  }4 P* d: {
                                    for(j=0;j<nB;j++)8 r0 f# e( l) k- `
                                    {- Z5 m* R& Y, U& b( a3 Q
                                            A=sB.Phase-sB[j].Phase;7 s/ }8 p3 i4 v2 M9 u
                                            DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));) |1 f& C# p* F  @
                                            ) Z8 w* `0 q7 P
                                            if(sB.Type==0)//PQ节点
    $ ~- a/ A% D1 L1 K                                                DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));" ^6 r9 N6 q  c( I
                                    $ ?7 K+ H2 M1 W2 ]% w8 ?8 g1 P
                                            else if(sB.Type==1)//PV节点5 E! V) @% E" i# p% G+ G0 v
                                                    DQ=0;2 C* W; Z! S5 O0 `" h, ?' _
                                    }
    - z9 J; o! u) M8 M( q                        }3 ~, r  c. ?4 [% Q* l. p/ n  S6 x
                            else if(sB.Type==2)//平衡节点
    . s; a& w6 {$ |3 u* a" {                                DP=DQ=0;$ n3 p1 Q9 a+ n7 R* q- j" E% _3 N
                    } : }, h5 Y3 o7 Z3 B% V% @/ H: l3 h
                    //for(i=0;i<nB;i++)' T3 z- o" R6 @) C  q" y3 ]* x
                    //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);
    1 [7 ~+ i& m. P* `1 h; }* I1 }- U& e9 S! P, {: {
                //求解修正方程9 N/ |7 r$ f" }7 T! {5 d! h1 c
                    for(i=0;i<nB-1;i++)3 T( |; ~# x3 t9 g
                        AA1=DP[i+1]/sB[i+1].Volt;
    / K. _5 W: ~! G- t, X) u" U; n* J. S                for(i=0;i<nB-1-count_PVnode;i++)
    / A, g8 b2 h' n! O) f                        AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;/ S- C9 ]8 A5 n& k8 _
                    calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量
    . N1 j& V! P2 s; f5 N/ y                calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);! w% p* @* R" ]0 K  p+ f$ Z

    . Y1 r2 O/ _7 O7 I% R                max1=fabs(AA1[0]);
    & t2 X: n: @7 G1 }! F$ t8 T' s                for(i=1;i<nB-1;i++)$ a  e: Q# e+ ]) [4 N1 d
                            if(max1<fabs(AA1))       
    7 E" P, c! U+ f                                max1=fabs(AA1);
    " L* e/ C1 m4 S9 _8 T                        max2=fabs(AA2[0]);
    % Z3 O/ N1 }8 d; V* t                        for(i=1;i<nB-1-count_PVnode;i++)
    % v' `( I. B2 y5 K* X                                if(max2<fabs(AA2))        9 o  d! ^) F" M) `
                                    max2=fabs(AA2);
    : k; Q% [" U# o8 _0 A( x# P                for(i=0;i<nB-1;i++)
    ; N* B$ N. {# T/ i. @  T& O                        sB[i+1].Phase+=BB1/sB.Volt;2 g+ q5 q# P/ c( G& Z0 t8 S0 r
                    for(i=0;i<nB-1-count_PVnode;i++)' q. w' [" u; {" ~. G; ^
                            sB[i+1+count_PVnode].Volt+=BB2;
      r6 B, f2 K1 O* h                for(i=0;i<nB;i++)
    # _: b" T, n3 g; P8 |                { / _8 R) K; z( _
                            printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);. q: J- ^7 o; d3 }8 ~
                            , N7 z/ t. o( H
                    }
    5 b/ a" n& O, R( m" E) U2 D  u# O                printf("\n");
    * ?/ T2 M6 h* K* y( ?                        ci++;$ h! t+ N; N: s, {! q7 z0 `+ d
            }
    , I, ]$ X+ q! w        while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);
    % G& ~3 U+ J5 q4 z# p4 M: Z这是我求潮流的程序,用的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 8 P" \  d9 N$ F" u5 _7 P% M
    & ?7 W- i! h- S. A  I7 C6 n& A/ h

    , b) |  ^1 C" ^* z) X2 J   跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 19:00:33 | 显示全部楼层
    回复 4# lllmos
    ' c1 ^) `& \% B( t  k! K- {8 `0 y& g
    建议楼主换几个软件试试,SPS,PSSE,PowerSystemWorld,特别是PSSE算潮流比较专业。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

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

    GMT+8, 2025-7-25 09:04

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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