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

 找回密码
 立即加入
搜索
查看: 2999|回复: 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# 玉门关山 , o5 b- q& g" X& r8 P" Z

    7 ^7 S1 R; Z! d! M8 N+ j2 Z7 ?4 x% R, v. R- y
        因为我不知道问题出在哪里了。。( Z# ?# h' f# Z6 k" S/ }" r
    do
    * ^! m1 Q+ K  }& m2 x9 P- _        {
    # l* k* {, ?: `5 q& o' n3 m                //求解不平衡量5 O$ l" C# {# N9 d/ h9 q! S
                    for(i=0;i<nB;i++)
    ( x3 v1 F8 E: Y# w* y' m                {
    5 d; s; Q  _, O) z, Z* L) e                        if(sB.Type!=2)//假如不是平衡节点
    1 b9 Z1 F9 G% r! h  p5 N                        {         % E0 ?$ d1 e, Y8 A
                                    DP=sB.GenP-sB.LoadP;& S! j$ r5 J( o' h
                                    DQ=sB.GenQ-sB.LoadQ;  E- ~; P% a; _% z' ?& b& C+ A
                                    / X1 n1 ]; _, T$ E9 L4 t
                                    for(j=0;j<nB;j++)% o' r% \' E! X7 j
                                    {
    + e( ^8 G! Z) }% M1 D( M- ]                                        A=sB.Phase-sB[j].Phase;7 K9 o; S. Z2 P/ E4 Q
                                            DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));
    5 ~+ ~+ }) M* A# q9 l                                       
    " S$ X% N% |# b  E) w1 O                                        if(sB.Type==0)//PQ节点
    / h* z0 r. r9 r/ l                                                DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));. y0 ?3 q# A5 k: `. U4 }
                                    ) {5 r7 J0 K4 T  ]# m  q0 z" j
                                            else if(sB.Type==1)//PV节点$ N% m( P+ O5 _
                                                    DQ=0;( r7 m4 N3 N. x# k* V9 v
                                    }
    8 d- `; k. {; L/ Y7 ]" t' o                        }! l+ E' f8 x) m! i
                            else if(sB.Type==2)//平衡节点$ r* I) k$ o9 K
                                    DP=DQ=0;6 l* S7 G2 ~% p
                    }
    1 U. F6 G6 f4 e- p% W                //for(i=0;i<nB;i++)
    , i1 Z8 v$ j; V5 X+ Y3 b. G4 Z                //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);
    - i* ?* m) ^# z1 M4 ^
    / x9 M9 `  f) A% \" Y& K. J& s* a            //求解修正方程2 ^9 n. c, n0 U3 t' T# Q9 t& g
                    for(i=0;i<nB-1;i++), c' E9 K& f! ]+ ?6 P
                        AA1=DP[i+1]/sB[i+1].Volt;
    2 }2 x8 M3 o) c9 B2 Q                for(i=0;i<nB-1-count_PVnode;i++)
    % H7 u4 ]: j) p                        AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;7 G) L9 A- ?7 E$ `4 Q. U# d; j
                    calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量  W9 v6 @: M7 j
                    calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);
    9 R: B8 N/ _% o5 L& W" X
    / [3 x. f5 c1 a7 K+ h* T" e& f% v                max1=fabs(AA1[0]);' ?5 @% o5 d) N- p, M+ L8 P
                    for(i=1;i<nB-1;i++)
    2 x$ C2 a3 I( ~  u- ^                        if(max1<fabs(AA1))       
    4 m1 L, v/ d" M% r% y1 o                                max1=fabs(AA1);
    * D! t  x2 w0 b$ U; g# \                        max2=fabs(AA2[0]);3 r4 m% s6 e9 q
                            for(i=1;i<nB-1-count_PVnode;i++)  E8 A: h) M8 G% Y5 U
                                    if(max2<fabs(AA2))        ' d9 ]& s( T: G$ H; E
                                    max2=fabs(AA2);5 V* B4 W0 l' w- i$ U4 r
                    for(i=0;i<nB-1;i++)% D. g! {' [6 H( Y
                            sB[i+1].Phase+=BB1/sB.Volt;
    ' D6 I/ p5 v- n  L                for(i=0;i<nB-1-count_PVnode;i++)
    : n* {' l' D$ T& I2 B( a                        sB[i+1+count_PVnode].Volt+=BB2;5 b- O* |% |( ~% \) t
                    for(i=0;i<nB;i++)
    ( o. _/ t1 ~- @3 F& Z                { / ~) d; `" q: a$ f9 T
                            printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);
    . Q- T: y4 q" X, D  v2 K                       
    2 a3 j+ z6 J/ _( u3 K+ {                }
    / ]- u5 a* A% A, X1 T6 p4 ^                printf("\n");
    ; k. c/ x6 U! `# `; J! g8 [                        ci++;
    : d0 L1 v5 K& r, ]7 x2 g        }4 H% R+ ~# l$ C" n% J5 V
            while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);
    # N, c+ Z7 R  x" y+ @这是我求潮流的程序,用的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
    " F& R- r% X& l. ?
    * M( }+ G# z6 a
    ) ?) E  L9 M; [2 l6 u7 M   跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-9-2 22:00

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

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