epaswmm


Nameepaswmm JSON
Version 5.3.0.dev3 PyPI version JSON
download
home_pageNone
SummaryA python package for EPA SWMM5 preprocessing, solver, and post-processing.
upload_time2024-12-20 02:48:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseCreative Commons Legal Code CC0 1.0 Universal CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. Statement of Purpose The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. 1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: i. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; ii. moral rights retained by the original author(s) and/or performer(s); iii. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; iv. rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; v. rights protecting the extraction, dissemination, use and reuse of data in a Work; vi. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and vii. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. 2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. 3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. 4. Limitations and Disclaimers. a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. For more information, please see <http://creativecommons.org/publicdomain/zero/1.0/>
keywords swmm stormwater modeling water hydrology hydraulics wastewater
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            EPA ORD Stormwater Management Model (SWMM)
==========================================

Stormwater Management Model (SWMM) computational engine and output post-processing codebase

## Build Status
[![Build and Unit Testing](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)
[![Build and Regression Testing](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)
[![Deployment](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)
[![Documentation](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg?branch=docs)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)
[![PythonVersion](https://img.shields.io/pypi/pyversions/epaswmm.svg)](https://pypi.org/project/epaswmm)
[![PyPi](https://img.shields.io/pypi/v/epaswmm.svg)](https://pypi.org/project/epaswmm)

## Introduction
This is the official SWMM source code repository maintained by US EPA Office of Research and Development, Center For Environmental Solutions & Emergency Response, Water Infrastructure Division located in Cincinnati, Ohio.

SWMM is a dynamic hydrology-hydraulic water quality simulation model. It is used for single event or long-term (continuous) simulation of runoff quantity and quality from primarily urban areas. SWMM source code is written in the C Programming Language and released in the Public Domain.

## Build Instructions

The 'src' folder of this repository contains the C source code for
version of Storm Water Management Model's computational
engine. Consult the included 'Roadmap.txt' file for an overview of
the various code modules. The code can be compiled into both a shared
object library and a command line executable. Under Windows, the 
library file (swmm5.dll) is used to power SWMM's graphical user
interface.

Also included is a python interface for the SWMM computational engine and output 
post-processing application programming interfaces located in the python folder.

The 'CMakeLists.txt' file is a script used by CMake (https://cmake.org/)
to build the SWMM binaries. CMake is a cross-platform build tool
that generates platform native build systems for many compilers. To
check if the required version is installed on your system, enter from 
a console window and check that the version is 3.5 or higher.

```bash
cmake --version
```

To build the SWMM engine library and its command line executable
using CMake and the Microsoft Visual Studio C compiler on Windows:

1. Open a console window and navigate to the directory where this
   Readme file resides (which should have 'src' as a sub-directory
   underneath it).

2. Issue the following command to create the directory for storing the built binaries:

```bash
mkdir build
cd build
```

3. Then enter the following CMake commands to build the binaries:

``` bash
cmake -G <compiler> .. -A <platform>
cmake --build . --config Release
```

where `<compiler>` is the name of the Visual Studio compiler being used
in double quotes (e.g., "Visual Studio 15 2017", "Visual Studio 16 2019",
or "Visual Studio 17 2022") and `<platform>` is Win32 for a 32-bit build 
or x64 for a 64-bit build. The resulting engine DLL (swmm5.dll), command 
line executable (runswmm.exe), and output processing libraries (swmm-output.dll)
will appear in the build\Release directory.

For other platforms, such as Linux or MacOS, Step 3 can be replaced with:

```bash
cmake ..
cmake --build .
```

The resulting shared object library (libswmm5.so or libswmm5.dylib) and 
command line executable (runswmm) will appear in the build directory. 

### Python Bindings (Experimental)

Experimental python bindings for the SWMM API are being developed to support regression and benchmark testing as well as other applications. _**These bindings are still under development and testing and has yet to be cleared through US EPA ORD's official quality assurance review process**_. The exprimental python bindings can be built and installed locally using the following command.

```bash
cd python
python -m pip install -r requirements.txt
python -m pip install . 
```
Users may also build python wheels for installation or distribution. Once the python bindings
have been validated and cleared through EPA's quality assuracnce clearance process, they will be available for installation via package indexing repositories such as pypi.

Example usage of python bindings can be found below. More extensive documentation will be provided once cleared.

```python

from epaswmm import solver
from epaswmm.solver import Solver 
from epaswmm.output import Output

with Solver(inp_file="input_file.inp") as swmm_solver:
   
   # Open swmm file and initialize objects
   swmm_solver.initialize()

   # Set initialization parameters e.g., time step stride, start date, end date etc.
   swmm_solver.time_stride = 600 

   for elapsed_time in swmm_solver:

      # Get and set attributes per timestep
      print(swmm_solver.current_datetime)

      swmm_solver.set_value(
         object_type=solver.SWMMObjects.RAIN_GAGE,
         property_type=solver.SWMMRainGageProperties.GAGE_RAINFALL,
         index=0,
         value=3.6
      )
   
swmm_output = Output(output_file='output_file.out')

# Dict[datetime, float]
link_timeseries = swmm_output.get_link_timeseries(
   element_index=5,
   attribute=output.LinkAttribute.FLOW_RATE,
)

```

## Unit and Regression Testing

Unit tests and regression tests have been developed for both the natively compiled SWMM computational engine and output toolkit as well as their respective python bindings. Unit tests for the natively compiled toolkits use the Boost 1.67.0 library and can be compiled by adding DBUILD_TESTS=ON flag during the cmake build phase as shown below:

```bash
ctest --test-dir .  -DBUILD_TESTS=ON --config Debug --output-on-failure
```

Unit testing on the python bindings may be executed using the following command after installation.

```bash
cd python\tests
pytest .
```

Regression tests are executed using the python bindings using the pytest and pytest-regressions extension using the following commands.

```bash
cd ci
pytest --data-dir <path-to-regression-testing-files> --atol <absolute-tolerance> --rtol <relative-tolerance> --benchmark-compare --benchmark-json=PATH
```

## Find Out More
The source code distributed here is identical to the code found at the official [SWMM website](https://www.epa.gov/water-research/storm-water-management-model-swmm).
The SWMM website also hosts the official manuals and installation binaries for the SWMM software. 

A live web version of the SWMM documentation of the API and user manuals can be found on the [SWMM GitHub Pages website](https://usepa.github.io/Stormwater-Management-Model). Note that this is an experimental version that is still under development and has yet to go through EPA'S official quality assurance review process.

## Disclaimer 
The United States Environmental Protection Agency (EPA) GitHub project code is provided on an "as is" basis and the user assumes responsibility for its use. EPA has relinquished control of the information and no longer has responsibility to protect the integrity, confidentiality, or availability of the information. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by EPA. The EPA seal and logo shall not be used in any manner to imply endorsement of any commercial product or activity by EPA or the United States Government.


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "epaswmm",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Caleb Buahin <buahin.caleb@epa.gov>",
    "keywords": "SWMM, stormwater, modeling, water, hydrology, hydraulics, wastewater",
    "author": null,
    "author_email": "Caleb Buahin <buahin.caleb@epa.gov>",
    "download_url": null,
    "platform": null,
    "description": "EPA ORD Stormwater Management Model (SWMM)\r\n==========================================\r\n\r\nStormwater Management Model (SWMM) computational engine and output post-processing codebase\r\n\r\n## Build Status\r\n[![Build and Unit Testing](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)\r\n[![Build and Regression Testing](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)\r\n[![Deployment](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)\r\n[![Documentation](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml/badge.svg?branch=docs)](https://github.com/USEPA/Stormwater-Management-Model/actions/workflows/build-and-test.yml)\r\n[![PythonVersion](https://img.shields.io/pypi/pyversions/epaswmm.svg)](https://pypi.org/project/epaswmm)\r\n[![PyPi](https://img.shields.io/pypi/v/epaswmm.svg)](https://pypi.org/project/epaswmm)\r\n\r\n## Introduction\r\nThis is the official SWMM source code repository maintained by US EPA Office of Research and Development, Center For Environmental Solutions & Emergency Response, Water Infrastructure Division located in Cincinnati, Ohio.\r\n\r\nSWMM is a dynamic hydrology-hydraulic water quality simulation model. It is used for single event or long-term (continuous) simulation of runoff quantity and quality from primarily urban areas. SWMM source code is written in the C Programming Language and released in the Public Domain.\r\n\r\n## Build Instructions\r\n\r\nThe 'src' folder of this repository contains the C source code for\r\nversion of Storm Water Management Model's computational\r\nengine. Consult the included 'Roadmap.txt' file for an overview of\r\nthe various code modules. The code can be compiled into both a shared\r\nobject library and a command line executable. Under Windows, the \r\nlibrary file (swmm5.dll) is used to power SWMM's graphical user\r\ninterface.\r\n\r\nAlso included is a python interface for the SWMM computational engine and output \r\npost-processing application programming interfaces located in the python folder.\r\n\r\nThe 'CMakeLists.txt' file is a script used by CMake (https://cmake.org/)\r\nto build the SWMM binaries. CMake is a cross-platform build tool\r\nthat generates platform native build systems for many compilers. To\r\ncheck if the required version is installed on your system, enter from \r\na console window and check that the version is 3.5 or higher.\r\n\r\n```bash\r\ncmake --version\r\n```\r\n\r\nTo build the SWMM engine library and its command line executable\r\nusing CMake and the Microsoft Visual Studio C compiler on Windows:\r\n\r\n1. Open a console window and navigate to the directory where this\r\n   Readme file resides (which should have 'src' as a sub-directory\r\n   underneath it).\r\n\r\n2. Issue the following command to create the directory for storing the built binaries:\r\n\r\n```bash\r\nmkdir build\r\ncd build\r\n```\r\n\r\n3. Then enter the following CMake commands to build the binaries:\r\n\r\n``` bash\r\ncmake -G <compiler> .. -A <platform>\r\ncmake --build . --config Release\r\n```\r\n\r\nwhere `<compiler>` is the name of the Visual Studio compiler being used\r\nin double quotes (e.g., \"Visual Studio 15 2017\", \"Visual Studio 16 2019\",\r\nor \"Visual Studio 17 2022\") and `<platform>` is Win32 for a 32-bit build \r\nor x64 for a 64-bit build. The resulting engine DLL (swmm5.dll), command \r\nline executable (runswmm.exe), and output processing libraries (swmm-output.dll)\r\nwill appear in the build\\Release directory.\r\n\r\nFor other platforms, such as Linux or MacOS, Step 3 can be replaced with:\r\n\r\n```bash\r\ncmake ..\r\ncmake --build .\r\n```\r\n\r\nThe resulting shared object library (libswmm5.so or libswmm5.dylib) and \r\ncommand line executable (runswmm) will appear in the build directory. \r\n\r\n### Python Bindings (Experimental)\r\n\r\nExperimental python bindings for the SWMM API are being developed to support regression and benchmark testing as well as other applications. _**These bindings are still under development and testing and has yet to be cleared through US EPA ORD's official quality assurance review process**_. The exprimental python bindings can be built and installed locally using the following command.\r\n\r\n```bash\r\ncd python\r\npython -m pip install -r requirements.txt\r\npython -m pip install . \r\n```\r\nUsers may also build python wheels for installation or distribution. Once the python bindings\r\nhave been validated and cleared through EPA's quality assuracnce clearance process, they will be available for installation via package indexing repositories such as pypi.\r\n\r\nExample usage of python bindings can be found below. More extensive documentation will be provided once cleared.\r\n\r\n```python\r\n\r\nfrom epaswmm import solver\r\nfrom epaswmm.solver import Solver \r\nfrom epaswmm.output import Output\r\n\r\nwith Solver(inp_file=\"input_file.inp\") as swmm_solver:\r\n   \r\n   # Open swmm file and initialize objects\r\n   swmm_solver.initialize()\r\n\r\n   # Set initialization parameters e.g., time step stride, start date, end date etc.\r\n   swmm_solver.time_stride = 600 \r\n\r\n   for elapsed_time in swmm_solver:\r\n\r\n      # Get and set attributes per timestep\r\n      print(swmm_solver.current_datetime)\r\n\r\n      swmm_solver.set_value(\r\n         object_type=solver.SWMMObjects.RAIN_GAGE,\r\n         property_type=solver.SWMMRainGageProperties.GAGE_RAINFALL,\r\n         index=0,\r\n         value=3.6\r\n      )\r\n   \r\nswmm_output = Output(output_file='output_file.out')\r\n\r\n# Dict[datetime, float]\r\nlink_timeseries = swmm_output.get_link_timeseries(\r\n   element_index=5,\r\n   attribute=output.LinkAttribute.FLOW_RATE,\r\n)\r\n\r\n```\r\n\r\n## Unit and Regression Testing\r\n\r\nUnit tests and regression tests have been developed for both the natively compiled SWMM computational engine and output toolkit as well as their respective python bindings. Unit tests for the natively compiled toolkits use the Boost 1.67.0 library and can be compiled by adding DBUILD_TESTS=ON flag during the cmake build phase as shown below:\r\n\r\n```bash\r\nctest --test-dir .  -DBUILD_TESTS=ON --config Debug --output-on-failure\r\n```\r\n\r\nUnit testing on the python bindings may be executed using the following command after installation.\r\n\r\n```bash\r\ncd python\\tests\r\npytest .\r\n```\r\n\r\nRegression tests are executed using the python bindings using the pytest and pytest-regressions extension using the following commands.\r\n\r\n```bash\r\ncd ci\r\npytest --data-dir <path-to-regression-testing-files> --atol <absolute-tolerance> --rtol <relative-tolerance> --benchmark-compare --benchmark-json=PATH\r\n```\r\n\r\n## Find Out More\r\nThe source code distributed here is identical to the code found at the official [SWMM website](https://www.epa.gov/water-research/storm-water-management-model-swmm).\r\nThe SWMM website also hosts the official manuals and installation binaries for the SWMM software. \r\n\r\nA live web version of the SWMM documentation of the API and user manuals can be found on the [SWMM GitHub Pages website](https://usepa.github.io/Stormwater-Management-Model). Note that this is an experimental version that is still under development and has yet to go through EPA'S official quality assurance review process.\r\n\r\n## Disclaimer \r\nThe United States Environmental Protection Agency (EPA) GitHub project code is provided on an \"as is\" basis and the user assumes responsibility for its use. EPA has relinquished control of the information and no longer has responsibility to protect the integrity, confidentiality, or availability of the information. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by EPA. The EPA seal and logo shall not be used in any manner to imply endorsement of any commercial product or activity by EPA or the United States Government.\r\n\r\n",
    "bugtrack_url": null,
    "license": "Creative Commons Legal Code  CC0 1.0 Universal  CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN \"AS-IS\" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER.  Statement of Purpose  The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an \"owner\") of an original work of authorship and/or a database (each, a \"Work\").  Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works (\"Commons\") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.  For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the \"Affirmer\"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.  1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights (\"Copyright and Related Rights\"). Copyright and Related Rights include, but are not limited to, the following:  i. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; ii. moral rights retained by the original author(s) and/or performer(s); iii. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; iv. rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; v. rights protecting the extraction, dissemination, use and reuse of data in a Work; vi. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and vii. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.  2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the \"Waiver\"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.  3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the \"License\"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.  4. Limitations and Disclaimers.  a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.  For more information, please see <http://creativecommons.org/publicdomain/zero/1.0/>",
    "summary": "A python package for EPA SWMM5 preprocessing, solver, and post-processing.",
    "version": "5.3.0.dev3",
    "project_urls": {
        "Bug Tracker": "https://github.com/USEPA/Stormwater-Management-Model/issues",
        "Changelog": "https://github.com/USEPA/Stormwater-Management-Model/blob/master/CHANGELOG.md",
        "Documentation": "https://github.com/USEPA/Stormwater-Management-Model",
        "Homepage": "https://github.com/USEPA/Stormwater-Management-Model",
        "Repository": "https://github.com/USEPA/Stormwater-Management-Model",
        "Source Code": "https://github.com/USEPA/Stormwater-Management-Model"
    },
    "split_keywords": [
        "swmm",
        " stormwater",
        " modeling",
        " water",
        " hydrology",
        " hydraulics",
        " wastewater"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c940abdc1e44887a4ab1e2773da64c7c029b42134230ec3bc83f5bfc9881322a",
                "md5": "cc72098224994a1046228fee125bb6b1",
                "sha256": "e978c7becb01d0f1593e4ea7a76752fa32fa985b3d5d1ddd6ad271458ee9a25e"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp310-cp310-win32.whl",
            "has_sig": false,
            "md5_digest": "cc72098224994a1046228fee125bb6b1",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 1050902,
            "upload_time": "2024-12-20T02:48:28",
            "upload_time_iso_8601": "2024-12-20T02:48:28.995007Z",
            "url": "https://files.pythonhosted.org/packages/c9/40/abdc1e44887a4ab1e2773da64c7c029b42134230ec3bc83f5bfc9881322a/epaswmm-5.3.0.dev3-cp310-cp310-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "483410e2e39829e14896147379a0966a828a5e59cd891d77773a850568b4d4a7",
                "md5": "222097c5fced119e2dbdb38173eb3d99",
                "sha256": "30bad72392ca88c16f1923c87f76930fcf41ef4a9045be207cc49978650ba265"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "222097c5fced119e2dbdb38173eb3d99",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 1224365,
            "upload_time": "2024-12-20T02:48:31",
            "upload_time_iso_8601": "2024-12-20T02:48:31.611339Z",
            "url": "https://files.pythonhosted.org/packages/48/34/10e2e39829e14896147379a0966a828a5e59cd891d77773a850568b4d4a7/epaswmm-5.3.0.dev3-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "382db3b537be764c9c8d98d3d956b5ef49f0417264095dfb8e0e1195b92a2421",
                "md5": "534d055951580628b6b5ad4355b16d6c",
                "sha256": "d61763ea25ee6bb9cb379d0825823f7b8e1fa849bc16a593ac08d9f4e7885af2"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp311-cp311-win32.whl",
            "has_sig": false,
            "md5_digest": "534d055951580628b6b5ad4355b16d6c",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 1050904,
            "upload_time": "2024-12-20T02:48:34",
            "upload_time_iso_8601": "2024-12-20T02:48:34.203110Z",
            "url": "https://files.pythonhosted.org/packages/38/2d/b3b537be764c9c8d98d3d956b5ef49f0417264095dfb8e0e1195b92a2421/epaswmm-5.3.0.dev3-cp311-cp311-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "16b1e25978c2581ac23729f1ddeae44a2c7695f4755ec17a398f1f5065bec1fe",
                "md5": "85273b3752424d2b24a9820a6497728e",
                "sha256": "f4cbe868635116a8e6d5518f309820aa79fc85ea74422a80e3df615283ec5626"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "85273b3752424d2b24a9820a6497728e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 1226574,
            "upload_time": "2024-12-20T02:48:39",
            "upload_time_iso_8601": "2024-12-20T02:48:39.737810Z",
            "url": "https://files.pythonhosted.org/packages/16/b1/e25978c2581ac23729f1ddeae44a2c7695f4755ec17a398f1f5065bec1fe/epaswmm-5.3.0.dev3-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1d030bd341cad8b3d08ae2141b3e0c542df4d506c59f65f4210a203b7fa416d5",
                "md5": "21b45ef669c2e5f721f58e7fa6e3ded8",
                "sha256": "fc7df51c485b78a6c28d25408a9724f4367057a65a914438d7b15497a7f571a2"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp312-cp312-win32.whl",
            "has_sig": false,
            "md5_digest": "21b45ef669c2e5f721f58e7fa6e3ded8",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 1043792,
            "upload_time": "2024-12-20T02:48:42",
            "upload_time_iso_8601": "2024-12-20T02:48:42.923961Z",
            "url": "https://files.pythonhosted.org/packages/1d/03/0bd341cad8b3d08ae2141b3e0c542df4d506c59f65f4210a203b7fa416d5/epaswmm-5.3.0.dev3-cp312-cp312-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "54ef3954db0bc2721b23769f75c0bc011c688a220bac5838c7371c8d0d562f35",
                "md5": "0c1b004b1a9ac75653636b8214782b8b",
                "sha256": "730432b2a7323c26272016cbb6c30f2c5596d6d282da3da6b46850c0aed24e99"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "0c1b004b1a9ac75653636b8214782b8b",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 1219672,
            "upload_time": "2024-12-20T02:48:45",
            "upload_time_iso_8601": "2024-12-20T02:48:45.404585Z",
            "url": "https://files.pythonhosted.org/packages/54/ef/3954db0bc2721b23769f75c0bc011c688a220bac5838c7371c8d0d562f35/epaswmm-5.3.0.dev3-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "19c6d7af1ac02abe4a13c34281f1866c94f1fb257da80c33a7a209f4d9a54253",
                "md5": "a8686db49caf199b52b67625d9c37cd2",
                "sha256": "afdb5e3a89622a31068caf57942ebf13b725ea2f764c88df60f3c98fc558e602"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp313-cp313-win32.whl",
            "has_sig": false,
            "md5_digest": "a8686db49caf199b52b67625d9c37cd2",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 1041670,
            "upload_time": "2024-12-20T02:48:46",
            "upload_time_iso_8601": "2024-12-20T02:48:46.817895Z",
            "url": "https://files.pythonhosted.org/packages/19/c6/d7af1ac02abe4a13c34281f1866c94f1fb257da80c33a7a209f4d9a54253/epaswmm-5.3.0.dev3-cp313-cp313-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bcf8ad860a8b2d36cf54f2abea575688dd85b7b2500f61de3b8c776de60b7953",
                "md5": "bb62ec8d70b9220863c9423b578b9dc1",
                "sha256": "dd1b6f2c78b8f046a2a6d737b8b5e8a2b339ed29cb3a02758ac3f10b6e69ff79"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "bb62ec8d70b9220863c9423b578b9dc1",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 1216817,
            "upload_time": "2024-12-20T02:48:48",
            "upload_time_iso_8601": "2024-12-20T02:48:48.323264Z",
            "url": "https://files.pythonhosted.org/packages/bc/f8/ad860a8b2d36cf54f2abea575688dd85b7b2500f61de3b8c776de60b7953/epaswmm-5.3.0.dev3-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7c42dd6acae6cab5b39c4e1f9ba101ebc4c30104d47956d4e539ae8fb3a157cb",
                "md5": "39bcb1038e69b217880105d0d1cc729f",
                "sha256": "4014e19d13a900660dbb47d82239fd4314827454c241ae8ca9fabdf5310963e2"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp38-cp38-win32.whl",
            "has_sig": false,
            "md5_digest": "39bcb1038e69b217880105d0d1cc729f",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 1053310,
            "upload_time": "2024-12-20T02:48:50",
            "upload_time_iso_8601": "2024-12-20T02:48:50.929614Z",
            "url": "https://files.pythonhosted.org/packages/7c/42/dd6acae6cab5b39c4e1f9ba101ebc4c30104d47956d4e539ae8fb3a157cb/epaswmm-5.3.0.dev3-cp38-cp38-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "45a4288c924cb70de356c32672781563e70a99dce9a524f96f6a1298046060a7",
                "md5": "163408a04f569eda7dab32685c131747",
                "sha256": "9f5ed1b9a6fad6339c53f6a46b005edcb5b36658eeca1ead843a1cdf7fb42892"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "163408a04f569eda7dab32685c131747",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 1226601,
            "upload_time": "2024-12-20T02:48:52",
            "upload_time_iso_8601": "2024-12-20T02:48:52.490147Z",
            "url": "https://files.pythonhosted.org/packages/45/a4/288c924cb70de356c32672781563e70a99dce9a524f96f6a1298046060a7/epaswmm-5.3.0.dev3-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "80b716ce1d22dccd81d945a85b8033c7259322f7eda92b7cc0313c9060f22314",
                "md5": "760fd6373c8b54391e707878a859016c",
                "sha256": "aa05f758ccc79d857a6f484b9e9c1c13e19eaf38d37121b0e8a13c1658a87371"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp39-cp39-win32.whl",
            "has_sig": false,
            "md5_digest": "760fd6373c8b54391e707878a859016c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 1051668,
            "upload_time": "2024-12-20T02:48:53",
            "upload_time_iso_8601": "2024-12-20T02:48:53.987609Z",
            "url": "https://files.pythonhosted.org/packages/80/b7/16ce1d22dccd81d945a85b8033c7259322f7eda92b7cc0313c9060f22314/epaswmm-5.3.0.dev3-cp39-cp39-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4f237a88340b2491bbc30f6e6fcdf5aecb9def785367a2acc1f4fc497ecc7cf2",
                "md5": "23408314b0a383603a6ef8041a400fda",
                "sha256": "21fae4817de39c143e58cd1c3afa8727fe4e06ec3813dd7f7c6dedb24f1e1b6f"
            },
            "downloads": -1,
            "filename": "epaswmm-5.3.0.dev3-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "23408314b0a383603a6ef8041a400fda",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 1225255,
            "upload_time": "2024-12-20T02:48:56",
            "upload_time_iso_8601": "2024-12-20T02:48:56.458404Z",
            "url": "https://files.pythonhosted.org/packages/4f/23/7a88340b2491bbc30f6e6fcdf5aecb9def785367a2acc1f4fc497ecc7cf2/epaswmm-5.3.0.dev3-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-20 02:48:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "USEPA",
    "github_project": "Stormwater-Management-Model",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "epaswmm"
}
        
Elapsed time: 0.43595s