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

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

[讨论] PSCAD求方程组

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

    连续签到: 1 天

    [LV.6]常住居民II

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

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

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

    ×
    1211.JPG 如何用pscad求解方程组; q: t4 O) W' h1 M: `

    8 x- ?* }  @/ I8 m  P! u4 `4 x
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    [发帖际遇]: 教会了女神学妹使用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:01
    9 F3 ]& r$ L0 c" e. q; ~我只是路过打酱油的。第一次听说用PSCAD求解方程组的的
    ( @8 y+ m# o( K. o3 X# N) j
    借你的宝地回复一下楼主,我自己的回复好像遇到了网站的bug,显示不出来了7 P2 ]: ?$ b% p: G' 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 | 显示全部楼层
    楼主脑洞很大,哈哈。。   7 b/ L% n- y/ J  F! S- i; b
    但是我要说这不是不可能的,世界属于有梦想的人。
    7 w2 `" B( ?' b& w) [接下来让我我来分析一下楼主的方程,楼主没有交代beta是否就是导通角。我假装楼主想告诉我们f()函数是无法求出解析式的,而楼主求的变量是beta, 那么方程变成 beta - f(U,P) =0 ,已知U和P,方程最终化为一个变量beta的方程,但是没有解析形式的解,无法用pscad计算模块直接计算,所以需要解方程,类似 beta^2+sin(beta)=0这种。
    ) M# x& b+ K* ]2 p5 R那么怎么用pscad求解??   我给楼主提供一下思路,这种方程无法解析求,只能通过非线性方程的数值解法去求解,所以要在pscad里面求解,就需要编写非线性方程求解函数,那么pscad中可以实现非线性方程的求解么,答案是肯定的。首先pscad中有fortran程序自定义功能,我们可以自定义一个模块,输入是U和P的值,仿真中U和P的值自动生成,输入到我们的自定义模块中,我们编写程序求解beta的值,然后作为自定义模块的输出,输出到仿真界面来。这是肯定能实现的,但是好像很麻烦。不用怕,我来提供第二种思路。& }/ h/ B# _0 w

    , [, K) y; R3 G8 r思路2就是,我们不用自己编写非线性数值求解函数,因为Matlab中有现成的,我们只需要实现将pscad中的U和P输出到maltab中,利用maltab中数值求解函数解出来beta,然后再返回pscad即可。 那怎么实现这两个软件之间的数据传递过程呢?我再提供给楼主一个思路,首先利用pscad中fortran自定义功能,做一个写文件的模块,只需要每个步长将仿真产生的U和P写入一个txt文件,然后Matlab读入这个文件中U和P,利用fsovle等非线性方程求解功能求解出beta,然后再写入另外一个txt文件,pscad再次读入这个文件,用到仿真中去即可。。当然我说的很简单,但是实际上需要两个程序之间配合,pscad再进入下次求解之前要等待maltab返回求解结果,这些配合细节需要去设计。% O5 Q4 O* K! e( v, x2 a
    4 i8 ^* q! K/ A. W$ u+ n8 j) G
    楼主脑洞很大,但总有人要去实现这些脑洞。如果你觉得很难,很烦,很虐心,别急,请专业的仿真专家为你来实现  请访问淘宝店铺联系店小二 https://shop188896825.taobao.com/?spm=2013.1.1000126.d21.L4sIMz  哈哈,其实这只是个广告。。哈哈哈。。。有没有感觉被套路了。。+ I1 ]$ F4 q" Y. w# }  H
    但是话说回来,我提供的思路绝对可行,看到帖子的人,有这方面需要,可以作为几个思路参考。如果想让别人帮你解决,就访问店铺吧。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

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

    连续签到: 1 天

    [LV.4]偶尔看看III

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

    使用道具 举报

  • 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 | 显示全部楼层
    操作方法如图
    6 G1 W' V4 K$ ?% Y7 T* E- L, Q& e- j
    附,运行好的程序一份
    4 r) c2 k- ?9 ~4 w7 l3 O$ A要点:1.截切掉数据读取的部分,先运行一遍生成数据;
    4 ^" \/ k' `7 x" L$ t         2.用文件夹元件加载数据所在位置3 x* b* C# {! d4 U% Z7 Z8 K
             3.粘贴剪切的部分,并运行1 F" h/ M1 d7 M% _. N. _$ Y. M
             4.如更改阻抗扫描元件的参数,清除生成的文件重复上述步骤, f( X: z  Y+ T4 j% l* p
    , C5 o4 ^  m' f* F/ l; }( U4 `
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    [发帖际遇]: 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 | 显示全部楼层
    楼主脑洞很大,哈哈。。   # I8 w% x: T- T) Z! g4 s
    但是我要说这不是不可能的,世界属于有梦想的人。
    ! N' e) D  H: p6 u% w- |  d接下来让我我来分析一下楼主的方程,楼主没有交代beta是否就是导通角。我假装楼主想告诉我们f()函数是无法求出解析式的,而楼主求的变量是beta, 那么方程变成 beta - f(U,P) =0 ,已知U和P,方程最终化为一个变量beta的方程,但是没有解析形式的解,无法用pscad计算模块直接计算,所以需要解方程,类似 beta^2+sin(beta)=0这种。
    - b) U# Z1 M4 O9 e4 s那么怎么用pscad求解??   我给楼主提供一下思路,这种方程无法解析求,只能通过非线性方程的数值解法去求解,所以要在pscad里面求解,就需要编写非线性方程求解函数,那么pscad中可以实现非线性方程的求解么,答案是肯定的。首先pscad中有fortran程序自定义功能,我们可以自定义一个模块,输入是U和P的值,仿真中U和P的值自动生成,输入到我们的自定义模块中,我们编写程序求解beta的值,然后作为自定义模块的输出,输出到仿真界面来。这是肯定能实现的,但是好像很麻烦。不用怕,我来提供第二种思路。* t* E$ _3 [2 c, ~3 M" @( e

    % C& X' f8 ~% N" A: G0 P思路2就是,我们不用自己编写非线性数值求解函数,因为Matlab中有现成的,我们只需要实现将pscad中的U和P输出到maltab中,利用maltab中数值求解函数解出来beta,然后再返回pscad即可。 那怎么实现这两个软件之间的数据传递过程呢?我再提供给楼主一个思路,首先利用pscad中fortran自定义功能,做一个写文件的模块,只需要每个步长将仿真产生的U和P写入一个txt文件,然后Matlab读入这个文件中U和P,利用fsovle等非线性方程求解功能求解出beta,然后再写入另外一个txt文件,pscad再次读入这个文件,用到仿真中去即可。。当然我说的很简单,但是实际上需要两个程序之间配合,pscad再进入下次求解之前要等待maltab返回求解结果,这些配合细节需要去设计。
    ' M! C# q" {  N  H  Z
    5 |: h: S$ J' Z/ h楼主脑洞很大,但总有人要去实现这些脑洞。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

  • 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 | 显示全部楼层
    楼主脑洞很大,哈哈。。   
    % j$ E- |9 K4 H& p% u5 N2 F* f6 t但是我要说这不是不可能的,世界属于有梦想的人。

    点评

    怎么发不出来  详情 回复 发表于 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]

    2 J4 l; Y( A: L8 z- P' E* C                               
    登录/注册后可看大图
    [/img]
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    回复 推荐 踩下

    使用道具 举报

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

    本版积分规则

    招聘斑竹

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

    GMT+8, 2025-4-5 05:05

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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