oracle sql 调用自定义函数_PSCAD入门教程(第7节):怎样调用fortran编写的自定义函数?(附模型)...

本节PSCAD教程详细介绍了如何在模型中调用FORTRAN编写的自定义函数进行数值比较和排序。通过创建自定义元件并利用my_bj子程序,实现了对三个输入值的排序并输出。同时,文章还提及了在多个子模块电容电压排序问题中的应用,并提供了参考示例和模型链接。
摘要由CSDN通过智能技术生成

b383452643eede1fb87e46cef4b51243.png
PSCAD入门教程(第7节):怎样调用fortran编写的自定义函数?(附模型)​mp.weixin.qq.com
55679844081f4c396cfeb00663f35059.png
74beccca6f1bbe28751b827ca698ca08.png
https://www.zhihu.com/video/1242208346717540352

第7节 怎样在pscad中call自定义函数?(自定义函数由fortran语言编写)

7.1 pscad脚本中call的函数由fortran语言编写7.1.1在Fortran编译器中编写如下函数(可以先在文本文档中写,再把文本档后缀改为.f,但前提是你装了fortran编译器):<!函数功能:比较i和j的大小,并将小赋值给i,大的赋值给j。注意每段前空6格>

Subroutine my_bj(i,j)

REAl i,j,t

if (i>j) THEN

t=i

i=j

j=t

ENDIF

end subroutine my_bj

7.1.2将该函数文件加载到pscad中(讲解视频中可能忘说这步了...)。

6a4eacb3f5b695a603c84a6406973671.png

7.1.3新建一个自定义模型(元件),并在其中自定义模型中调用函数。

961e0d68cd975fcc2eb7c34d6f1fcc12.png

<!功能:通过调用两值比较函数,将三个输入i1、i2、i3从小到大排序,并按从小到大的顺序,依次赋值给o1、o2、o3输出>。

#STORAGE INTEGER:10

#STORAGE REAL:10

#LOCAL INTEGER NMY_NSTORF

#LOCAL INTEGER NMY_NSTORI

#LOCAL REAL a,b,c

#BEGIN

#ENDBEGIN

a=$i1

b=$i2

c=$i3

IF(a .gt. b) THEN

call my_bj(a,b)

ENDIF

IF(b .gt. c) THEN

call my_bj(b,c)

ENDIF

IF(a .gt. b) THEN

call my_bj(a,b)

ENDIF

$o1=a

$o2=b

$o3=c

47af3e2aa95c39df990d865eb50c5ccc.png

7.1.4 对于多个子模块电容电压排序,需要注意的是,它不仅需要将多个子模块的电容电压值进行排序,还需要知道排序后的子模块电容的编号,这样才能确定是否让该子模块投切。附一个我参考博客上的排序例子(该排序算法用于pscad中排序时,部分程序需要省略,但该程序借鉴意义极大):<博主名称:楚香饭>链接如下

近期预告

1.PSCAD/Matlab仿真模型解读

往期回顾

35b9bfd219edaf59be28c01afaa3070e.png

PSCAD入门教程(第6节):构建自定义元件(附讲解模型)

简单示例模型在文章底部自行提取!

35b9bfd219edaf59be28c01afaa3070e.png

PSCAD入门教程(第5节): 4种常用元件的使用(附讲解模型)

简单示例模型在文章底部自行提取!

由于本人水平有限,所述内容难免会有疏漏之处,有遗漏或阐述不当之处请各位同学、老师傅指正,公众号私信或QQ(3135975766)

ac2d9970855f91f700909be9b2e81cad.png

222bd7a42ae9f8af22eb617c7fb6bf48.png

85044460c2f6d259cf02bd67e44d2d2c.png

示例模型百度网盘链接(其中有一个为官方CInterface模型可用于学习)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值