【摘要】:PSASP用户自定义程序接口功能也属于交替求解,下面对PSASP/UPI的接口原理和应用情况进行说明。如果用户在开发新程序时,能够充分利用PSASP的资源,不但可大大减少开发的工作量,缩短开发周期,而且能提高新程序的可靠性。其计算过程可用图3.1描述,设t为潮流程序和UPI交替运行的次数。图3.1PSASP主程序和UPI的连接PSASP潮流计算和UPI的接口信息提供了该UPI被多次调用的全部数据和信息。
电力系统分析综合程序(Power System Analysis Synthesis Program,PSASP)是一套功能齐全、使用便捷的电力系统分析程序,其相当于一个资源共享、使用方便、高度集成和开放的大型软件包。它是基于电网基础数据库、固定模型库以及用户自定义模型库的支持,可进行电力系统的各种计算分析。
PSASP用户自定义程序接口功能(UPI)也属于交替求解,下面对PSASP/UPI的接口原理和应用情况进行说明。如果用户在开发新程序时,能够充分利用PSASP的资源,不但可大大减少开发的工作量,缩短开发周期,而且能提高新程序的可靠性。为此,在PSASP基础上,开发了用户程序接口(User Program Interface,UPI)的功能(PSASP/UPI),使PSASP和用户程序的执行模块,通过接口文件传递数据,交替运行,共同完成一个计算任务。这一思路和作法,使PSASP变成一开放的软件包,一方面其资源可为其他程序共享,另一方面也为PSASP自身的开拓和发展创造了非常有利的条件。其计算过程可用图3.1描述,设t为潮流程序和UPI交替运行的次数。
图3.1 PSASP主程序和UPI的连接
PSASP潮流计算和UPI的接口信息提供了该UPI被多次调用的全部数据和信息。其接口格式为:LF_UP(Markend,Ntime,NPar,F1,nf1,F2,nf2,F3,nf3,V1,nv1,IVP,NVP,nnvp)。
(1)一般信息。
Markend表示计算是否结束标记;如果Markend=1,继续计算(初始设为1);如果Marend=0,中止计算(由UPI根据计算目标是否达到给出该信息)。Ntime表示该UPI被调用的总次数。NPar表示每次调用UPI的参数组号数组,维数为Ntime。
(2)UPI输入变量数据。
UPI输入变量数组(F1)及其维数(nf1)。F1数组下标从0开始,其结构如下:
若该UPI被调用Ntime次,则nf1=n1×Ntime。
(3)UPI输出变量数据信息。
UPI输出变量数组(F2)及其维数(nf2)。F2数组下标从0开始,其结构如下:
若该UPI被调用Ntime次,则nf2=n2×Ntime。
(4)UPI打印变量数据。
UPI打印变量数组(F3)及其维数(nf3)。F3数组下标从0开始,其结构如下:
若该UPI被调用Ntime次,则nf3=n3×Ntime。
(5)按照所使用程序语言的要求,将UPI编译为动态链接库(*.DLL)。
在Windows操作系统中,可利用其所提供的动态链接库(DLL)支持,使程序以一定方式调用DLL中的函数或过程,这为PSASP的用户程序接口提供了很好的支持。对于VC++6.0,需要建立一个“Win32 Dynamic-Link Library”的空项目,再将编好的UPI程序加入项目中,建立所需动态连接库文件*.dll。
相关推荐