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

 找回密码
 立即加入
搜索
查看: 2837|回复: 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# 玉门关山
    6 P: j) U7 C% N- y
    6 R+ y7 Q# U5 C
    ( M: n- V$ L3 ?7 `/ P4 L    因为我不知道问题出在哪里了。。
    2 U: r5 S' {' t4 t! N. `+ D1 u) ado
      n9 z( |" X6 m" e0 o/ O7 A        {" P& D, _3 o+ O; m2 h0 y
                    //求解不平衡量! r/ T: G  b2 {, a# c& Z, u
                    for(i=0;i<nB;i++)
    8 ^' e% B" g% e" B, \' ~$ M9 W: n                {% T/ B3 y. f0 P# @& p2 y" A' [
                            if(sB.Type!=2)//假如不是平衡节点
    $ r$ o4 w  \$ _! [                        {         * c! T) r0 G( x# b& w
                                    DP=sB.GenP-sB.LoadP;0 X! N) A6 \: F$ ~. w0 |. P7 L+ Y- H
                                    DQ=sB.GenQ-sB.LoadQ;
    7 e4 h- p. ?; f# i! \/ I( v                                6 i! i8 P! a& a( Q% S3 j
                                    for(j=0;j<nB;j++)1 e; k$ n" }- v4 V
                                    {: e. B0 P/ D, g* v5 C3 e2 U
                                            A=sB.Phase-sB[j].Phase;
    4 O: _$ C1 M6 ~* r                                        DP-=sB.Volt*(sB[j].Volt*(g[j]*cos(A)+b[j]*sin(A)));1 @" c# b$ z; [8 K  V* `
                                           
    , z3 ^2 l4 F& P( n% N& ^                                        if(sB.Type==0)//PQ节点
    , |" q: l7 k: ~6 N5 F6 ~                                                DQ-=sB.Volt*(sB[j].Volt*(g[j]*sin(A)-b[j]*cos(A)));
    . m9 O0 N  R, {' i" O/ M' K% \                                # L2 z  E% E8 `2 H
                                            else if(sB.Type==1)//PV节点
    ( _! K) c2 a6 H1 h1 j                                                DQ=0;5 T* L! F( Q: M: e
                                    }! o5 r- I3 w1 b/ ?! l
                            }  ?$ L. {! M* L4 w1 t# R
                            else if(sB.Type==2)//平衡节点
    ) b0 l3 V  K0 F                                DP=DQ=0;
    # [, n! R& i+ D5 z) ]: n                } 3 C4 I. j# ?; B. X, \* p
                    //for(i=0;i<nB;i++)
    5 `6 N5 n7 M3 {( x- Z0 |+ C                //         printf("DP[%d]===%f,DQ[%d]===%f\n",i,DP,i,DQ);
    1 T- K$ x' j; ]( O( w' d+ `% _* R
                //求解修正方程
      T/ H& t9 y6 H* C- R                for(i=0;i<nB-1;i++)
    2 H* d9 P9 o8 g. K& E) x                    AA1=DP[i+1]/sB[i+1].Volt;
    8 e- }% s; M7 b                for(i=0;i<nB-1-count_PVnode;i++)
    - m+ I# X( W7 f  r1 R                        AA2=DQ[i+1+count_PVnode]/sB[i+1+count_PVnode].Volt;
    9 i) H0 X; c4 {" S# _. D                calculate_gaosi((double **)b1,BB1,AA1,NBUS-1);//AA是不平衡量,BB是解向量
    0 V) H4 I! s1 G2 J/ U                calculate_gaosi((double **)b2,BB2,AA2,NBUS-1);0 Q) _9 f+ I. H7 d9 d

    ) q0 t4 b, b' q" q, m* J  F. u                max1=fabs(AA1[0]);, W- c2 Q8 G% `8 J  a
                    for(i=1;i<nB-1;i++)
    " s6 n+ C% Y6 Y                        if(max1<fabs(AA1))        1 `' t' i- T& p
                                    max1=fabs(AA1);
    % |  z% Q# H  c+ q; O# K2 K$ y4 S                        max2=fabs(AA2[0]);! k9 N: @4 t; d2 o# o
                            for(i=1;i<nB-1-count_PVnode;i++)
    / _5 c: ~/ |' a# Y                                if(max2<fabs(AA2))       
    / r, h* w/ N- |6 e                                max2=fabs(AA2);! f7 W0 N- h7 m; ]* c0 x
                    for(i=0;i<nB-1;i++)
    0 }! w, L9 J% P& P4 M                        sB[i+1].Phase+=BB1/sB.Volt;
    * v3 G" T! K7 @% u* ?6 {7 x                for(i=0;i<nB-1-count_PVnode;i++)
    % h, I+ }. o! p2 E                        sB[i+1+count_PVnode].Volt+=BB2;
    3 _* P* G, V' o& M                for(i=0;i<nB;i++)
    ' q  d: k6 l/ Q                { + m5 I4 s) k( N7 w5 Q/ H4 K+ J
                            printf("sB[%d].Volt=%f,sB[%d].Phase=%f\n",i,sB.Volt,i,sB.Phase*180/PI);$ z  e5 `$ Z- L: @
                            ; j3 a" k/ L0 p- V+ e# D6 P/ k
                    }2 y" \8 M9 E/ Y, P) [
                    printf("\n");
    6 A- P/ x% l# K. r4 q                        ci++;4 a/ s5 G2 \: e& w3 @4 A3 R  I2 x
            }
    + b! u( }0 z" G9 k' \        while(fabs(max1)>0.00001&&fabs(max2)>0.00001&&ci<40);1 r4 G8 a. }: k* e% 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
    . I6 v) o' T0 `
    4 m0 G& e" Z8 |- [0 e. d7 u! p# o  f: ^3 ~" d" N" g) ]' a  R, X
       跟你的收敛条件设置有关系啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2019-7-21 09:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2026-3-16 10:26

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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