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

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

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

[复制链接]

该用户从未签到

尚未签到

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

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

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

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

该用户从未签到

尚未签到

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

    连续签到: 1 天

    [LV.7]常住居民III

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

    该用户从未签到

    尚未签到

     楼主| 发表于 2015-6-16 15:02:40 | 显示全部楼层
    回复 3# 玉门关山
    8 @. x+ s3 N/ C3 |% \( A- _' @
    - a; O. h) R! i) P+ q, l( U
    & g2 }# x9 t" U: s/ F5 T& s    因为我不知道问题出在哪里了。。- Z7 m# f( I3 }5 n6 E0 B
    do
    * Q" x1 Q  X, b$ c& w        {
    6 j  @; w' G; g$ r, M6 g: F1 J1 k                //求解不平衡量
    , Z7 ^9 y- H. Z                for(i=0;i<nB;i++)' v  e" t8 j, \
                    {
    4 X1 T; ~3 Q- ^5 S/ |9 |+ @; X3 |                        if(sB.Type!=2)//假如不是平衡节点% W1 n% m. R% X" {9 {7 \6 S# Y, Y
                            {         % M* w4 g* x1 Q. Q+ A& c2 x
                                    DP=sB.GenP-sB.LoadP;
    0 b  x" g7 F0 q7 V) [) G) C                                DQ=sB.GenQ-sB.LoadQ;" v0 W. ]6 _& ^7 k7 a  w) k
                                    / K2 C9 V, B$ C* R) g9 t
                                    for(j=0;j<nB;j++)+ o  u% s. K3 n7 A' i: n
                                    {
    8 G8 z/ s% \: e4 r7 y6 w7 Y                                        A=sB.Phase-sB[j].Phase;" T0 {# p+ V) k4 d+ S+ x& ?; w
                                            DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));
    & ?8 }7 ^9 c; R( j; {2 b# P0 I+ a                                       
    6 K' T7 u5 T2 \( A& F6 ~8 K9 o                                        if(sB.Type==0)//PQ节点$ i, \8 Z( F2 y8 a4 E
                                                    DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));
    0 y4 x: C* v% q) L! R. j0 b                                / M  |2 F3 h" m9 d  Y. D8 B
                                            else if(sB.Type==1)//PV节点7 b% `" \$ n. p3 f
                                                    DQ=0;
    2 J% f4 v/ x4 W; `$ y                                }" l/ }1 F( G4 }7 R& G$ d
                            }& s) t1 L! i6 d  P
                            else if(sB.Type==2)//平衡节点- u, O$ @1 F# J2 W; t0 _- T9 V6 L
                                    DP=DQ=0;3 v4 g& z" T% ^; r
                    } 7 P; L: T/ o4 _3 Q# k2 A" p
                    //for(i=0;i<nB;i++)" ?4 X  _1 M7 z" J8 _
                    //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);
    ! s4 C& t: U& z0 L+ M. m) Q) x; L% k
                //求解修正方程3 F& z9 n+ I/ Z& Q
                    for(i=0;i<nB-1;i++)
    & I6 C9 v9 r+ }; k- t$ G                    AA1=DP[i+1]/sB[i+1].Volt;
    $ b: r0 e; w( h6 U* T                for(i=0;i<nB-1-count_PVnode;i++)0 \- P- W. w! r5 R0 m; B
                            AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;
    0 @8 T% s6 p2 t7 E$ s1 h9 r                calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量
    2 b1 u: _, X+ e, w" c  _" U2 V                calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);
    ! h  ~4 d" @6 k
    , C; \0 p: L4 F3 c+ x                max1=fabs(AA1[0]);6 a6 x+ `. {5 o' z. w5 y- ^
                    for(i=1;i<nB-1;i++)
    ( |  q) Y( k; Z; g4 ?" D, P                        if(max1<fabs(AA1))       
    ; O: v) C) m# ?) f! y+ ?% z% O" {                                max1=fabs(AA1);: k" J" _' ~* l
                            max2=fabs(AA2[0]);
    $ s7 ^% _1 ]: |3 N                        for(i=1;i<nB-1-count_PVnode;i++)4 E4 b' O3 m  X
                                    if(max2<fabs(AA2))        ! d1 c$ Y' @% l; O
                                    max2=fabs(AA2);
    & K* p# b& x+ G& O( ^& Y# }- ~  N                for(i=0;i<nB-1;i++)
    1 j2 d/ @% @, x2 r. l6 F" k                        sB[i+1].Phase+=BB1/sB.Volt;1 m, }3 b* w" r6 i# M9 ^  x+ K
                    for(i=0;i<nB-1-count_PVnode;i++)$ Q8 t" y2 D! E6 ?+ b
                            sB[i+1+count_PVnode].Volt+=BB2;
    , z! i4 d/ l. \5 v1 q                for(i=0;i<nB;i++)% E# B! t/ }  n4 g+ A3 V
                    { * e+ C  P/ O: B$ L- X) g4 Z4 r7 v
                            printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);
    . C7 y# _% Y) @* A2 {                        ; V  {* U8 W, ]+ q( L
                    }4 d! O( ~+ \- ^+ A
                    printf("\n");; P( x/ i, z, }: v5 s
                            ci++;! q8 G8 P5 v4 \6 l. p) u
            }; x3 e& O, n) k3 M
            while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);0 |: y" G, S2 o+ j$ |0 K& \; O
    这是我求潮流的程序,用的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 6 ]9 m4 z- I5 P$ ]7 R6 I8 z; X
    7 K- e- ~# C0 L3 v
    + U$ r" ^$ r+ s) g, y3 ~
       跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 19:00:33 | 显示全部楼层
    回复 4# lllmos
    ; a, f* e' S6 K9 Q3 \3 M8 Y) ~5 u  _5 ~' ~
    建议楼主换几个软件试试,SPS,PSSE,PowerSystemWorld,特别是PSSE算潮流比较专业。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-3-16 09:00

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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