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

 找回密码
 立即加入
搜索
查看: 2882|回复: 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# 玉门关山
    & n0 c& a0 g. I! i* z$ `  r! A
    % o2 E; \+ b3 h# ]; M) \3 y8 _0 O( h; N1 L' }, n, k1 F- [
        因为我不知道问题出在哪里了。。
    - J0 l2 C% Z: V) qdo ) e# a2 y8 r1 s" }
            {/ Y4 {. L1 P, d8 y2 H: ?; Z: R
                    //求解不平衡量
    - B# Q) i6 q. K! g1 ~6 r                for(i=0;i<nB;i++): C* M' l- Y# v4 z0 C
                    {
    & x5 L3 I; ~+ k1 X: Q! w/ ?                        if(sB.Type!=2)//假如不是平衡节点
    ( t9 j) G# C3 Z% n                        {           X1 c8 b+ e, {
                                    DP=sB.GenP-sB.LoadP;, C# `  C  z! F# r" t/ j% T# S" `
                                    DQ=sB.GenQ-sB.LoadQ;
    & C- ]3 v# e9 C                                / D; R% }3 |& M( u( W7 ^
                                    for(j=0;j<nB;j++)" M4 [1 K0 l0 c3 O4 o+ \( X
                                    {8 h- i6 D9 A* a2 V' n2 U
                                            A=sB.Phase-sB[j].Phase;
    % x0 u4 ^* G' c6 D! p9 M4 G                                        DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));) Y1 n! q! B/ I+ @4 Z; m* j
                                            + z# g3 t; z6 q
                                            if(sB.Type==0)//PQ节点
    2 H% G2 [# Q" m4 |; i                                                DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));4 x8 n+ k9 a9 W
                                   
    4 W( ^3 n: Y* U! R                                        else if(sB.Type==1)//PV节点
    3 t" W$ [; Z* Q3 ?! U1 A: d9 s                                                DQ=0;
    8 `7 L& `' U4 z2 E5 Q" A3 o                                }! d  G* z- S/ ^# g' i  F/ _
                            }
    # g1 T" f, G0 f                        else if(sB.Type==2)//平衡节点
    7 g& y3 u, C8 A                                DP=DQ=0;4 b$ x# O4 D& H; u" x( F
                    }
    & J& h6 Z$ R9 e! x6 A                //for(i=0;i<nB;i++)
    7 ^' t/ F; H9 j- J/ v6 \  L                //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);
    3 s8 o5 V6 e1 Z5 k! v# u/ W3 V$ p
                //求解修正方程
    . t7 z- }3 w; c9 v                for(i=0;i<nB-1;i++)
      {0 S0 a' A0 M                    AA1=DP[i+1]/sB[i+1].Volt;
    $ Z5 A8 U, |- a+ K  m* c                for(i=0;i<nB-1-count_PVnode;i++)
    + [3 e2 x( y0 W1 W* J3 G                        AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;- q7 Q- g0 V8 R% Z/ m
                    calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量
    0 Z) m9 }* N. x4 k: m                calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);
    ) Z3 q" c$ |, d' q5 d
    ' a7 y$ A6 v& s                max1=fabs(AA1[0]);
    7 w5 r& c! j5 F  v& p                for(i=1;i<nB-1;i++)) ?  n  ?* z. Y3 [/ V! U
                            if(max1<fabs(AA1))        9 R/ [( k1 p( l% G
                                    max1=fabs(AA1);
    ' u! H3 g+ u/ w8 u2 O+ B2 N                        max2=fabs(AA2[0]);5 Q  F) S1 E: {
                            for(i=1;i<nB-1-count_PVnode;i++)$ \4 Q; D  u# r$ m7 e2 m" M% b# E
                                    if(max2<fabs(AA2))       
    ) V( y  A0 g) k  F& ^                                max2=fabs(AA2);4 P9 l" b( Z5 {$ ]& u8 v
                    for(i=0;i<nB-1;i++)6 _5 w/ ^1 K( N/ i
                            sB[i+1].Phase+=BB1/sB.Volt;
    - [) \" s& F. x7 S4 n6 s                for(i=0;i<nB-1-count_PVnode;i++)' `; I* Y0 p. c
                            sB[i+1+count_PVnode].Volt+=BB2;+ J" V+ D1 a- c3 t$ o" A4 V
                    for(i=0;i<nB;i++). U* W0 H5 b7 C  l# J9 L
                    { 2 j/ U- F# ~5 N. f" O* B
                            printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);
    ' l; v; O8 D) ]( Z2 z                        ) J( h( J3 N8 O( G6 z
                    }, V: X" C; y8 t, R! Q5 J$ i
                    printf("\n");4 O' U! ^6 h* P3 V7 W
                            ci++;* i* Y) L. p" o( ]$ D9 X
            }
    + Q" ]( G. h. V& v* Y6 N        while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);1 C* Y9 g$ o0 z: r4 D* q
    这是我求潮流的程序,用的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( l# l6 |0 y/ @" {1 n( T# D
    ! h, ~) d. n8 N
    / _6 U8 ?1 z% v   跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    真诚赞赏,手留余香
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 19:00:33 | 显示全部楼层
    回复 4# lllmos 1 K  ~- J3 v, i  q# w
    # H0 j8 z6 F9 P& F  ~  ~
    建议楼主换几个软件试试,SPS,PSSE,PowerSystemWorld,特别是PSSE算潮流比较专业。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    真诚赞赏,手留余香
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-4-11 19:04

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

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