Skip to main content

A Distflow PDN solver based on Gurobi.

Project description

FPowerKit 配电网运算组件

  • 依赖于feasytools和gurobipy: pip install feasytools,gurobipy(请自行安装Gurobi并申请许可证)
  • 包含电网的描述(含母线、发电机、线路等)和基于gurobipy的配电网求解
  • 内含IEEE 33节点配电网DistFlow模型
  • 优化目标为“发电成本最小”。发电成本模型为二次函数$f(x)=ax^2+bx+c$。

使用

输入以下命令开始仿真:

python main.py -g cases/ieee33.grid.zip

ieee33描述了IEEE 33节点配电网模型。换成nodes3则是一个极简版3节点辐射形配电网模型,结构如下:

G0  G1
|   |
B0->B1->B2
    |   |
    L1  L2

您也换成自己的.zip文件来仿真,例如python main.py -g path/to/your_zipfile.zip

文件格式

若要配置您自己的.zip文件来仿真,您需要确保该zip压缩文件有且仅有如下文件(区分大小写),不能包含任何文件夹:

<your_file>.zip
    info.txt
    buses.csv
    lines.csv
    gens.csv

具体范例参见PowerKit/cases/nodes3.zip

info.txt

该文件示例如下:

S_base_MVA: 10
U_base_kV: 10
buses_loop: 86400, 8
buses_unit: MVA
lines_unit: ohm
gens_unit: MVA

S_base_MVA表示复功率标幺值,单位为MVA; U_base_kV表示电压标幺值,单位为kV; buses_loop表示buses.csv中功率的循环周期(秒)和循环次数; buses_unit表示buses.csv中功率值的单位,可选pu(标幺值),kVA,MVA; lines_unit表示lines.csv中功率值的单位,可选pu(标幺值),ohm; gens_unit表示gens.csv中功率值的单位,可选pu(标幺值),kVA,MVA;

buses.csv

该文件示例如下:

time,0
B0,0|0
B1,10.2|3.2
B2,3.8|0.7

首行表示时间线,内容用英文逗号分隔。第1个内容必定是小写time,从第2个内容开始为整数,表示从这一开始的负载功率; 从第2行开始,每行的第1个内容表示母线名称,从第二个内容开始表示复功率,以有功功率|无功功率的形式出现,单位为info.txt中的指定值。

gens.csv

该文件示例如下:

time,0
G0|B0|0.002|0.3|5,0|100|-100|100
G1|B1|0.0025|0.4|15,0|100|-100|100

首行表示时间线,内容用英文逗号分隔。第1个内容必定是小写time,从第2个内容开始为整数,表示从这一开始的发电功率最值; 从第2行开始,每行的第1个内容为发电机ID|所在母线|成本系数a|成本系数b|成本系数c,从第二个内容开始表示发电功率最值,以最小有功功率|最大有功功率|最小无功功率|最大无功功率的形式出现,单位为info.txt中的指定值。

lines.csv

该文件示例如下:

id,fBus,tBus,R,X
L0-1,B0,B1,0.08,0.2
L1-2,B1,B2,0.06,0.12

首行内容必须是id,fBus,tBus,R,X,区分大小写; 从第2行开始,每行的内容为线路名称,起始母线,终止母线,线路电阻,线路电抗。请注意线路功率的正方向为“起始母线->终止母线”,填反有可能需要在仿真时修改边界条件。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fpowerkit-0.0.5.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

fpowerkit-0.0.5-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file fpowerkit-0.0.5.tar.gz.

File metadata

  • Download URL: fpowerkit-0.0.5.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.6

File hashes

Hashes for fpowerkit-0.0.5.tar.gz
Algorithm Hash digest
SHA256 7552df8c05bf0d43686e14c5f7042d9fecf452110b1728d55f92abc134bc4741
MD5 3e6fe81dd17aa672b47b8bd1dd068c73
BLAKE2b-256 450757ee577b50311ac2b7ed2aff5e4b3878d1b950c0cb17ce87f3210a46972f

See more details on using hashes here.

File details

Details for the file fpowerkit-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: fpowerkit-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.6

File hashes

Hashes for fpowerkit-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 fbcfd7d2388c673d4b0185eb98e7b9f360c4c7d033ff96d74639e45fb5cc5fca
MD5 f7fe2931cf2ac11ee35779ff973f84ed
BLAKE2b-256 79a38476c86443ac1c3ded29d69d48d1140bfb90157f696f90da26b864d83cfd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page