Skip to main content

Python bindings for the OpenSWMM stormwater modelling engine.

Project description

OpenSWMM Engine

OpenSWMM

Open Storm Water Management Model — Next-Generation Computational Engine

Unit Testing Unit Testing Python Documentation Issues License: MIT PyPI Downloads Python Wheel

Documentation

Site Contents
C / C++ Engine hydrocouple.org/openswmm.engine Full C API reference, hydrology / hydraulics / water-quality reference manuals, user manual, architecture notes.
Python Bindings hydrocouple.org/openswmm.engine/python Quickstart, per-domain user guide, Cython API reference, SWMM 5 → v6 migration.

Both sites cross-link from their top navigation.


Overview

OpenSWMM Engine is a community-driven, open-source continuation of the EPA Storm Water Management Model — a dynamic hydrology, hydraulic, and water-quality simulator for urban runoff. The project preserves the SWMM legacy under QA/QC and builds the community needed for long-term maintenance, working with ASCE/EWRI and the Water Environment Federation.

What's New in v6.0.0

Architecture & Performance

  • Data-Oriented Design — Core state refactored to Structure-of-Arrays for cache efficiency and SIMD-friendly batches.
  • Reentrant Engine — All simulation state lives behind an opaque SWMM_Engine handle; multiple independent simulations can run in the same process.
  • Plugin-Based I/O — Output and report writing dispatch through plugin interfaces on a dedicated I/O thread.
  • C++20 Codebase — Modern C++20 implementation; the legacy EPA SWMM 5.x solver is preserved unmodified in src/legacy/.

Process Formulation Enhancements

Implemented

  • Semi-Implicit Node Continuity — Single-equation free-surface/surcharge formulation that removes the legacy two-branch discontinuity. Enabled via NODE_CONTINUITY SEMI_IMPLICIT (default). Reference »

  • Anderson Acceleration for Picard Iteration — Depth-2 mixing of residual history cuts iteration counts 25–50% on stiff surcharge transitions with safe fall-back to standard Picard. Enabled via ANDERSON_ACCEL YES.

  • Spatially Explicit Overland Flow & Groundwater (2D) — 2D overland-flow grid coupled to the 1D pipe network. Surcharge re-routes over terrain to downstream nodes, lateral groundwater exchanges are tracked explicitly, and green-infrastructure placement is spatially resolved.

  • Dynamic Preissmann Slot — Geometry-dependent slot width replaces the fixed-width slot at the free-surface / pressurized transition, improving stability for rapidly filling or draining conduits.

  • Physics-Based Initial Abstraction Recovery — RDII initial abstraction now evolves as an exponential depletion/recovery process with additive base + thermal recovery rates and frozen-ground suppression. Seasonal RDII variation emerges from temperature dynamics on a single RTK set per sewershed — no monthly parameter tables required. Configured via the new [RDII_DECAY] input section.

    $$IA_{avail}(t+\Delta t) = IA_{max} - \bigl(IA_{max} - IA_{avail}(t)\bigr) \cdot e^{-k_{rec}(T),\Delta t}, \quad k_{rec}(T) = k_0 + k_T \cdot e^{,\theta(T - T_{ref})}$$

In Development

  • Spatially Explicit Inlets — Promotes inlets to mode-switching junction nodes that capture street flow when gutter spread exceeds a threshold and revert to passive junctions otherwise.
  • LID as Storage Nodes — Maps LID layers (surface, media, gravel) onto extended storage nodes using a reduced-physics kinematic Richards ODE for two-way hydraulic feedback.

New C API

A domain-split C API replaces the monolithic legacy interface. Full reference at the C engine documentation site.

Header Domain
openswmm_engine.h Engine lifecycle, error codes, state machine
openswmm_model.h Model building, validation, serialization, options
openswmm_nodes.h Junctions, outfalls, storage, dividers
openswmm_links.h Conduits, pumps, orifices, weirs, outlets
openswmm_subcatchments.h Subcatchments, infiltration, coverage
openswmm_gages.h Rain gages
openswmm_pollutants.h Pollutant definitions and runtime injection
openswmm_tables.h Time series, curves, patterns
openswmm_inflows.h External inflows, DWF, RDII (incl. [RDII_DECAY])
openswmm_controls.h Control rules and direct link actions
openswmm_infrastructure.h Transects, streets, inlets, LID controls
openswmm_spatial.h CRS, coordinates, polylines, polygons
openswmm_quality.h Landuse, buildup, washoff, treatment
openswmm_massbalance.h Continuity errors and cumulative flux totals
openswmm_callbacks.h Progress, warning, and step callbacks
openswmm_hotstart.h Hot start file save / load / modify
openswmm_statistics.h Node, link, and subcatchment statistics
openswmm_geopackage.h Optional GeoPackage I/O

Additional Features

  • Hot Start API — Save, load, modify, and query hot-start files through a stable C ABI.
  • CRS Support — Coordinate reference systems specified in [OPTIONS].
  • User Flags — Typed [USER_FLAGS] / [USER_FLAG_VALUES] sections attach custom metadata (boolean, integer, real, string) to nodes, links, subcatchments, or gages.
  • Extension Options — Unrecognized [OPTIONS] keys are preserved and exposed to plugins at runtime.
  • Plugin SDK — Header-only SDK in include/openswmm/plugin_sdk/ for input, output, and report plugins; the IPluginComponentInfo entry point advertises capabilities and supports custom .inp section handlers via SectionRegistry.
  • GeoPackage I/O — Optional SQLite + spatial backing store for inputs, results, observed series, and topology in a single .gpkg file (-DOPENSWMM_WITH_GEOPACKAGE=ON).
  • HEC-22 Inlet Analysis — Street inlet capture with grate and curb inlets (SWMM 5.2).
  • Variable Speed Pumps — Type 5 pump curves with speed scaling.
  • New Storage Shapes — Conical and pyramidal shapes with elliptical and rectangular bases.

Quick Start

# C / C++ engine
git clone https://github.com/HydroCouple/openswmm.engine.git
cd openswmm.engine
git clone https://github.com/microsoft/vcpkg.git && ./vcpkg/bootstrap-vcpkg.sh
export VCPKG_ROOT=$(pwd)/vcpkg

cmake --preset=<platform> -B build -DOPENSWMM_WITH_GEOPACKAGE=ON
cmake --build build --config Release
ctest --test-dir build -C Release --output-on-failure

# Python bindings (PyPI)
pip install openswmm

Presets: Windows, Windows-debug, Linux, Linux-debug, Darwin, Darwin-debug. Full build, test, and packaging instructions are in the C engine docs.

from openswmm.engine import Solver, Nodes, Links

with Solver("model.inp", "model.rpt", "model.out") as s:
    nodes, links = Nodes(s), Links(s)
    while s.step():
        depth = nodes.get_depth("J1")
        flow  = links.get_flow("C1")

Forcing, model building, hot-start, bulk NumPy access, mass balance, and statistics are covered in the Python docs.

Glossary

Brief definitions of the domain terms used throughout this README. Full treatment lives in the reference manuals.

  • RDII — Rainfall-Dependent Inflow & Infiltration. Stormwater that enters sanitary or combined sewers through cracks, joints, defective laterals, and roof / foundation drains during and after rainfall.
  • RTK — The triplet (R, T, K) that parameterises a SWMM synthetic unit hydrograph for RDII: R is the long-term fraction of rainfall that becomes RDII, T is the time to peak (hours), and K is the ratio of base time to peak time.
  • IA (Initial Abstraction) — Rainfall depth absorbed by the catchment before any RDII response begins (interception, surface storage, soil wetting). Recovers between events.
  • DWF — Dry-Weather Flow. Base sanitary flow plus infiltration unrelated to rainfall, typically specified as an average value with diurnal / day-of-week / monthly patterns.
  • LID — Low-Impact Development. Distributed green-infrastructure controls (bio-retention cells, permeable pavement, green roofs, infiltration trenches, rain gardens) that intercept, store, and infiltrate runoff at the source.
  • CRS — Coordinate Reference System. The geodetic / projected coordinate frame (e.g. EPSG:4326) the model's spatial data is expressed in.
  • CFS / CMS — Cubic feet per second / cubic metres per second. The two flow-unit conventions exposed via FLOW_UNITS.
  • Dynamic Wave Routing — Full Saint-Venant momentum solver for link flow, used for backwater, surcharge, and pressurized conditions.
  • Preissmann Slot — A narrow virtual slot added to a closed conduit's cross-section so that pressurized flow can be solved with the same free-surface equations. The dynamic slot adjusts width with geometry to smooth the surface ↔ pressure transition.
  • Surcharge — A pipe flowing full and under pressure (HGL above the crown), typically caused by downstream backwater or capacity exceedance.
  • Picard Iteration — Fixed-point iteration used inside the dynamic-wave timestep to converge implicit node depths. Anderson Acceleration is a residual-history accelerator on top of Picard.
  • Hot Start — A saved end-of-run state (depths, volumes, IA, snow, GW) that initialises a subsequent simulation, letting long runs be split into checkpoints or warm runs into operational forecasts.
  • HEC-22 — FHWA Hydraulic Engineering Circular No. 22, the design reference whose grate and curb-opening capture equations are used by the inlet-analysis module.
  • GeoPackage — OGC standard for a SQLite-based, single-file container holding spatial features and tabular data with full CRS metadata.

Prerequisites

Requirement Version
CMake 3.21+
C compiler C17 (GCC 10+, Clang 12+, MSVC 19.29+)
C++ compiler C++20 (GCC 10+, Clang 14+, MSVC 19.29+)
vcpkg 2025.02.14
Python 3.9 – 3.13 (optional)
Ninja recommended on Linux/macOS

Project Structure

openswmm.engine/
├── include/openswmm/
│   ├── engine/           # New engine public C API headers
│   └── legacy/           # Legacy SWMM 5.x public headers
├── src/
│   ├── engine/           # New C++20 engine implementation
│   │   ├── input/geopackage/  # Optional GeoPackage I/O
│   │   └── 2d/                # 2D overland-flow & groundwater coupling
│   ├── legacy/           # Original EPA SWMM 5.x solver and output reader
│   ├── plugin_sdk/       # Header-only plugin SDK
│   └── cli/              # Command-line interface
├── tests/
│   ├── unit/legacy/      # Legacy solver & output tests
│   ├── unit/engine/      # New engine unit tests
│   ├── regression/       # New-vs-legacy regression tests
│   └── benchmarks/       # Performance benchmarks
├── python/               # Cython bindings (scikit-build)
├── docs/                 # Doxygen config and technical manuals
└── .github/workflows/    # CI/CD pipelines

Libraries Built

Target Description
openswmm_legacy_engine Original EPA SWMM 5.x solver (shared)
openswmm_legacy_output Original SWMM binary output reader (shared)
openswmm_engine New refactored C++20 engine (shared)
openswmm_geopackage GeoPackage I/O (static, optional — requires SQLite3)
openswmm_plugin_sdk Header-only plugin SDK (INTERFACE)
openswmm_cli Command-line executable

Contributing

Contributions are welcome — bug reports, fixes, new features, docs, tests, and benchmarks.

  1. Read CONTRIBUTING.md for the development workflow and the Code of Conduct.
  2. Fork the repo and create a feature branch.
  3. Ensure C++ (ctest) and Python (pytest) tests pass.
  4. Follow existing style and naming.
  5. Open a PR against develop.

Contributor License Agreement

First-time contributors must sign the project CLA before a pull request can be merged. The CLA grants the project a perpetual, royalty-free copyright and patent license to your contributions and preserves the project's ability to relicense in the future; you retain full copyright ownership of your work.

Signing is automated through CLA Assistant — when you open your first PR, a bot comments with a one-click sign-in link. The CLA covers all subsequent contributions, so you only sign once. Corporate contributors should additionally submit a CCLA per CLA §6.

License

MIT — see LICENSE. Original EPA SWMM material is in the public domain under 17 USC § 105.

Acknowledgements

OpenSWMM builds on the EPA Storm Water Management Model. See docs/authors.md for the full contributor list.

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

openswmm-6.0.0.dev2.tar.gz (5.8 MB view details)

Uploaded Source

Built Distributions

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

openswmm-6.0.0.dev2-cp313-cp313-win_amd64.whl (8.5 MB view details)

Uploaded CPython 3.13Windows x86-64

openswmm-6.0.0.dev2-cp313-cp313-manylinux_2_28_x86_64.whl (13.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

openswmm-6.0.0.dev2-cp313-cp313-manylinux_2_28_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

openswmm-6.0.0.dev2-cp313-cp313-macosx_15_0_x86_64.whl (11.2 MB view details)

Uploaded CPython 3.13macOS 15.0+ x86-64

openswmm-6.0.0.dev2-cp313-cp313-macosx_15_0_arm64.whl (9.8 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

openswmm-6.0.0.dev2-cp312-cp312-win_amd64.whl (8.5 MB view details)

Uploaded CPython 3.12Windows x86-64

openswmm-6.0.0.dev2-cp312-cp312-manylinux_2_28_x86_64.whl (13.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

openswmm-6.0.0.dev2-cp312-cp312-manylinux_2_28_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

openswmm-6.0.0.dev2-cp312-cp312-macosx_15_0_x86_64.whl (11.2 MB view details)

Uploaded CPython 3.12macOS 15.0+ x86-64

openswmm-6.0.0.dev2-cp312-cp312-macosx_15_0_arm64.whl (9.8 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

openswmm-6.0.0.dev2-cp311-cp311-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.11Windows x86-64

openswmm-6.0.0.dev2-cp311-cp311-manylinux_2_28_x86_64.whl (13.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

openswmm-6.0.0.dev2-cp311-cp311-manylinux_2_28_aarch64.whl (12.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

openswmm-6.0.0.dev2-cp311-cp311-macosx_15_0_x86_64.whl (11.2 MB view details)

Uploaded CPython 3.11macOS 15.0+ x86-64

openswmm-6.0.0.dev2-cp311-cp311-macosx_15_0_arm64.whl (9.8 MB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

openswmm-6.0.0.dev2-cp310-cp310-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.10Windows x86-64

openswmm-6.0.0.dev2-cp310-cp310-manylinux_2_28_x86_64.whl (13.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

openswmm-6.0.0.dev2-cp310-cp310-manylinux_2_28_aarch64.whl (12.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

openswmm-6.0.0.dev2-cp310-cp310-macosx_15_0_x86_64.whl (11.2 MB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

openswmm-6.0.0.dev2-cp310-cp310-macosx_15_0_arm64.whl (9.8 MB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

File details

Details for the file openswmm-6.0.0.dev2.tar.gz.

File metadata

  • Download URL: openswmm-6.0.0.dev2.tar.gz
  • Upload date:
  • Size: 5.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for openswmm-6.0.0.dev2.tar.gz
Algorithm Hash digest
SHA256 5ae02fe35a1e01c812d302a767fc09066471b6b8828b52173660ff78a5a3f5f5
MD5 935725ec024ebae32f68f78ef4720cc7
BLAKE2b-256 b68ad1ae1918d99580cbb4d245684a9e8785f0d9cec4546688e8d90d9f17d40a

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 716f1af9e61db3c23dc8193c6bea1ab18e847cef32aefed10cfa68393e8cda3b
MD5 d4c229661440f3cfc88f2e0b90e4cf62
BLAKE2b-256 66f1860e5b174ec050fa0b538bbebfe0c08daa245143089d19c6ee91aee23220

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9d13a7255efe07f10098fd27e36e7dc5ee64473fd1aa23bda94dd4ec04e90fd3
MD5 8b311fc455ee84c830a31b7da6f4682d
BLAKE2b-256 b8c5b8a8b235c86b177800f0a335fb6542b5826270f593e490020cd2252e8242

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 df6ec42964dddd7a4db4e54ebf45b3a32f04ea77ec0f24daa2266998dc895ca8
MD5 b954fc3a43f6e8399866732123c4d2d9
BLAKE2b-256 968f019c59aaacde111b524cfb8fe15634d9fdca06ac8cb5e00c57b47e341af3

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp313-cp313-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp313-cp313-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 d6473ee2f0f9f410f912d0eef2ad41d79771fdf6bdd442d08d44475ee3370974
MD5 0b460e0c7c376b107e3eb15da34eed67
BLAKE2b-256 27f9ac7b080a8c94c8e68ea3f7273444c0f7da087c6a2b6872df3404cfb7e9bb

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 517d07f453686cf3863ada9b5c94dd3b43462acf67231340495588a1bd4dadf1
MD5 e87b50a2fc043426f2705fe4fe61e74a
BLAKE2b-256 3fc6ed091c1f8b41b639dd347117f45fd0a915d3bba274d6b5034eca3cf4279e

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 50827f7a8465a94363aa406b06e6f3260639da24c6f66aa5dfba4aefe44c1de3
MD5 4eff123b42f389b1e2c679214d2ebf28
BLAKE2b-256 de0e3a91a65f01bdea9959962bee8d6202b6b63ccd8f4538d0362e24aacd41d3

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a78aeba04368072cfcdb9b0ed87879cc900b710b20f130cbc4b101125b105d50
MD5 293852f5d877c074aadfab60c28e294d
BLAKE2b-256 b5f7df59d6f07cf836ac2824ae37bbf8204b01e1cb0db417ca826c2b6bcee37b

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 04566ee57a3cf3477fb9487818414bcb4a765617ea0ae3d56d62dede5d974213
MD5 9ce04530e8c9b95e177c5c3af9fade47
BLAKE2b-256 7d9cd73924e60ce04485f8f92374443779a49258bbdb4425b76a0a50fef1e757

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp312-cp312-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp312-cp312-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 f7f30bb611876b0b2f69f7fce63397ebd0cd153b8e6ee88d5fb8ffedebab6f2e
MD5 07f7fe907d0ccd188446646b42062bee
BLAKE2b-256 ad43ae7b9420a36a8d0be02a5b9865131a14ac5d2f1373ac0e1b4da485827fff

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 3f1ad5291faacb897b3d4b3211fe03d0114cd9a0f228e1a725d76f10bf523d61
MD5 e2225a2fd498023009aaf55a093b6ad7
BLAKE2b-256 480c67afd4490ee978706f25565d567506deaeefe9d7ae36bfc88c1fba8b39ae

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 cc235dbd751e907f5102f45330ea2a1b2562a09494e7f9e1dd2ff2331d23c182
MD5 ff9275f09219e1e824a1e74e963b6aa8
BLAKE2b-256 2f2b6d9de7237344fa649d85076c4a77d4a110a7ffff598f334df0e34bd225f7

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 447d6cbf723a2537e972f69514185c421ed961d645c8e41d3ef43b1d8a9bf689
MD5 abe889d7d3c4a8cfbed38dd0f18ebb34
BLAKE2b-256 f9de173467d98e23addcfdfa69ffd0630c3ddb1ecef7077d7cd677c16ea61328

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 beaa13d09c3612cd958dafc4bbfbfbb0964aa922a87d7766ba2dad13eb2ae3ab
MD5 ded411a7af88acb574531282b7665e24
BLAKE2b-256 341fc3a4a0240d76ea6896ed2695398fb82d6a20a3dfc3f031151a61f44561be

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp311-cp311-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp311-cp311-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 18e41120ec7229ba222d881ba06a49c887151572d724f0f35ff567c098db00e1
MD5 e6f4fc5500aa2707e859d98a200a695f
BLAKE2b-256 d7d51935c10451ae0cabadb6d8145dcbd6dafa9d73ac92236eb8ce7dde71f127

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 4221743b5006b5c0f770d80dfd7c07c33fc2723125227f4afea0b5fff2462b1b
MD5 eaed7e1ff895dc7b3b90ef8cc7abceed
BLAKE2b-256 c6c5c0401dcddb94bfbd3e0d840f085185abf3c72eaa2df764f2ae031d323a5c

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1607fc2c9ea5ee8edf4bd3e660b9b9a4a5e4f1f3ed5236790e70b965bba92170
MD5 a18c2612a817932eac6981a09d18deb8
BLAKE2b-256 9221ed4050819ecd3c9b0d03dca130f8915938f50d60c795f6c1f99fd9e4387e

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c29e30f82c732d2cb14fd424059cd9ec7e8058c894eb434f811cd22dcc31b2c7
MD5 87e580af2258a2098d97c8351e95d410
BLAKE2b-256 9692e68e48c7ed6cdc24f1f159213cec6ab5045b5fb0716d193f3ee399d46354

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 77aedf89613ba59aa89e2636b6c90e48631ef4c36cea1bd3a6ade2ef475692cd
MD5 bb4aac5e665a82ee5c2f572e0bbc282a
BLAKE2b-256 9ac35ba49938ce997db583ba50718bcfbbaee02e1e42f2b36541244aa481ca1d

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp310-cp310-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 e415e3f326373fdbe77f6ee05e763dfde77dc782d58cbfa714eef30dfcadb9ff
MD5 a33a341d5dc9fa49c85dfb82872c06ae
BLAKE2b-256 12778dd18959223ff169ca99e230eedaaf77c2ba067ec4ad4e2f86f7b6f60c03

See more details on using hashes here.

File details

Details for the file openswmm-6.0.0.dev2-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for openswmm-6.0.0.dev2-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 ec16f20876d3911f10524470a0eb30eb0c33b5aeadd2877bd5b240e22731a885
MD5 f4bf1ecb9bc48f39addd19c7f7d5c6bc
BLAKE2b-256 f9bdced912ed556d7053f64d794301af896ae675ce269a1bd9ad64ca45f6a042

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