swmm-pandas 0.6.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- swmm/pandas/__init__.py +7 -0
- swmm/pandas/constants.py +37 -0
- swmm/pandas/input/README.md +61 -0
- swmm/pandas/input/__init__.py +2 -0
- swmm/pandas/input/_section_classes.py +2309 -0
- swmm/pandas/input/input.py +888 -0
- swmm/pandas/input/model.py +403 -0
- swmm/pandas/output/__init__.py +2 -0
- swmm/pandas/output/output.py +2580 -0
- swmm/pandas/output/structure.py +317 -0
- swmm/pandas/output/tools.py +32 -0
- swmm/pandas/py.typed +0 -0
- swmm/pandas/report/__init__.py +1 -0
- swmm/pandas/report/report.py +773 -0
- swmm_pandas-0.6.0.dist-info/METADATA +71 -0
- swmm_pandas-0.6.0.dist-info/RECORD +19 -0
- swmm_pandas-0.6.0.dist-info/WHEEL +4 -0
- swmm_pandas-0.6.0.dist-info/entry_points.txt +4 -0
- swmm_pandas-0.6.0.dist-info/licenses/LICENSE.md +157 -0
swmm/pandas/__init__.py
ADDED
swmm/pandas/constants.py
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import os.path
|
|
2
|
+
|
|
3
|
+
_this_dir, _this_filename = os.path.split(__file__)
|
|
4
|
+
|
|
5
|
+
test_inp_path = os.path.join(_this_dir, "test_data/Model.inp")
|
|
6
|
+
test_out_path = os.path.join(_this_dir, "test_data/Model.out")
|
|
7
|
+
test_rpt_path = os.path.join(_this_dir, "test_data/Model.rpt")
|
|
8
|
+
|
|
9
|
+
# volume
|
|
10
|
+
gal_per_cf = 7.48052
|
|
11
|
+
L_per_gal = 3.78541
|
|
12
|
+
|
|
13
|
+
cf_per_gal = 1 / gal_per_cf
|
|
14
|
+
gal_per_L = 1 / L_per_gal
|
|
15
|
+
|
|
16
|
+
# flowrates
|
|
17
|
+
seconds_per_day = 24 * 60 * 60
|
|
18
|
+
|
|
19
|
+
cfs_per_mgd = cf_per_gal * 1_000_000 * seconds_per_day
|
|
20
|
+
lps_per_mgd = L_per_gal * 1_000_000 * seconds_per_day
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
mgd_per_cfs = 1 / cfs_per_mgd
|
|
24
|
+
mgd_per_lps = 1 / lps_per_mgd
|
|
25
|
+
|
|
26
|
+
# mass
|
|
27
|
+
lbs_per_kg = 2.20462
|
|
28
|
+
lbs_per_mg = 2.20462 / 1_000_000
|
|
29
|
+
lbs_per_ug = lbs_per_mg / 1_000
|
|
30
|
+
|
|
31
|
+
kg_per_lbs = 1 / lbs_per_kg
|
|
32
|
+
mg_per_lbs = 1 / lbs_per_mg
|
|
33
|
+
ug_per_lbs = 1 / lbs_per_ug
|
|
34
|
+
|
|
35
|
+
# length
|
|
36
|
+
mm_per_inch = 25.4
|
|
37
|
+
inch_per_mm = 1 / mm_per_inch
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
## Input File Interface Progress
|
|
2
|
+
|
|
3
|
+
| Section | Parser | Testing | Structure Type | TODO |
|
|
4
|
+
|---------------|--------------------|--------------------|------------------------------------|-------------------------------------------------------|
|
|
5
|
+
| TITLE | :heavy_check_mark: | :heavy_check_mark: | String | |
|
|
6
|
+
| OPTIONS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
7
|
+
| REPORT | :heavy_check_mark: | :heavy_check_mark: | Custom Object | |
|
|
8
|
+
| EVENT | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
9
|
+
| FILES | :x: | :x: | String | build better interface than text interface |
|
|
10
|
+
| RAINGAGES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
11
|
+
| EVAPORATION | :heavy_check_mark: | :heavy_check_mark: | Dataframe | better column names |
|
|
12
|
+
| TEMPERATURE | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
13
|
+
| ADJUSTMENTS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
14
|
+
| SUBCATCHMENTS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
15
|
+
| SUBAREAS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
16
|
+
| INFILTRATION | :heavy_check_mark: | :heavy_check_mark: | Dataframe | better column names |
|
|
17
|
+
| LID_CONTROLS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
18
|
+
| LID_USAGE | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
19
|
+
| AQUIFERS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
20
|
+
| GROUNDWATER | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
21
|
+
| GWF | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
22
|
+
| SNOWPACKS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
23
|
+
| JUNCTIONS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
24
|
+
| OUTFALLS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
25
|
+
| DIVIDERS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
26
|
+
| STORAGE | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
27
|
+
| CONDUITS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
28
|
+
| PUMPS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
29
|
+
| ORIFICES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
30
|
+
| WEIRS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
31
|
+
| OUTLETS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
32
|
+
| XSECTIONS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
33
|
+
| TRANSECTS | :x: | :x: | String | |
|
|
34
|
+
| STREETS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
35
|
+
| INLETS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
36
|
+
| INLET_USAGE | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
37
|
+
| LOSSES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
38
|
+
| CONTROLS | :x: | :x: | String | build better interface than text interface |
|
|
39
|
+
| POLLUTANTS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
40
|
+
| LANDUSES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
41
|
+
| COVERAGES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | Support parsing multiple coverages on a single line |
|
|
42
|
+
| LOADINGS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | Support parsing multiple loadings on a single line |
|
|
43
|
+
| BUILDUP | :heavy_check_mark: | :heavy_check_mark: | Dataframe | Does it make sense to index by landuse and pollutant? |
|
|
44
|
+
| WASHOFF | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
45
|
+
| TREATMENT | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
46
|
+
| INFLOWS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
47
|
+
| DWF | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
48
|
+
| RDII | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
49
|
+
| HYDROGRAPHS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
50
|
+
| CURVES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
51
|
+
| TIMESERIES | :heavy_check_mark: | :heavy_check_mark: | Hashmap of Dataframes and Objects | Better output string formatting. |
|
|
52
|
+
| PATTERNS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
53
|
+
| MAP | :x: | :x: | String | Build a better data structure for this. |
|
|
54
|
+
| POLYGONS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | Add coordinate index |
|
|
55
|
+
| COORDINATES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|
|
56
|
+
| VERTICIES | :heavy_check_mark: | :heavy_check_mark: | Dataframe | Add coordinate index |
|
|
57
|
+
| LABELS | :heavy_check_mark: | :x: | Dataframe | |
|
|
58
|
+
| SYMBOLS | :heavy_check_mark: | :x: | Dataframe | |
|
|
59
|
+
| BACKDROP | :x: | :x: | String | |
|
|
60
|
+
| PROFILE | :x: | :x: | String | |
|
|
61
|
+
| TAGS | :heavy_check_mark: | :heavy_check_mark: | Dataframe | |
|