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

 找回密码
 立即加入
搜索
查看: 1452|回复: 19

[讨论] PSCAD求方程组

[复制链接]
  • TA的每日心情
    郁闷
    2018-5-25 15:53
  • 签到天数: 109 天

    连续签到: 1 天

    [LV.6]常住居民II

    累计签到:109 天
    连续签到:1 天
    发表于 2016-12-11 16:37:05 | 显示全部楼层 |阅读模式

    马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

    您需要 登录 才可以下载或查看,没有账号?立即加入

    ×
    1211.JPG 如何用pscad求解方程组
    / o) W; f5 U4 g. J, l, g
    ; Q5 G( K6 j. Q: o
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    [发帖际遇]: 教会了女神学妹使用PSCAD,送了cuicui 威望2 点 ,么么哒. 幸运榜 / 衰神榜
    楼主热帖
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    郁闷
    2017-3-11 09:56
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    累计签到:23 天
    连续签到:1 天
    发表于 2016-12-11 20:08:50 | 显示全部楼层
    ZGGLLJT 发表于 2016-12-11 19:015 Z4 [' Q- j6 c+ \6 T) u6 l$ l( c% i
    我只是路过打酱油的。第一次听说用PSCAD求解方程组的的
    : k' O' P% z  ~0 K; @, m$ h& `
    借你的宝地回复一下楼主,我自己的回复好像遇到了网站的bug,显示不出来了
    4 l: h- T( a* E5 A
    2.JPG
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    [发帖际遇]: 今天领导高兴对 crosssky工作表现很满意,奖励了 威望1 点. 幸运榜 / 衰神榜
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 1 踩下 0

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-3-11 09:56
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    累计签到:23 天
    连续签到:1 天
    发表于 2016-12-11 19:42:49 | 显示全部楼层
    楼主脑洞很大,哈哈。。   
    ; d, r$ ^4 s; g& U' |; r. y但是我要说这不是不可能的,世界属于有梦想的人。
    . v7 V5 n( u2 k接下来让我我来分析一下楼主的方程,楼主没有交代beta是否就是导通角。我假装楼主想告诉我们f()函数是无法求出解析式的,而楼主求的变量是beta, 那么方程变成 beta - f(U,P) =0 ,已知U和P,方程最终化为一个变量beta的方程,但是没有解析形式的解,无法用pscad计算模块直接计算,所以需要解方程,类似 beta^2+sin(beta)=0这种。( i2 ^9 v& Q1 Z9 q+ ~: z$ I, C# A
    那么怎么用pscad求解??   我给楼主提供一下思路,这种方程无法解析求,只能通过非线性方程的数值解法去求解,所以要在pscad里面求解,就需要编写非线性方程求解函数,那么pscad中可以实现非线性方程的求解么,答案是肯定的。首先pscad中有fortran程序自定义功能,我们可以自定义一个模块,输入是U和P的值,仿真中U和P的值自动生成,输入到我们的自定义模块中,我们编写程序求解beta的值,然后作为自定义模块的输出,输出到仿真界面来。这是肯定能实现的,但是好像很麻烦。不用怕,我来提供第二种思路。
    * H( V: r3 T  w! I( ^  i' c# ^& @+ Z7 T# f% F$ G! r
    思路2就是,我们不用自己编写非线性数值求解函数,因为Matlab中有现成的,我们只需要实现将pscad中的U和P输出到maltab中,利用maltab中数值求解函数解出来beta,然后再返回pscad即可。 那怎么实现这两个软件之间的数据传递过程呢?我再提供给楼主一个思路,首先利用pscad中fortran自定义功能,做一个写文件的模块,只需要每个步长将仿真产生的U和P写入一个txt文件,然后Matlab读入这个文件中U和P,利用fsovle等非线性方程求解功能求解出beta,然后再写入另外一个txt文件,pscad再次读入这个文件,用到仿真中去即可。。当然我说的很简单,但是实际上需要两个程序之间配合,pscad再进入下次求解之前要等待maltab返回求解结果,这些配合细节需要去设计。
    - l, N; [2 s) E( U) c8 z/ Y
      y" Z3 b( R% H8 v3 [楼主脑洞很大,但总有人要去实现这些脑洞。如果你觉得很难,很烦,很虐心,别急,请专业的仿真专家为你来实现  请访问淘宝店铺联系店小二 https://shop188896825.taobao.com/?spm=2013.1.1000126.d21.L4sIMz  哈哈,其实这只是个广告。。哈哈哈。。。有没有感觉被套路了。。, l& i( ^3 F4 p/ O2 D% Z8 O1 i
    但是话说回来,我提供的思路绝对可行,看到帖子的人,有这方面需要,可以作为几个思路参考。如果想让别人帮你解决,就访问店铺吧。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-3-11 09:56
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    累计签到:23 天
    连续签到:1 天
    发表于 2016-12-11 19:45:55 | 显示全部楼层
    楼主脑洞很大,哈哈。。   - f! x! y: J* J5 K* x* q
    但是我要说这不是不可能的,世界属于有梦想的人。# T. C$ H+ T& A) R
    接下来让我我来分析一下楼主的方程,楼主没有交代beta是否就是导通角。我假装楼主想告诉我们f()函数是无法求出解析式的,而楼主求的变量是beta, 那么方程变成 beta - f(U,P) =0 ,已知U和P,方程最终化为一个变量beta的方程,但是没有解析形式的解,无法用pscad计算模块直接计算,所以需要解方程,类似 beta^2+sin(beta)=0这种。
    / X& Y& \; a+ q那么怎么用pscad求解??   我给楼主提供一下思路,这种方程无法解析求,只能通过非线性方程的数值解法去求解,所以要在pscad里面求解,就需要编写非线性方程求解函数,那么pscad中可以实现非线性方程的求解么,答案是肯定的。首先pscad中有fortran程序自定义功能,我们可以自定义一个模块,输入是U和P的值,仿真中U和P的值自动生成,输入到我们的自定义模块中,我们编写程序求解beta的值,然后作为自定义模块的输出,输出到仿真界面来。这是肯定能实现的,但是好像很麻烦。不用怕,我来提供第二种思路。
    & L9 K7 k/ M+ \) A4 \, E5 W* `. O' U# n- q& o
    思路2就是,我们不用自己编写非线性数值求解函数,因为Matlab中有现成的,我们只需要实现将pscad中的U和P输出到maltab中,利用maltab中数值求解函数解出来beta,然后再返回pscad即可。 那怎么实现这两个软件之间的数据传递过程呢?我再提供给楼主一个思路,首先利用pscad中fortran自定义功能,做一个写文件的模块,只需要每个步长将仿真产生的U和P写入一个txt文件,然后Matlab读入这个文件中U和P,利用fsovle等非线性方程求解功能求解出beta,然后再写入另外一个txt文件,pscad再次读入这个文件,用到仿真中去即可。。当然我说的很简单,但是实际上需要两个程序之间配合,pscad再进入下次求解之前要等待maltab返回求解结果,这些配合细节需要去设计。
    5 j5 v9 W5 p. n& F% p( G( h
    . \  z2 W* L; Y$ `" w) @- @楼主脑洞很大,但总有人要去实现这些脑洞。如果你觉得很难,很烦,很虐心,别急,请专业的仿真专家为你来实现  请访问我的店铺,搜索淘宝店铺:电力系统仿真编程小组。。 哈哈。。哈哈哈。。。有没有感觉被套路了。。; j. i2 K# Z2 I( A
    但是话说回来,我提供的思路绝对可行,看到帖子的人,有这方面需要,可以作为几个思路参考。如果想让别人帮你解决,请找我
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-3-6 19:11
  • 签到天数: 237 天

    连续签到: 1 天

    [LV.7]常住居民III

    累计签到:237 天
    连续签到:1 天
    发表于 2016-12-11 19:01:56 | 显示全部楼层
    我只是路过打酱油的。第一次听说用PSCAD求解方程组的的

    点评

    借你的宝地回复一下楼主,我自己的回复好像遇到了网站的bug,显示不出来了  详情 回复 发表于 2016-12-11 20:08
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    [发帖际遇]: 教会了女神学妹使用PSCAD,送了ZGGLLJT 威望3 点 ,么么哒. 幸运榜 / 衰神榜
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    擦汗
    2021-5-26 08:36
  • 签到天数: 603 天

    连续签到: 1 天

    [LV.9]以坛为家II

    累计签到:603 天
    连续签到:1 天
    发表于 2016-12-11 19:25:36 | 显示全部楼层
    操作方法如图* K" y8 `2 S# l0 L6 g6 C

    ! v$ x1 M+ p  j6 l* E附,运行好的程序一份+ N5 Q6 u4 O' O- d
    要点:1.截切掉数据读取的部分,先运行一遍生成数据;' Y5 ~' B* u# F' j( D
             2.用文件夹元件加载数据所在位置- Y$ l$ u# k/ E$ s8 c  |
             3.粘贴剪切的部分,并运行
    8 l# |+ X2 x& ]) C2 H5 x) V+ m         4.如更改阻抗扫描元件的参数,清除生成的文件重复上述步骤" W( d4 |1 O; d# B% i* r3 R

    0 i! D# W7 S& V) t( b
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    [发帖际遇]: stoat捐助研学论坛,另外奖励威望2 点. 幸运榜 / 衰神榜
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    擦汗
    2021-5-26 08:36
  • 签到天数: 603 天

    连续签到: 1 天

    [LV.9]以坛为家II

    累计签到:603 天
    连续签到:1 天
    发表于 2016-12-11 19:26:59 | 显示全部楼层
    发错了抱歉

    评分

    参与人数 1威望 -1 收起 理由
    抢楼评分专号 -1 不要重复抢楼哦!

    查看全部评分

    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-3-11 09:56
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    累计签到:23 天
    连续签到:1 天
    发表于 2016-12-11 19:46:19 | 显示全部楼层
    楼主脑洞很大,哈哈。。   2 C; a  p3 }1 j+ u. i2 O- q
    但是我要说这不是不可能的,世界属于有梦想的人。0 |. h/ d7 j' _
    接下来让我我来分析一下楼主的方程,楼主没有交代beta是否就是导通角。我假装楼主想告诉我们f()函数是无法求出解析式的,而楼主求的变量是beta, 那么方程变成 beta - f(U,P) =0 ,已知U和P,方程最终化为一个变量beta的方程,但是没有解析形式的解,无法用pscad计算模块直接计算,所以需要解方程,类似 beta^2+sin(beta)=0这种。
    # M- I7 y( {- g; a+ x7 ]3 O  ?: a那么怎么用pscad求解??   我给楼主提供一下思路,这种方程无法解析求,只能通过非线性方程的数值解法去求解,所以要在pscad里面求解,就需要编写非线性方程求解函数,那么pscad中可以实现非线性方程的求解么,答案是肯定的。首先pscad中有fortran程序自定义功能,我们可以自定义一个模块,输入是U和P的值,仿真中U和P的值自动生成,输入到我们的自定义模块中,我们编写程序求解beta的值,然后作为自定义模块的输出,输出到仿真界面来。这是肯定能实现的,但是好像很麻烦。不用怕,我来提供第二种思路。
    ' T* E( N5 q" C3 @! j
    . n) ?: T6 y, k) E思路2就是,我们不用自己编写非线性数值求解函数,因为Matlab中有现成的,我们只需要实现将pscad中的U和P输出到maltab中,利用maltab中数值求解函数解出来beta,然后再返回pscad即可。 那怎么实现这两个软件之间的数据传递过程呢?我再提供给楼主一个思路,首先利用pscad中fortran自定义功能,做一个写文件的模块,只需要每个步长将仿真产生的U和P写入一个txt文件,然后Matlab读入这个文件中U和P,利用fsovle等非线性方程求解功能求解出beta,然后再写入另外一个txt文件,pscad再次读入这个文件,用到仿真中去即可。。当然我说的很简单,但是实际上需要两个程序之间配合,pscad再进入下次求解之前要等待maltab返回求解结果,这些配合细节需要去设计。! D% b, u& D3 H# e6 Q" q

      u: ~) K! k; y+ Y! T4 n8 P: k楼主脑洞很大,但总有人要去实现这些脑洞。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-3-11 09:56
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    累计签到:23 天
    连续签到:1 天
    发表于 2016-12-11 19:50:36 | 显示全部楼层
    哈哈哈,脑洞很大
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-3-11 09:56
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    累计签到:23 天
    连续签到:1 天
    发表于 2016-12-11 19:50:53 | 显示全部楼层
    楼主脑洞很大,哈哈。。   . v% w: K' K" l& I- |# ]  F, r9 W! f' r4 b
    但是我要说这不是不可能的,世界属于有梦想的人。

    点评

    怎么发不出来  详情 回复 发表于 2016-12-11 19:58
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-3-11 09:56
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    累计签到:23 天
    连续签到:1 天
    发表于 2016-12-11 19:54:38 | 显示全部楼层
    擦,正常发个贴,就是因为我字数太多了,竟然说我再灌水,给我删了。。。贴个图吧。[img]
    * G, I6 O, @0 c1 N8 J# T% e$ q
                                   
    登录/注册后可看大图
    [/img]
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

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

    GMT+8, 2025-4-25 12:05

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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