Giter VIP home page Giter VIP logo

powerflows.jl's Introduction

PowerFlows.jl

Main - CI codecov Documentation PowerFlows Downloads

This package is under development at the moment. The current version is a port of the existing Power Flow solve in PowerSystems.jl.

The objective of this package is to provide an interface to multiple solution methods for the Power Flow problem along with utilities common in commercial software like Siemens PSS/e and GE PSLF.

During development the API will change

Development

Contributions to the development and enahancement of PowerFlows is welcome. Please see CONTRIBUTING.md for code contribution guidelines.

License

PowerFlows is released under a BSD license. PowerFlows has been developed as part of the Scalable Integrated Infrastructure Planning (SIIP) initiative at the U.S. Department of Energy's National Renewable Energy Laboratory (NREL)

powerflows.jl's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

powerflows.jl's Issues

Implement Logger

implement this

function run_powerflow!(inputs...)
    logger = PSY.configure_logging(
        console_level = PSY_CONSOLE_LEVEL,
        file_level = PSY_FILE_LEVEL,
    )
    try
        Logging.with_logger(logger) do
            PowerFlows.run_powerflow!(inputs...)
            return
        end
    finally
        close(logger)
        PSY.configure_logging(
            console_level = NODE_CONSOLE_LEVEL,
            file_level = NODE_FILE_LEVEL,
        )
    end
end

Errors when reporting Pload and Qload

Hi, there are two bugs when reporting Pload and Qload of PQ buses:

Line 143 should have a minus before Vm_squared, as follows:

reactive_power += - Vm_squared * imag(PSY.get_Y(l))

Finally, lines 419 and 420 give results in pu, they need to be converted to MW and MVAr:

P_load_vect[ix] += P_admittance .* sys_basepower
Q_load_vect[ix] += Q_admittance .* sys_basepower

Using Systems with StandardLoads

I was trying to run muti-period DC power flow on a System with StandardLoads and it fails because PSY.get_active_power(load::PSY.StandardLoad) isn't defined.

This is why it fails :

function _get_withdrawals!(

Here's the stacktrace:
julia> data_1 = PowerFlowData(DCPowerFlow(), pr_sys, timesteps);
ERROR: MethodError: no method matching get_active_power(::StandardLoad)
Closest candidates are:
get_active_power(::HydroDispatch) at ~/.conda-envs/julia17-sdhulipa/share/julia/packages/PowerSystems/9jm8v/src/models/generated/HydroDispatch.jl:120
get_active_power(::PowerSystems.ExponentialLoad) at ~/.conda-envs/julia17-sdhulipa/share/julia/packages/PowerSystems/9jm8v/src/models/generated/ExponentialLoad.jl:105
get_active_power(::InterruptiblePowerLoad) at ~/.conda-envs/julia17-sdhulipa/share/julia/packages/PowerSystems/9jm8v/src/models/generated/InterruptiblePowerLoad.jl:100
...
Stacktrace:
[1] _get_withdrawals!(bus_activepower_withdrawals::Vector{Float64}, bus_reactivepower_withdrawals::Vector{Float64}, bus_lookup::Dict{Int64, Int64}, sys::System)
@ PowerFlows ~/.conda-envs/julia17-sdhulipa/share/julia/packages/PowerFlows/GpXz5/src/common.jl:57
[2] PowerFlowData(::DCPowerFlow, sys::System, timesteps::Int64, timestep_names::Vector{String})
@ PowerFlows ~/.conda-envs/julia17-sdhulipa/share/julia/packages/PowerFlows/GpXz5/src/PowerFlowData.jl:278
[3] PowerFlowData(::DCPowerFlow, sys::System, timesteps::Int64)
@ PowerFlows ~/.conda-envs/julia17-sdhulipa/share/julia/packages/PowerFlows/GpXz5/src/PowerFlowData.jl:229
[4] top-level scope
@ REPL[7398]:1

Running power flow on large scale TSO system

Hi, I was wondering if you have experience with running power flow on power systems with some thousands buses and branches? I am working with a TSO and they seemed quite interested in having their system running on an open source software.

As far as I can tell the system does not contain any component types not supported by the library. However, even though I export the raw data with the solution obtained by PSS/E it does not converge. Have you had any similar experiences and have any tips on what I should look for?

Another thing I noticed is that several of the buses have a angles outside the +- 90 degrees, so I need to run the import runchecks=False to be able to import the system.

I guess this is more of a question than an issue, but I hope it is a question that is relevant to more than me and that you have some tips.

Best regards Sigurd

TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.

If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.

If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.