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

 找回密码
 立即加入
搜索
查看: 3128|回复: 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, O# j) o; M* D6 G
    $ w; u3 |. M$ Q( ~8 t8 ^# ~& O! o

    2 @$ B9 q2 n6 H( c8 Y    因为我不知道问题出在哪里了。。
    , z4 q; {' J3 F, odo
    $ J( ?* p, }2 Q7 y        {
    % G  m. Y- h, n; x" O6 `                //求解不平衡量! w: W: t. u9 w9 d5 t+ f1 {' O
                    for(i=0;i<nB;i++)
    + b3 P. E' L( W5 w) ]7 g/ r, {                {
    9 c  S, z9 Y; f; N) j+ c                        if(sB.Type!=2)//假如不是平衡节点" d2 s# h: e# @0 S. J. o1 K' W
                            {        
      b/ I9 K; U, R3 B$ J/ p                                DP=sB.GenP-sB.LoadP;
    4 t" `4 M5 D* r/ V: ?' R                                DQ=sB.GenQ-sB.LoadQ;" }* S. ^' O3 E; _6 O$ }
                                   
    ; R- l8 p4 v- C+ g+ v  I                                for(j=0;j<nB;j++)
    * U. l5 P! r% ~' v4 Y/ b) d; t                                {& Y" k5 H6 Y; I* p7 g5 }
                                            A=sB.Phase-sB[j].Phase;
    : e+ F7 D( T2 t; m: K% Z& g                                        DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));
    , W2 t3 N9 b' O$ v) w                                       
    , w& O9 V# J3 {! Y                                        if(sB.Type==0)//PQ节点0 Z. }1 A6 p2 r: E) B& P
                                                    DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));
    7 j  j' e1 l. M; o! s: n# `2 w                                * n* X2 [% s4 X8 ?4 N
                                            else if(sB.Type==1)//PV节点
    4 w# ]: N/ Y( K' I  s5 u                                                DQ=0;. \& `) X/ t9 c: M$ ~8 D3 w3 @, g6 A
                                    }
    6 A9 f) e, S& N% }& {/ Z# {                        }0 h& k5 r" L4 t$ q$ v* P& h
                            else if(sB.Type==2)//平衡节点
    & X3 L- K  ~9 y; |                                DP=DQ=0;
    7 Q8 b. |6 T( k7 ^" _( d                }
    ' p1 b; B" ?! C                //for(i=0;i<nB;i++)
    4 [. E" E3 N$ Y8 d4 D# r, U                //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);
    6 F% u1 u6 g; b2 \, l' d7 J9 F3 P5 f) u
                //求解修正方程
    : x) J& w  m  _) z9 S4 N                for(i=0;i<nB-1;i++)
    3 O8 d2 X/ V7 y                    AA1=DP[i+1]/sB[i+1].Volt;! `& h; H. Y# v: G8 |' ~8 [: m
                    for(i=0;i<nB-1-count_PVnode;i++). l5 q5 G  }7 D3 G
                            AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;
    ; X5 \  Y1 S: q                calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量1 V' I& r) I5 ]4 N& j* v) B
                    calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);" }1 T# `6 J2 N; w! D, d: `) w
    , u# O6 t% v7 p1 z! n
                    max1=fabs(AA1[0]);2 z5 g2 P0 C$ E) Z$ @& J) y5 S
                    for(i=1;i<nB-1;i++)8 c, M- c4 e; w, o$ _: Z
                            if(max1<fabs(AA1))        ( U/ N+ H! L: `3 c2 d
                                    max1=fabs(AA1);0 J" W! k# ~3 a% W$ C
                            max2=fabs(AA2[0]);
    3 S. [) b8 ~: {& G* |: ^                        for(i=1;i<nB-1-count_PVnode;i++)+ {0 x3 E& s: g& B
                                    if(max2<fabs(AA2))        ( q" l, ?5 Y6 m' ~9 \# c8 l
                                    max2=fabs(AA2);' T+ I  }( T/ t* N$ Z8 t# b
                    for(i=0;i<nB-1;i++)& g9 [- t. E' \7 u. i
                            sB[i+1].Phase+=BB1/sB.Volt;, ?: y  |  R+ I9 }2 u! ^# S
                    for(i=0;i<nB-1-count_PVnode;i++)2 m$ z# s0 C2 L1 W! q2 R
                            sB[i+1+count_PVnode].Volt+=BB2;, I; _$ Z# k* }1 C- A/ `
                    for(i=0;i<nB;i++)0 J  ~& c& j$ d- W- j! v6 ~( k  {6 ^
                    {
    # f& ~9 o4 ~6 l0 x                        printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);
    * a  F- O7 {  L4 V2 a1 C  }                       
    * r8 v; w: {3 D8 O; N                }
    + m" E1 g9 O* ^" d' {! O                printf("\n");+ K1 D2 N  |) g' f4 w2 Y: `
                            ci++;
    1 B- }$ @* v3 u9 y. B& y) i        }" Q. Y; L$ b% y9 d, m5 E+ e; z
            while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);
    & P! B5 R8 v" k这是我求潮流的程序,用的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 : k" ?/ M0 k/ F$ f' H: q. D

    - A* b4 f% a9 h
    1 Q% F% G4 K) b1 G$ t9 Y& R   跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 19:00:33 | 显示全部楼层
    回复 4# lllmos % M  h1 x  ]& j1 ~

    , Y; A0 K* [0 c# c2 w! f+ g0 S+ i建议楼主换几个软件试试,SPS,PSSE,PowerSystemWorld,特别是PSSE算潮流比较专业。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-11-3 20:38

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

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