Skip to main content

LightSim2Grid implements a c++ backend targeting the Grid2Op platform.

Project description

LightSim2Grid

Provide a fast backend for grid2op using c++ KLU and Eigen librairies. Its primary goal is to serve as a fast backend for the grid2op platform, used primarily as a testbed platform for sequential decision making in the world of power system.

See the Disclaimer to have a more detailed view on what is and what is not this package. For example this package should not be used for detailed power system computations or simulations.

Usage

Once installed (don't forget, if you used the optional virtual env above you need to load it with source venv/bin/activate) you can use it as any python package.

1. As a grid2op backend (preferred method)

This functionality requires you to have grid2op installed, with at least version 0.7.0. You can install it with

pip install grid2op>=1.6.4

Then you can use a LightSimBackend instead of the default PandapowerBackend this way:

import grid2op
from lightsim2grid import LightSimBackend
env_name = "l2rpn_case14_sandbox"  # or any other name.
env = grid2op.make(env_name, backend=LightSimBackend())

# do regular computation as you would with grid2op

And you are good to go.

2. replacement of pandapower "newtonpf" method (advanced method)

It is also possible to use directly the "solver" part of lightsim2grid.

Suppose you somehow get:

  • Ybus the admittance matrix of your powersystem, for example given by pandapower (will be converted to a scipy sparse.csc_matrix )
  • V0 the (complex) voltage vector at each bus, for example given by pandapower
  • Sbus the (complex) power absorb at each bus, for example as given by pandapower
  • ref Ids of the slack buses (added in version 0.5.6 to match recent pandapower changes)
  • pv list of PV buses
  • pq list of PQ buses
  • ppci a ppc internal pandapower test case (or dictionary, is used to retrieve the coefficients associated to each slack bus)
  • options list of pandapower "options" (or dictionary with keys max_iteration and tolerance_mva)

You can define replace the newtonpf function of pandapower.pandapower.newtonpf function with the following piece of code:

from lightsim2grid.newtonpf import newtonpf
V, converged, iterations, J = newtonpf(Ybus, V, Sbus, ref, weights, pv, pq, ppci, options)

This function uses the KLU algorithm and a c++ implementation of a Newton solver for speed.

Installation (from pypi official repository, recommended)

Since version 0.5.3, lightsim2grid is can be installed like most python packages, with a call to: python -m pip install lightsim2grid

It includes faster grid2op backend and the SuiteSparse faster KLU solver, even on windows. This is definitely the easiest method to install lightsim2grid on your system and have it running.

Note though that these packages have been compiled on a different platform that the one you are using. You might still get some benefit (in terms of performances) to install it from your on your machine with the proper compilations flags ( see section 6.1 Customization of the compilation for more information)

Pypi packages are available for linux (x86_64 cpu architecture), windows (x86_64 cpu architecture) and macos (x86_64 cpu architecture) with python versions:

  • 3.7
  • 3.8
  • 3.9
  • 3.10 (lightsim2grid >= 0.6.1)
  • 3.11 (lightsim2grid >= 0.7.1)
  • 3.12 (lightsim2grid >= 0.7.5)

As from version 0.8.2, we also distribute windows arm64 and macos arm64 binaries of lightsim2grid that can be installed directly with pip too (requires python >= 3.8 for macos and python >= 3.9 for windows). We do not currently produce arm64 (aarch64) linux binaries because it takes too long to build. If you really want them, let us know and we'll see what we can do.

NB on some version of MacOs (thanks Apple !), especially the one using M1 or M2 chip, lightsim2grid is only available on pypi starting from version 0.7.3 We attempted to deliver arm64 lightsim2grid version but we could not test them. So if you want a reliable working and tested version of lightsim2grid on newest version of macos (with M1 or M2 chips for example) please use lightsim2grid >= 0.8.2

NB we do not currently build any 32 bits lightsim2grid libraries.

Installation (from source, for more advanced user)

See the official documentation at Install from source for more information

Benchmarks

Lightsim2grid is significantly faster than pandapower when used with grid2op for all kind of environment size (sometimes more than 30x faster - making 30 steps while pandapower makes one).

If you prefer to use the dedicated lightsim2grid SecurityAnalysis or TimeSerie classes you can even expect another 10-20x speed ups compared to grid2op with lightsim2grid (sometimes more than 300x faster than grid2op with pandapower).

For more information (including the exact way to reproduce these results, as well as the computer used), you can consult the dedicated Benchmarks page on the documentation.

Philosophy

Lightsim2grid aims at providing a somewhat efficient (in terms of computation speed) backend targeting the grid2op platform.

It provides a c++ api, compatible with grid2op that is able to compute flows (and voltages and reactive power) from a given grid. This grid can be modified according to grid2op mechanism (see more information in the official grid2Op documentation ).

This code do not aim at providing state of the art solver in term of performances nor in terms of realism in the modeling of power system elements (eg loads, generators, powerlines, transformers, etc.).

Lightsim2grid codebase is "organized" in 4 different parts:

  1. modify the elements (eg disconnecting a powerline or changing the voltage magnitude setpoint of a generator, or any other action made possible by grid2op)
  2. generate the Ybus (sparse) complex admitance matrix and Sbus complex injection vector from the state of the powergrid (eg physical properties of each elements, which elements are in service, which power is produce at each generators and consumed at each loads, what is the grid topology etc.)
  3. solving for the complex voltage V (and part of the Sbus vector) the equation V.(Ybus.V)* = Sbus with the "standard" "powerflow constraints" (eg the voltage magnitude of V is set at given components, and on other it's the imaginary part of Sbus)
  4. computes the active power, reactive power, flow on powerllines etc. from the V and Sbus complex vectors computed at step 3).

Step 1, 2 and 4 are done in the GridModel class.

Step 3 is performed thanks to a "powerflow solver".

Using a custom powerflow solver

For now some basic "solver" (eg the program that performs points 3. above) are available, based on the Gauss Seidel or the Newton-Raphson methods to perform "powerflows".

Nothing prevents any other "solver" to be used with lightsim2grid and thus with grid2op. For this, you simply need to implement, in c++ a "lightsim2grid solver" which mainly consists in defining a function:

bool compute_pf(const Eigen::SparseMatrix<cplx_type> & Ybus,  // the admittance matrix
                CplxVect & V,  // store the results of the powerflow and the Vinit !
                const CplxVect & Sbus,  // the injection vector
                const Eigen::VectorXi & ref,  // bus id participating to the distributed slack
                const RealVect & slack_weights,  // slack weights for each bus
                const Eigen::VectorXi & pv,  // (might be ignored) index of the components of Sbus should be computed
                const Eigen::VectorXi & pq,  // (might be ignored) index of the components of |V| should be computed
                int max_iter,  // maximum number of iteration (might be ignored)
                real_type tol  // solver tolerance 
                );

The types used are:

  • real_type: double => type representing the real number
  • cplx_type : std::complex<real_type> => type representing the complex number
  • CplxVect : Eigen::Matrix<cplx_type, Eigen::Dynamic, 1> => type representing a vector of complex numbers
  • RealVect : Eigen::Matrix<real_type, Eigen::Dynamic, 1> => type representing a vector of real numbers
  • Eigen::VectorXi => represents a vector of integer
  • Eigen::SparseMatrix<cplx_type> => represents a sparse matrix

See for example BaseNRSolver for the implementation of a Newton Raphson solver (it requires some "linear solvers", more details about that are given in the section bellow)

Any contribution in this area is more than welcome.

NB For now the "solver" only uses these above information to perform the powerflow. If a more "in depth" solution needs to be implemented, let us know with a github issue. For example, it could be totally fine that a proposed "solver" uses direct information about the elements (powerline, topology etc.) of the grid in order to perform some powerflow.

NB It is not mandatory to "embed" all the code of the solver in lightsim2grid. Thanks to different customization, it is perfectly possible to install a given "lightsim solver" only if certain conditions are met. For example, on windows based machine, the SuiteSparse library cannot be easily compiled, and the KLUSolver is then not available.

NB It would be totally fine if some "lightsim2grid" solvers are available only if some packages are installed on the machine for example.

Using custom linear solvers to solve powerflows

In lightsim2grid (c++ part) it is also possible, thanks to the use of "template meta programming" to not recode the Newton Raphson algorithm (or the DC powerflow algorithm) and to leverage the use of a linear solver.

A "linear solver" is anything that can implement 3 basic functions:

  • initialize(const Eigen::SparseMatrix<real_type> & J) : initialize the solver and prepare it to solve for linear systems J.x = b (usually called once per powerflow)
  • ErrorType solve(const Eigen::SparseMatrix<real_type> & J, RealVect & b, bool has_just_been_inialized): effectively solves J.x = b (usually called multiple times per powerflow)
  • ErrorType reset(): clear the state of the solver (usually performed at the end of a powerflow to reset the state to a "blank" / "as if it was just initialized" state)

Some example are given in the c++ code "KLUSolver.h", "SparLUSolver.h" and "NICSLU.h"

This usage usually takes approximately around 20 / 30 lines of c++ code (not counting the comments, and boiler code for exception handling for example).

Citing

If you use this package in one of your work, please cite:

@misc{lightsim2grid,
    author = {B. Donnot},
    title = {{Lightsim2grid - A c++ backend targeting the Grid2Op platform. }},
    year = {2020},
    publisher = {GitHub},
    journal = {GitHub repository},
    howpublished = {\url{https://GitHub.com/bdonnot/lightsim2grid}},
}

Miscellaneous

Customization of the compilation

Enable NICSLU

For that, you need to declare the environment variables PATH_NICSLU that points to a valid installation of the NICSLU package (see https://github.com/chenxm1986/nicslu). For example: export PATH_NICSLU=/home/user/Documents/nicslu/nicslu202103

Enable CKTSO

For that, you need to declare the environment variables PATH_CKTSO that points to a valid installation of the NICSLU package (see https://github.com/chenxm1986/cktso). For example: export PATH_NICSLU=/home/user/Documents/cktso

Enable 03 optimization

By default, at least on ubuntu, only the "-O2" compiler flags is used. To use the O3 optimization flag, you need to specify the __O3_OPTIM environment variable: set __O3_OPTIM=1 (or $Env:__O3_OPTIM=1 in powershell) before the compilation (so before python3 setup.py build or python -m pip install -e .)

This compilation argument will increase the compilation time, but will make the package faster.

Enable "-march=native" optimization

By default, for portability, we do not compile with -march=native flags. This lead to some error on some platform. If you want to further improve the performances.

You can set __COMPILE_MARCHNATIVE=1 to enable it before the compilation (so before python3 setup.py build or python -m pip install -e .)

Profile the code

This is a work in progress for now. And it is far from perfect, and probably only work on linux.

See https://github.com/xflash96/pybind11_package_example/blob/main/tutorial.md#perf for more details.

cd benchmarks
perf record ./test_profile.py
perf report

Local testing

And some official tests, to make sure the solver returns the same results as pandapower are performed in "lightsim2grid/tests"

cd lightsim2grid/tests
python -m unittest discover

This tests ensure that the results given by this simulator are consistent with the one given by pandapower when using the Newton-Raphson algorithm, with a single slack bus, without enforcing q limits on the generators etc.

NB to run these tests you need to install grid2op from source otherwise all the test of the LightSim2gridBackend will fail. In order to do so you can do:

git clone https://github.com/rte-france/Grid2Op.git
cd Grid2Op
pip3 install -U -e .
cd ..

Tests performed automatically

Some tests are performed automatically on standard platform each time modifications are made in the lightsim2grid code.

These tests include, for now, compilation on gcc (version 8, 12 and 13) and clang (version 11, 16 and 17).

NB Intermediate versions of clang and gcc (eg gcc 9 or clang 12) are not tested regularly, but lightsim2grid used to work on these. We suppose that if it works on eg clang 10 and clang 14 then it compiles also on all intermediate versions.

NB Package might work (we never tested it) on earlier version of these compilers. The only "real" requirement for lightsim2grid is to have a compiler supporting c++11 (at least).

Known issues

Storage units

There are discrepency in the handling of storage units, when the are not asked to produce / consume anything (setpoint is 0.) between pandapower and lightsim2grid only in the case where the storage unit is alone on its bus.

Pandapower does not detect it and the episode can continue. On the other side, lightsim2grid detects it and raise an error because in that case the grid is not connex anymore (which is the desired behaviour).

Compilation issue

On the clang compiler (default one on MacOS computer) it is sometime require to downgrade the pybind11 version to 2.6.2 to install the package.

You can downgrade pybind11 with: python -m pip install -U pybind11==2.6.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

lightsim2grid-0.8.2.tar.gz (1.4 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

LightSim2Grid-0.8.2-cp312-cp312-win_arm64.whl (514.2 kB view details)

Uploaded CPython 3.12Windows ARM64

LightSim2Grid-0.8.2-cp312-cp312-win_amd64.whl (572.2 kB view details)

Uploaded CPython 3.12Windows x86-64

LightSim2Grid-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (813.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.2-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

LightSim2Grid-0.8.2-cp312-cp312-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

LightSim2Grid-0.8.2-cp311-cp311-win_arm64.whl (514.4 kB view details)

Uploaded CPython 3.11Windows ARM64

LightSim2Grid-0.8.2-cp311-cp311-win_amd64.whl (571.3 kB view details)

Uploaded CPython 3.11Windows x86-64

LightSim2Grid-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (821.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.2-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

LightSim2Grid-0.8.2-cp311-cp311-macosx_10_14_universal2.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 10.14+ universal2 (ARM64, x86-64)

LightSim2Grid-0.8.2-cp311-cp311-macosx_10_9_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

LightSim2Grid-0.8.2-cp310-cp310-win_arm64.whl (513.9 kB view details)

Uploaded CPython 3.10Windows ARM64

LightSim2Grid-0.8.2-cp310-cp310-win_amd64.whl (570.8 kB view details)

Uploaded CPython 3.10Windows x86-64

LightSim2Grid-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (820.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_x86_64.whl (752.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ x86-64

LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

LightSim2Grid-0.8.2-cp310-cp310-macosx_10_14_universal2.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 10.14+ universal2 (ARM64, x86-64)

LightSim2Grid-0.8.2-cp310-cp310-macosx_10_9_x86_64.whl (752.3 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

LightSim2Grid-0.8.2-cp39-cp39-win_arm64.whl (516.0 kB view details)

Uploaded CPython 3.9Windows ARM64

LightSim2Grid-0.8.2-cp39-cp39-win_amd64.whl (557.3 kB view details)

Uploaded CPython 3.9Windows x86-64

LightSim2Grid-0.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (820.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.2-cp39-cp39-macosx_11_0_arm64.whl (686.7 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

LightSim2Grid-0.8.2-cp39-cp39-macosx_10_9_x86_64.whl (752.4 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

LightSim2Grid-0.8.2-cp38-cp38-win_amd64.whl (570.8 kB view details)

Uploaded CPython 3.8Windows x86-64

LightSim2Grid-0.8.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (820.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.2-cp38-cp38-macosx_11_0_arm64.whl (686.6 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

LightSim2Grid-0.8.2-cp38-cp38-macosx_10_9_x86_64.whl (752.1 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

LightSim2Grid-0.8.2-cp37-cp37m-win_amd64.whl (564.6 kB view details)

Uploaded CPython 3.7mWindows x86-64

LightSim2Grid-0.8.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (819.2 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.2-cp37-cp37m-macosx_10_9_x86_64.whl (744.2 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

File details

Details for the file lightsim2grid-0.8.2.tar.gz.

File metadata

  • Download URL: lightsim2grid-0.8.2.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for lightsim2grid-0.8.2.tar.gz
Algorithm Hash digest
SHA256 59c3c2721670df24b8505d4bf92f68c748ce23e56222f883cdc99c672cf38645
MD5 09043fafdd2246298f8d148363654b15
BLAKE2b-256 b1d96cf78f29a62d672667f0a25a753cec3b520753a732802588cc4d950b5056

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 514.2 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 c2d0e58c359dedab165e8205260d8ca9eb8be1803a3e47cad97f9b51c6ab918e
MD5 9c9f331a26f2811b82e98f53a0fc11c9
BLAKE2b-256 ac8f24040750fb5ff25dbeaa1aad8af335f943a60cff4f1b7688fbbe8fafa6a8

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 572.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 37f2755743d2148f00358a699bc804ac02bc7e4a9ee20209662828bc667b3563
MD5 ac89f2a77eeffcb29db047cfee706e96
BLAKE2b-256 37d9e165d059ee16278c8cceb84aa2d87bd5bf79bba9284aba5baf3f2f9837fb

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for LightSim2Grid-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f7d82e8a570703818f68bb5913a45581b5e5eb105d4c247a564163098e0eec60
MD5 06bf204c5b5fff9be5696fbef30ed6d5
BLAKE2b-256 e6da3ccd2cfb80923287569587bc3b307c98c3309017f750e003ba1dc00dfb0b

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.12, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01992224e9989d302f2927fce82b34fdd133b3b65f238a1063995ab1182f6321
MD5 c676f80d32ae66bfc5bc747e0ddf4b79
BLAKE2b-256 993954d7f2a7ac452c04dd92e72ac0d6c1b76c6835e107a23de122a1de76e47c

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp312-cp312-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.12, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f674e488e2c085f315ba16aa21940193fa5987438c04a636a1312b3761487e02
MD5 55648be6870e162b20e6e07f662245ac
BLAKE2b-256 f61b3028a6c825347b587bc751fc9817940468f2c8c702deeb6435323feb25ce

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 514.4 kB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 98a5aee240d2521fffacf9f6ad2b2847d8e3a64759cd314e3c7a5620a4680c2a
MD5 f2547af886a71db9ab9ea4d4daaac4ef
BLAKE2b-256 b07ec3a109de7a46ce54bb2a70e40d19a5f0fefa6cc6c4bcc9600cb1bbbb61a2

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 571.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b34c97532ce127f9f138274022c09c6ff1b008488690e3e38c54fb76df0d17a8
MD5 fd9abd3a7ebf4ef2b1914db4b8b1c373
BLAKE2b-256 1d8b12171eee0606825dab1143b809fc579e479f077dcb30bd701f1b70d36cf4

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for LightSim2Grid-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 88538180cd8a98a3968d7d68859d2938284f1ac02a8889eb8e7689ece77a87aa
MD5 64ac0fde27e887e283df3b842153a5cc
BLAKE2b-256 cd8a02d828f3b543ddfe5378ff43aa0942e24f3afab21ed20ef45a9eff0ea809

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp311-cp311-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.11, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a7206a6951ae381a29d76e1ccf392c2ae5f9b9cdd5c68eff881dfb6ae405e10e
MD5 4c4cd016972b4ca91ff557dbdd764a1f
BLAKE2b-256 b5a0331f17a7154cb3ca8dfbcced9ec2bf8287d3ffb030a497e4b314799d313a

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp311-cp311-macosx_10_14_universal2.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp311-cp311-macosx_10_14_universal2.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.11, macOS 10.14+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp311-cp311-macosx_10_14_universal2.whl
Algorithm Hash digest
SHA256 7f8623886617f144459a7e46284f8234927c42aaf3425a0b8a824533bce5aa05
MD5 3254375faf32cf522bf874892138b82b
BLAKE2b-256 bfc05e76410b41797559d63b2ca40ae929814a3c2cd166eb959a5d1c258b5260

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp311-cp311-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.11, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0df8c9534723729ed0f10e30819a3b0898874e63a9080f744ab7ded52d18a96c
MD5 f95bad9b19c4a14ee9df7f8177e0aa0a
BLAKE2b-256 5cce5e3a9a38edd251b9ef0a46038be11a69aceef382aa18d370d0d313d58e15

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp310-cp310-win_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 513.9 kB
  • Tags: CPython 3.10, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 ad102fe5dee09c066c2f97fe675949f27e4a8582c0ede7fb67ff6daad69ab8d3
MD5 47ebe208d29d60718f3954f6ab2f7651
BLAKE2b-256 cb14d33c0c18a8bffa5a044003bee89d8e1509b417d7bf939d1e78cb90b058dd

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 570.8 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ea397a525b652079f8cac41f7df4cadb8227af1cf683d95bfc1c5826537b5dce
MD5 449083cf38b44f05c372679ba58ddfcc
BLAKE2b-256 1ee3b4064a33e550ab33d4a95775553e81a08d408b53992272f1d2dfd7757c40

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for LightSim2Grid-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a826a0286206950b59a5f3a29ffddc5943ab09f6b562c3893b6dea817e183de9
MD5 5f583b9c26a868fe4b8dd03ae180b928
BLAKE2b-256 f02bdb653b53198fb356f65092d6323b9381d957bd664928b6a5fdc50f3181fc

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_x86_64.whl
  • Upload date:
  • Size: 752.3 kB
  • Tags: CPython 3.10, macOS 11.0+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 e606f693fe59ad62574659c98151f5b77e9389ce716576b32f37ce69a949499e
MD5 2a51d183ea29416d9f2398ca6f4d08b6
BLAKE2b-256 2d5edb251685a4ee1cea456aed8d0b1e702ac0884b80fcf4994c7df25b3545ec

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.10, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 51ffc66e07fdf30f3148fc5bb1efc99796665c7bdd02b8ccc45746fb47254778
MD5 ffdc470dce361c874d6cb78aec66aacb
BLAKE2b-256 1b90b69e7de4ceaa3abd3a7eb15ddb8f23aac637cb9d49334a57656b30277b5b

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp310-cp310-macosx_10_14_universal2.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp310-cp310-macosx_10_14_universal2.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.10, macOS 10.14+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp310-cp310-macosx_10_14_universal2.whl
Algorithm Hash digest
SHA256 1b43141ec502ca0a0b3ffcf64f654ed558790aaf1111bb0bcdd3fb3fc2a784c7
MD5 74ac35456b90ed971ccceb6e8121a4e7
BLAKE2b-256 8667f9f7d5cb4d7d7eecd62f9b34969d4d36d661f4f3f3a029439f8833397912

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp310-cp310-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 752.3 kB
  • Tags: CPython 3.10, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d8ddab6aec907eabeb86b42405501863a0bd95388971ec827836ddbb0b5cfa6e
MD5 57bb3808bb2d46be585c3932e5173a03
BLAKE2b-256 dd6fa55f3acaf4aff59514e97d8935b26064f498c2389946cf8bac2018293bc0

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp39-cp39-win_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp39-cp39-win_arm64.whl
  • Upload date:
  • Size: 516.0 kB
  • Tags: CPython 3.9, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp39-cp39-win_arm64.whl
Algorithm Hash digest
SHA256 02c24ea7c5334ead90bf65e6cec0229ea7a0c350b4e0ec1ee7ae3cfba499f12d
MD5 93e8cd583084ef7c924cfcd822eb1616
BLAKE2b-256 61ff3eea8c1041eccd9a5b62af0fb2a33f98b171f7503902ebbaae0e1475cf60

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 557.3 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 77982d46f613a2d7e3cc20d07e0805dba3fbf6c7e7da4275ecc98ef4c76fd259
MD5 4b4b7e429b486e2af7f94b884a3e6b84
BLAKE2b-256 0e8f5c88a6f16faedc5e388291208bfa0b90ef6c0299547fe3391bc6adaa37a8

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for LightSim2Grid-0.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bb102f0b67288689f1f9b4b2decc049d94470e5985e63956dc877ffe0150dfcd
MD5 c92cd6c06f12c585ad2db812eec44f0e
BLAKE2b-256 6550d80cfccd1d24e0d916ff32e1392086d0fcc160965ece6f9ac671828a4fae

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 686.7 kB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 559962f0db4206f6b3b795823f0eb541e6f8122b2c8494442152d52386678f2c
MD5 a5ae73cbde01075988a598993a8702be
BLAKE2b-256 d38af0ca9e5058bd180825d1004ee11e9d979d4c3340183b8bfe0c7986d34420

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 752.4 kB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7062614e8a3d5c8ae2ff0f4c0a2265992eb48c72a47db384cdd671e96efb0bef
MD5 a90d48c1b1c6bf182e703f134ac906c0
BLAKE2b-256 b3177c22646fa63054cc4be2d924698277c5b850d26827be997fd2fca05c623c

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 570.8 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 97edbf5c476df152e2f62cfcbb86be205505178c263564febbeb7283b496e64d
MD5 e9d3bb17146bffdd6d653bbe7e7d7638
BLAKE2b-256 234bfafb8558ae9429322d55d49fff5c05f1d14b24a83283c60b3cd2981a367b

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for LightSim2Grid-0.8.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d8d92751fa3be1402b6d961c87011352c561fbabf913a2d73fd8786be6a422aa
MD5 1f01b621d840fe65c408d64712409b11
BLAKE2b-256 8e566ca62d669e17154ee090e90200947259178b5f8e7777ca96cdfab7b8be28

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp38-cp38-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 686.6 kB
  • Tags: CPython 3.8, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7ee4499c2e8fd87dd3a16ea3d9e1a19475da960cd4146c7c5a6f254bb765e873
MD5 bf55efb2d27e72289322b1c87ededa66
BLAKE2b-256 2d05741df7d8fe4f6ab242243b09c031be6bdd1bf771a4cec29a58a0d2f64c11

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 752.1 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bec7b9b4750372c4005b465be5f7d626de8eee0541b78d380afce89936a50f5c
MD5 207fa80504777aed64dda21af27cca9f
BLAKE2b-256 e6b5df76fc0e46e01878aff38f6999e16501c632df26656fa5903764ca839f9f

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 564.6 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 138fcce18cb866921353c3c67eec78bb262665583924e1eead0f6f2f6439da19
MD5 3681d1a7e9c7236fda2706e27ad85cf9
BLAKE2b-256 208a282fc1306045715adbbe0b2a04d9dbce92de5bcd216d7e1a0df83ca54b53

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for LightSim2Grid-0.8.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8bab5b7646829dc800a332d0d41753cda60ca277ac4e13e6cdea2ae51c8e461c
MD5 2e1638a36c67334b6a5249d43a83cc64
BLAKE2b-256 10f88d29d92c7406cbc2efdc7669d656db98477a31d91b31464b1d251d13dacc

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.2-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.2-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 744.2 kB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.8.0 pkginfo/1.7.0 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.66.2 CPython/3.8.10

File hashes

Hashes for LightSim2Grid-0.8.2-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0b1f44330efd816efcce339293d167e4c45e9f6fd68a107d96106741185b36cc
MD5 01ef98a6d21ebb5f6c7d9da84ed86d85
BLAKE2b-256 6daf0d5374230fd831af3b4542244690301baffc00fb009a9f915ee11d6623e6

See more details on using hashes here.

Supported by

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