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

Uploaded Source

Built Distribution

fpowerkit-0.0.1-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fpowerkit-0.0.1.tar.gz
  • Upload date:
  • Size: 10.9 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.1.tar.gz
Algorithm Hash digest
SHA256 c860e740f6e02840e9ccc738b3e3e8a58b29aef07b3485ba95161842a3fb7dd5
MD5 21f4c091a1feb7ae8253eb9ea823a355
BLAKE2b-256 42da7a433f958967bbf5d26887eca09fee9b8ea8ddf44de07f9b40b50278b589

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fpowerkit-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 10.8 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f8f6b6d81fc9ce964b84ef73cd662909894b9b0dd77b15147d1ca8029d0f6122
MD5 5de1a22154a2bb1f3d54eefba0712151
BLAKE2b-256 2f7568a3e732bbb23b5a590a1b4a3ce3dcd8fbf2bb792eac1fba12a9df1d7607

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