python跨项目调用电力系统—转移因子法求潮流,Python0基础

(3)代码实现(方法2)

import numpy as np

from scipy import optimize as opt

from scipy.optimize import minimize

目标函数

def objective(x): #=原文中的mincost

p11=x[0]

p12=x[1]

p13=x[2]

p21=x[3]

p22=x[4]

p23=x[5]

p31=x[6]

p32=x[7]

p33=x[8]

return (40p11+50p12+57.5p13+43.75p21+46.25p22+48.75p23+55.8p31+57p32+58.2*p33)

约束条件

def constraint1(x): #等式约束

pI11 = x[0]

pI12 = x[1]

pI13 = x[2]

pI21 = x[3]

pI22 = x[4]

pI23 = x[5]

pI31 = x[6]

pI32 = x[7]

pI33 = x[8]

PG1 = 100 + pI11 + pI12 + pI13

PG2 = 100 + pI21 + pI22 + pI23

PG3 = 50 + pI31 + pI32 + pI33

return pI11+pI12+pI13+pI21+pI22+pI23+pI31+pI32+pI33-550

#return PG1+PG2+PG3-800

#上下限

pI11=(0,200)

pI12 = (0,200)

pI13 = (0,100)

pI21 = (0,100)

pI22 = (0,100)

pI23 = (0,100)

pI31 =(0,50)

pI32 = (0,50)

pI33 = (0,50)

bnds=(pI11,pI12,pI13,pI21,pI22,pI23,pI31,pI32,pI33)

约束条件

def constraint2(x): #不等式约束 线路PL12 <=300

pI11 = x[0]

pI12 = x[1]

pI13 = x[2]

pI21 = x[3]

pI22 = x[4]

pI23 = x[5]

pI31 = x[6]

pI32 = x[7]

pI33 = x[8]

PD3=800

PG1 = 100 + pI11 + pI12 + pI13

PG2 = 100 + pI21 + pI22 + pI23

PG3 = 50 + pI31 + pI32 + pI33

PL12 = -(2 / 3) * PG2 - (1 / 3) * PG3 + (1 / 3) * PD3

return 300-np.abs(PL12)

约束条件

def constraint3(x): #不等式约束 不等式约束 线路PL13 <=300

pI11 = x[0]

pI12 = x[1]

pI13 = x[2]

pI21 = x[3]

pI22 = x[4]

pI23 = x[5]

pI31 = x[6]

pI32 = x[7]

pI33 = x[8]

PD3=800

PG1 = 100 + pI11 + pI12 + pI13

PG2 = 100 + pI21 + pI22 + pI23

PG3 = 50 + pI31 + pI32 + pI33

PL13 = (-(1 / 3) * PG2 - (2 / 3) * PG3 + (2 / 3) * PD3) * 0.05

return 300-np.abs(PL13)

约束条件

def constraint4(x): #不等式约束 不等式约束 线路PL23 <=330

pI11 = x[0]

pI12 = x[1]

pI13 = x[2]

pI21 = x[3]

pI22 = x[4]

pI23 = x[5]

pI31 = x[6]

pI32 = x[7]

pI33 = x[8]

PD3=800

PG1 = 100 + pI11 + pI12 + pI13

PG2 = 100 + pI21 + pI22 + pI23

PG3 = 50 + pI31 + pI32 + pI33

PL23 = (1 / 3) * PG2 - (1 / 3) * PG3 + (1 / 3) * PD3

return 330-np.abs(PL23)

con1 = {‘type’: ‘eq’, ‘fun’: constraint1}

con2 = {‘type’: ‘ineq’, ‘fun’: constraint2}

con3 = {‘type’: ‘ineq’, ‘fun’: constraint3}

con4 = {‘type’: ‘ineq’, ‘fun’: constraint4}

cons = ([con1,con2,con3,con4]) # 4个约束条件

def main():

初始值

x0 = np.random.uniform(10, 400, 9)

计算

solution = minimize(objective, x0, method=‘SLSQP’,

bounds=bnds, constraints=cons)

x = solution.x

pI11 = x[0]

pI12 = x[1]

pI13 = x[2]

pI21 = x[3]

pI22 = x[4]

pI23 = x[5]

pI31 = x[6]

pI32 = x[7]

pI33 = x[8]

PG1 = 100 + pI11 + pI12 + pI13

PG2 = 100 + pI21 + pI22 + pI23

PG3 = 50 + pI31 + pI32 + pI33

PD=800

#线路潮流

PL12=0*PG1-(2/3)PG2-(1/3)(PG3-PD)

PL13=0PG1-0.5(1/3)PG2-(1/3)(PG3-PD)

PL23=0*PG1+(1/3)PG2-(1/3)(PG3-PD)

#原理注解

#PL13 = 0.5 * ((0.01 + 0.01) * (PG3 - 800) + 0.01 * PG2) / (0.01 + 0.01 + 0.01)

#PL12 = ((0.01 + 0.01) * PG2 + 0.01 * (PG3 - 800)) / (0.01 + 0.01 + 0.01)

#PL23 = ((0.01 + 0.01) * (PG3 - 800) + 0.01 * PG1) / (0.01 + 0.01 + 0.01)

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
img

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img
img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。img

六、面试宝典

在这里插入图片描述

在这里插入图片描述

简历模板在这里插入图片描述

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

0c049bb72fbd.png#pic_center)

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值