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 without too much issues.

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.

Pypi packages are available for linux, windows and macos 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)

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

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 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.1.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.1-cp312-cp312-win_amd64.whl (565.0 kB view details)

Uploaded CPython 3.12Windows x86-64

LightSim2Grid-0.8.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (804.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.1-cp312-cp312-macosx_11_0_arm64.whl (661.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

LightSim2Grid-0.8.1-cp312-cp312-macosx_10_9_x86_64.whl (761.7 kB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

LightSim2Grid-0.8.1-cp311-cp311-win_amd64.whl (565.2 kB view details)

Uploaded CPython 3.11Windows x86-64

LightSim2Grid-0.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (809.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.1-cp311-cp311-macosx_11_0_arm64.whl (661.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

LightSim2Grid-0.8.1-cp311-cp311-macosx_10_9_x86_64.whl (754.3 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

LightSim2Grid-0.8.1-cp310-cp310-win_amd64.whl (564.4 kB view details)

Uploaded CPython 3.10Windows x86-64

LightSim2Grid-0.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (808.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.1-cp310-cp310-macosx_11_0_arm64.whl (660.1 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

LightSim2Grid-0.8.1-cp310-cp310-macosx_10_9_x86_64.whl (752.9 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

LightSim2Grid-0.8.1-cp39-cp39-win_amd64.whl (550.6 kB view details)

Uploaded CPython 3.9Windows x86-64

LightSim2Grid-0.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (808.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.1-cp39-cp39-macosx_11_0_arm64.whl (660.3 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

LightSim2Grid-0.8.1-cp39-cp39-macosx_10_9_x86_64.whl (753.2 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

LightSim2Grid-0.8.1-cp38-cp38-win_amd64.whl (564.5 kB view details)

Uploaded CPython 3.8Windows x86-64

LightSim2Grid-0.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (808.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.1-cp38-cp38-macosx_11_0_arm64.whl (660.1 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

LightSim2Grid-0.8.1-cp38-cp38-macosx_10_9_x86_64.whl (752.9 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

LightSim2Grid-0.8.1-cp37-cp37m-win_amd64.whl (557.6 kB view details)

Uploaded CPython 3.7mWindows x86-64

LightSim2Grid-0.8.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (808.2 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

LightSim2Grid-0.8.1-cp37-cp37m-macosx_11_0_x86_64.whl (745.3 kB view details)

Uploaded CPython 3.7mmacOS 11.0+ x86-64

File details

Details for the file LightSim2Grid-0.8.1.tar.gz.

File metadata

  • Download URL: LightSim2Grid-0.8.1.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.1.tar.gz
Algorithm Hash digest
SHA256 798e1d5850692740ea79bc063a4f47693561bfad114ff136e51dd4ff2ab56e77
MD5 86db1b2bf6a70782bc046de57fa69543
BLAKE2b-256 aba6ba4fb6156d1195b2604d381c71878e74662cc5989d5c7cf95d7796ead53f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 565.0 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.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a2137ea2a025d49fcfe517e0d4576b95fc65a7acd24a8e3b46a770e7d1761d66
MD5 7244a12497245b68cf047acb7639356f
BLAKE2b-256 adb141648e74c01eea8053ad126bc08ffbd4128b4a774ca1581f8114650b8c78

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for LightSim2Grid-0.8.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e2abfdc9ed6016f40f2cede9a8b4843647e28383f632c14937b70200d50e3f3a
MD5 9517f6b263b7ae52d546dbe3ca39d0b7
BLAKE2b-256 25c870656d671de6d3b5d3803fc6d50fbc8d866a5c9a999f9e1a8989c129ca6b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 661.7 kB
  • 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.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 64d8ad427c3f52cbd50681182846c66c848f9c66379169ec270983f8681e5c80
MD5 211affe75bb90ba2497cbbd57ca0f359
BLAKE2b-256 b5a1cdd09606bcce814e35e9b95c18b13f37735f9bf50068c809ffb4109f6c5b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp312-cp312-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 761.7 kB
  • 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.1-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9e6d02838b4ecd0844f0ce815d2e7bea35dcba7786567756f7e139a5582194f1
MD5 d38ff4ff8d395c54b3f459577fd0dccf
BLAKE2b-256 10fd8b9a7fabc22bb779afcb67096264337957ff3699a1fe773df4aae9df07c7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 565.2 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.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8ed53043db9976d48e6320eff376aa68e2994008364cfc2b6cc33c6d5dd9d1d3
MD5 f89b8b48a55743350e9ded92fbf6877a
BLAKE2b-256 6a58412c20fc7a626be0e45acfc23b014448b2edf681b8d61cfac2be6938856a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for LightSim2Grid-0.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 34d07e200b5973b836b448f703567ee3b52999e3b95e0c7f6d491614fe129fb0
MD5 efaee4e8693824998434e7b7a4d66520
BLAKE2b-256 c7171c3e8e5abc0f1917ee0d447887068e35c6611c53d89df07d48ed9519493b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp311-cp311-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 661.4 kB
  • 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.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 035b2a805d75bfd35d685274142a37ed3d2444374707098314feac29a14a40c1
MD5 33a63fb9c4cbd158b0f8767e67bda210
BLAKE2b-256 79851ece6284ad8e4933367e29d4c63782ace6ce6de2e8cbb77a38045c8aaa7b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp311-cp311-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 754.3 kB
  • 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.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e8ed101f760e7639e31ea9a79197376e5f2f9e29fef3efb8f720bb60d551b287
MD5 84800f72f8dca02bac6b958e26ecce99
BLAKE2b-256 864ad9cd206adcd40b22d73b24cee873d6c45260c6652ec6b8458be5f5f1b8b4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 564.4 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.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 68b65837974c3ac5602ec52114b48864dbdacf7ab8e4a067b823baaac50490fc
MD5 ce581d229031a222efd6928db31beef7
BLAKE2b-256 20bf11a173b469f7561c7d2707ecf1dcd6cc8bf9d6ce562c0714de74378e2c45

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for LightSim2Grid-0.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8f1043bd52914d6df12a52ca6ec3a3d92d825b4b416b36e6a0255282dc70e539
MD5 29017a754be4ceda4f9b7eccaca5a543
BLAKE2b-256 5eb39f9d8de5449a708be55a3a9213bdf8019759664de1d74ce2ad95f079a01e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp310-cp310-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 660.1 kB
  • 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.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f9d77aa653d96d6a486fa155f5a0a9969b9809554a7019670f151b853944c1f
MD5 2dc652d19abe22f8135d8bed1ead7f3b
BLAKE2b-256 dfa775870552f199c6cb16ed000717016fabe58f2a0d8cac4e0bd26bfecd9206

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp310-cp310-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 752.9 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.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5eeb45deea4651718d76e0f777e6dba8bd6006278bcbbe9da2c6916a12e5d9e8
MD5 695d07c141ce1cab402cfb51c3271b3d
BLAKE2b-256 92f14e156d2fde9466f66a2623aaba9147522b3468c6a7db38ddda5a4c12bc05

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 550.6 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.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4fb7d59ed31f44feb6c50be261898b9d61dbead35914cebb4332508f87631f64
MD5 70f091eba8269ec9931d7de9929248f3
BLAKE2b-256 8f85cc6800d435bf7d92a7bdc0e881b0fc9f8836635eabc54fd52300579d3db5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for LightSim2Grid-0.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a747236fd0f0d943897781632c88e06fcb1fbac3d1115ba108aadfc1d2485afa
MD5 36fafb0ce14d239264ab4a5db886c990
BLAKE2b-256 e9ff1539f46ecec41d6b0fddb4abc44fa05ff3a4568d63dd89d27be7e4a767ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 660.3 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.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 06bbc90014ea2cbd159523e431b0ea23fa37db20f8c2ce8e62ba331e4012ebfd
MD5 9dc37bd8aa9e9e9da83fa79bcaa1298a
BLAKE2b-256 f3473453b8d8bd514a7c0a8c44e2d330dbd23037fe1cefe0de857d15eba5a66d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 753.2 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.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7f36222725b097000b5c045f13129cf2f684eda3aa2d12b5805baafef9e08efa
MD5 e15ab97563eea06e114cb99b6e4f09ed
BLAKE2b-256 b9ff4cfcd9441c2eaa75358deba9147b06b3e210632c1a7f6574938e8e57a186

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 564.5 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.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 351b8f5c2df8f47e41157ea4a4273080e717aa82601356733bebdd97a0b7b5f9
MD5 a5410d7d87ebccb19ae6b95d22a23b3e
BLAKE2b-256 4425cdcf0ed222833d9a13acf68d11bedafb127cfcbac8f360a36341bb90b8c7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for LightSim2Grid-0.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aa13566a514d0f2fbf35b20c7b72f91bac5cbfb7ff7b6b6ab674ab2814225fc4
MD5 6863569db239e023a98be8d0f39b077b
BLAKE2b-256 af907396ef8ae282c9e7a1dd63b9a58264357e45f02821b290c9191ebca11ccf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp38-cp38-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 660.1 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.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1c3b9d0b61fe8885076e6c3c02c3655e9732e074e983a2a263dcad62751f0d53
MD5 4fb2ede84a82181fcb02fef24a619241
BLAKE2b-256 cab6a79308d15f056e8e6a6e88b354efd73c65fd3504f5be6445f6efa736852f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 752.9 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.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 54545a142f73f96c8d48a7de63b46026b52ecd9c7803ca224b3cd4e12e85c486
MD5 7fa9f2392cf7d362b786e42323da34cb
BLAKE2b-256 456919d928cbf03e194bc5e41bb9961904b39003ccbd00324258b925f966a17e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 557.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.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 b2f500ed3297096234040af561fc1a647ed3bf4fb907816ff90fe90e6a96fb60
MD5 b4f1f3ad06627d165e12d0f02866c9cb
BLAKE2b-256 b679d66045dd5b31199fe98402bc2e4c9368cd6ae59cb28295c0818a3268c143

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for LightSim2Grid-0.8.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ff782c824f3969433b3fc7f96e21f70d1ef6f2dd7ca8412a93a6484fa614f854
MD5 0f34c9934430d1c54d2173bb5aaf0d26
BLAKE2b-256 dc4c03ca34b9b0c1eebac71768c19cb1e0026156724e53c5216784052e0d9662

See more details on using hashes here.

File details

Details for the file LightSim2Grid-0.8.1-cp37-cp37m-macosx_11_0_x86_64.whl.

File metadata

  • Download URL: LightSim2Grid-0.8.1-cp37-cp37m-macosx_11_0_x86_64.whl
  • Upload date:
  • Size: 745.3 kB
  • Tags: CPython 3.7m, 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.1-cp37-cp37m-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 5b20efea47b5a8f789cb8e63f938b66195bf7402ed40693a70a4a55506d73b7a
MD5 d41b0cba380af7ad38d1b137861cf35a
BLAKE2b-256 dc6e46be452da5ddd4a712772123f0400a1e2f4403b3e4e00c84aa742dff78c2

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