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.3.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: fpowerkit-0.0.3.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.3.tar.gz
Algorithm Hash digest
SHA256 dc0db77837a0d930524c45ef61b238f64f269049619300e49b3cfc6fc3d890aa
MD5 1c59bce80a21f22a1a9169072f8db71c
BLAKE2b-256 efa70739b467d8f13e3137939244d60fafaa12a2b01a569c2e9223ee4fe8cbfd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fpowerkit-0.0.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 69ccac323965b1b1adb8d78ed4a6eeb3cc4d0022c044ab41427cf38995656472
MD5 3000827c39b62945942b6e46158dae87
BLAKE2b-256 218c0596915b6013ca0f95643815132f61c3aefd7e1551775b4b74fdd6c708fe

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