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

 找回密码
 立即加入
搜索
查看: 2294|回复: 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# 玉门关山 % P) m1 c) `& i
    - ^' l! m* K9 Y  I! f6 V

    + A0 P5 M/ [4 y3 z- D6 i    因为我不知道问题出在哪里了。。
    0 [; s. s7 \3 Q* t. Qdo
    7 d4 N  @$ Z# L; d. Q7 @9 H        {
    ( E: W% V& ?% W8 v8 E0 @3 l7 h                //求解不平衡量/ `5 ~1 B' n6 G9 C) ?! X7 R
                    for(i=0;i<nB;i++)
    : u7 h+ v( l' H. b6 l: Q                {! ^  U4 T) u! C
                            if(sB.Type!=2)//假如不是平衡节点
    , w5 `  v5 Z- Z/ ]                        {        
    ' p# H2 K9 Z' q2 i" u                                DP=sB.GenP-sB.LoadP;
    6 |- }+ P: I2 ^                                DQ=sB.GenQ-sB.LoadQ;% ^% p( x+ `! D/ u' {2 m
                                    , d& D1 l% j; _! y' w% d4 e6 b
                                    for(j=0;j<nB;j++)
    ) X  O7 d2 f5 K/ v                                {3 R  v& S9 ^/ ]8 E
                                            A=sB.Phase-sB[j].Phase;4 u; _& Z0 T  M& Y/ O1 |
                                            DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));
      H" ?7 h# e. K) M5 y                                        . a6 `4 @6 O* s& |! U
                                            if(sB.Type==0)//PQ节点
    6 R4 c) F/ ]. K! \( L4 T+ F) W9 \                                                DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));
    & k- ~* G8 ~0 Y' t5 i                               
    " p( d3 Y- u! C                                        else if(sB.Type==1)//PV节点
    % F2 v$ Z/ I8 g% ^$ y  o# a' r                                                DQ=0;
      _) [2 U( c6 N7 x9 a6 [+ c                                }
    ( N7 J3 E" O& l; A3 t/ p$ c* y                        }
    : ?0 O, @' {1 H' x5 b& |7 b6 }& B( f                        else if(sB.Type==2)//平衡节点
    . e# f$ ]8 h" m( U! F, [: p) m* Q6 N                                DP=DQ=0;
    8 n5 Q7 k9 v0 S, W, I2 e# ]- O, W; ^                }
    % s8 {8 z# n0 r, }" J                //for(i=0;i<nB;i++)$ i, v/ x6 [' W- e
                    //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);  O* Q$ k8 D8 ^1 W1 y( i9 Y

      }9 \8 h+ w4 s! n* M/ [+ C            //求解修正方程) e5 @* ]& }/ K. b2 h( u  V
                    for(i=0;i<nB-1;i++)9 Y" k& H" B8 }9 u1 x
                        AA1=DP[i+1]/sB[i+1].Volt;
    ) n+ A: D8 {# ~# K# r                for(i=0;i<nB-1-count_PVnode;i++)3 T4 A) g0 P1 i8 @
                            AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;" \. {5 L3 U- T2 o! U2 L1 G
                    calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量
    : K5 v0 z; o9 i2 l                calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);7 }/ H7 o  B- Q

    ! }  @, C0 B. a3 ]. G) k" R6 w, b                max1=fabs(AA1[0]);
    1 n4 E- C: |2 Z! A4 S: V                for(i=1;i<nB-1;i++)- w/ T+ S" j9 H/ [2 z' x) w
                            if(max1<fabs(AA1))       
    / w- g$ ?$ l6 ]1 _                                max1=fabs(AA1);/ s. g4 G  F9 b+ z4 |$ t
                            max2=fabs(AA2[0]);+ `$ Y7 a7 }' M" O9 s4 W- c
                            for(i=1;i<nB-1-count_PVnode;i++)
    : t7 ?; c; s6 E" B+ q% i: K                                if(max2<fabs(AA2))       
    1 b5 y# {' h1 h# o6 \                                max2=fabs(AA2);% G, m$ `; @4 ]5 i
                    for(i=0;i<nB-1;i++)
    4 `: |  W. S* r" S+ T4 t, ?                        sB[i+1].Phase+=BB1/sB.Volt;
    3 U1 q" K4 q  S1 S6 B4 T. A                for(i=0;i<nB-1-count_PVnode;i++)+ j" V0 D! z: D2 q9 P
                            sB[i+1+count_PVnode].Volt+=BB2;5 O- V$ U$ h% A
                    for(i=0;i<nB;i++)
    1 {( k# O& T* H, B/ Z+ @                {
    & h- Q% u! K! E0 s' A4 `+ V                        printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);
    9 X  q" o" \1 |8 G4 Q                       
    # r7 A0 N, V2 I& D                }
    ! q2 k% F1 h5 s                printf("\n");: [8 A$ r8 G7 {7 W
                            ci++;# `, |. `9 n( `) Z, l
            }- |3 W% c* @; L* M$ t% G
            while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);
    7 P2 B. K" B& V. @- L8 W这是我求潮流的程序,用的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
    2 q2 Z9 e* m0 E+ |
    0 A9 ^; r! |( @) z! U4 N8 X3 W1 r+ q
       跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2015-10-4 19:00:33 | 显示全部楼层
    回复 4# lllmos / K1 `7 W4 L! o+ l* \, U* p6 {2 R6 E

    " ~' G# d" j- B1 q' z8 H, B建议楼主换几个软件试试,SPS,PSSE,PowerSystemWorld,特别是PSSE算潮流比较专业。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

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

    GMT+8, 2024-6-5 16:25

    Powered by Discuz! X3.5 Licensed

    © 2001-2024 Discuz! Team.

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