发明名称 基于CUDA并行计算实现电力系统电磁暂态实时仿真测试方法
摘要 本发明公开了一种基于CUDA并行计算实现电力系统电磁暂态实时仿真测试方法,电磁暂态仿真测试主机采用CPU+GPU方式,GPU应用CUDA平台并行计算架构,仿真测试主机通过千兆以太网和各路信号采集设备连接;主要针对数字化变电站的仿真而不是全网或全系统的仿真,模型可以大大简化,能够将传统仿真速度提高几十至几百倍,实现变电站电磁暂态实时仿真计算要求;由于CUDA并行计算平台的成本相对于大型并行计算机或专业并行计算机的成本大大降低,本专利提出的方法在电力系统电磁暂态实时仿真上性能大幅提高、成本巨幅降低,具有广泛推广的价值。
申请公布号 CN103186366B 申请公布日期 2017.05.03
申请号 CN201210241410.6 申请日期 2012.07.12
申请人 深圳市康必达控制技术有限公司 发明人 刘劲;丁建义;鄢军华;张孝山;刘正方
分类号 G06F9/38(2006.01)I 主分类号 G06F9/38(2006.01)I
代理机构 深圳市恒申知识产权事务所(普通合伙) 44312 代理人 陈健
主权项 基于CUDA并行计算实现电力系统电磁暂态实时仿真测试方法,基于数字化变电站电磁暂态实时仿真测试系统,其实现包括以下步骤:a、电磁暂态仿真测试主机采用CPU+GPU方式,GPU应用CUDA平台并行计算架构,仿真测试主机通过千兆以太网和各路信号采集设备连接;b、所述CUDA把计算分解成一个一个的内核函数(kernel):kernel_1,kernel_2……kernel_M,每一个内核函数(kernel)就交给每一个网格(Grid)来完成,网格(Grid)又把任务划分为一个个的块(Block),这里每一个网格(Grid)管理的块(Block)是有限的,块(Block)这个层直接管理每一个线程(Thread);c、在进行电力系统电磁暂态实时仿真的时候,就是将2k次的计算分配到不同的线程(Thread)中去,所述k为正整数,由于CUDA计算核的数量非常多,当2k小于这个数量时,在每一个2k的计算中可以将计算分解成更多的并行计算,通过开发适合CUDA程序执行模型的算法,并合理设置块(Block)和线程(Thread)数目,可充分利用GPU强大的并行处理能力,解决电磁暂态海量数据的处理问题;d、具体计算方法采用线性常微分方程组,经过简单变换,可以写成如下形式:dX/dt=F(X)+G(U)      (1)X为系统状态变量矩阵采用两点欧拉法,即X<sub>i</sub><sup>n+1</sup>=X<sub>i</sub><sup>n‑1</sup>+(2h)(dX<sub>i</sub><sup>n</sup>/dt)        (2)将(1)代入(2),得X<sub>i</sub><sup>n+1</sup>=X<sub>i</sub><sup>n‑1</sup>+(2h)(F<sub>i</sub>(X<sup>n</sup>)+G<sub>i</sub>(U<sup>n</sup>))     (3)为保证计算方法的数值稳定性,用预测‑校正的方法解方程组(3),得到(4)式,这里,X<sub>ip</sub><sup>n+1</sup>为预测值,X<sub>ic</sub><sup>n+1</sup>为校正值;X<sub>ip</sub><sup>n+1</sup>=X<sub>i</sub><sup>n‑1</sup>+2h(F<sub>i</sub>(X<sup>n</sup>)+G<sub>i</sub>(U<sup>n</sup>))      (4)X<sub>ic</sub><sup>n+1</sup>=X<sub>i</sub><sup>n</sup>+(h/2)(F<sub>i</sub>(X<sup>n</sup>)+G<sub>i</sub>(U<sup>n</sup>)+F<sub>i</sub>(X<sub>p</sub><sup>n+1</sup>)+G<sub>i</sub>(U<sup>n+1</sup>))       (5)其中,i=1,2,…,k(4)(5)包含2k个等式计算,但(4)式k个等式必须先计算,(5)式因需用到X<sub>p</sub><sup>n+1</sup>,U<sup>n+1</sup>,所以必须等(4)式全部计算完才能计算;为实现2k个等式同时计算,将X<sub>p</sub><sup>n+1</sup>,U<sup>n+1</sup>用X<sub>p</sub><sup>n</sup>,U<sup>n</sup>代替,得到下式:X<sub>ic</sub><sup>n+1</sup>=X<sub>i</sub><sup>n</sup>+(h/2)(F<sub>i</sub>(X<sup>n</sup>)+G<sub>i</sub>(U<sup>n</sup>)+F<sub>i</sub>(X<sub>p</sub><sup>n</sup>)+G<sub>i</sub>(U<sup>n</sup>))      (6)联合(4)(6)即可实现2k个等式的并行计算。
地址 518040 广东省深圳市福田区车公庙泰然科技园213栋7B