From b7889a72937176c10ae88741a63b1965b5f72bec Mon Sep 17 00:00:00 2001 From: Fuhong Xie Date: Mon, 16 Aug 2021 13:06:56 -0600 Subject: [PATCH] Develop add vegetation geodata (#973) * Update gridlabd-geodata * Update gridlabd-geodata * Update geodata_example.glm * Update geodata_example * Work update * Update geodata_address.py * Update gridlabd-geodata * Fix traceback output when DEBUG is True * Add general geodata autotest * Update gridlabd-geodata * Update test_geodata_address.glm * Update gridlabd-geodata * Add geodata dataset autotest * Update geodata_utility.py * Update autotest.sh * Rename unittest.sh * Update geodata_elevation.py * Update geodata_address.py * Update geodata_address.py * Update geodata_elevation.py * Update geodata_utility.py * Update test_geodata_elevation.glm * Update test_geodata_utility.glm * Update unittest.sh * Update gridlabd-geodata * Update test_geodata.txt * Update unittest.sh * Update geodata_powerline.py * Fix index resolution conflicts * Update geodata_powerline.py * Add haversine function support * Update requirements.txt * Update gridlabd-geodata * Update gridlabd-geodata * Update geodata_powerline.py * Update gridlabd-geodata * Update test_geodata.glm * Update gridlabd-geodata * Update gridlabd-geodata * Update main.cpp * Update test_geodata.glm * Update geodata package call method * Update geodata_powerline.py * Update geodata_powerline.py * Update gridlabd-geodata * Update geodata_census.py * Add cabletypes for powerline geodata package * Update gridlabd-geodata * Update geodata_powerline.py * Update geodata_powerline.py * Update geodata_powerline.py * Update geodata_powerline_cabletypes.csv * Update geodata_powerline.py * Update geodata_powerline.py * Add csv-table to glm-library converter * Update geodata_powerline.py * Refactor gridlabd convert implementation * Update Convert.md * Update Convert.md * Update gridlabd-convert * Update csv-table2glm-library.py * Update gridlabd-convert * Update csv-table2glm-library.py * Update geodata_powerline.py * Update geodata_powerline.py * Update path_example.csv * Update geodata_powerline.py * Update test_geodata.txt * Add verbose output for get_args() * Add census state data processing * Update geodata_census.py * Add more support for plot format * Add support for uuid key * Update gridlabd-geodata * Refactor python requirements handling * Update gridlabd-geodata * Update geodata_census.py * Fix redirect issue * Update test_geodata.glm * Fix permissions on scripts * Update Makefile.am * Update gridlabd-geodata * Update geodata_census.py * Update geodata_census.py * Update gridlabd-geodata * Added zipcode-level census data * Update zipcodes.py * Update gridlabd-geodata * Update geodata_census.py * Create path_example.csv * Create GridLAB-D GeoData Tutorial.ipynb * Update geodata_distance.py * Update build_number * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Update geodata_elevation.py * Update gridlabd-geodata * Update geodata_utility.py * Update GridLAB-D GeoData Tutorial.ipynb * Update geodata_utility.py * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Update gridlabd-geodata * Update geodata_powerline.py * Update GridLAB-D GeoData Tutorial.ipynb * Update geodata_powerline.py * Update GridLAB-D GeoData Tutorial.ipynb * Update GridLAB-D GeoData Tutorial.ipynb * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Update gridlabd-geodata * Update geodata_distance.py * Update GridLAB-D GeoData Tutorial.ipynb * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Update GridLAB-D GeoData Tutorial.ipynb * Update GridLAB-D GeoData Tutorial.ipynb * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Update gridlabd-geodata * Update gridlabd-geodata * Update geodata_distance.py * Update Makefile.am * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Update gridlabd-geodata * Update geodata_example.sh * Update GridLAB-D GeoData Tutorial.ipynb * Update version check so it works from the command line too * Add more support for JSON and Excel file I/O * Add relative distance option to geodata distance package * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Update Geodata.md * Update Geodata.md * Update test_geodata_elevation.glm * Update requirements.txt * Update requirements.txt * Update Geodata.md * Update gridlabd-geodata * Update gridlabd-geodata * Update GridLAB-D GeoData Tutorial.ipynb * Fix input delimiter problem with address (again) * Fix autotest errors * Fix geodata autotest problems on github actions * Create Geodata.md * Update Geodata.md * Add tutorial docs generation * Tutorial update * Update test_geodata.glm * Making pole test optional until it's fixed * Update the geodata tutorial * Update geodata tutorial * Update docs and add --resolution_id option * Update Geodata.md * Fix waypoints id calcs * Update geodata_elevation.py * Create geodata_vegetation.py * Add geodata_vegetation.py * Update geodata_vegetation.py * Add vegetation geodata package * Update geodata_vegetation.py * Update geodata_vegetation.py * Update vegetation geodata package * Update geodata_vegetation.py * Update geodata_vegetation.py * Add link to CFO repo for user registration * Update vegetation package and docs * Update geodata tutorial * Tutorial update * Update tutorial docs * Update distance package to support relative distances * Update with a second example * Fix distance calcs when resolution is too large * Merge branch 'develop' into develop-add-vegetation-geodata * Fix geodata autotest * fix distance calulation issue * fix the bug for calculation linesag at arbitrary points * Update geodata_vegetation.py * Create update_vegetation.py * Update update_vegetation.py * Update update_vegetation.py * Fix image tiling * Code for downloading 0.1 degree vegetation tiles and uploading them to AWS * Update geodata_vegetation.py * Update Geodata.ipynb * Update Geodata.md * Update Geodata.ipynb * Update Geodata.md * Update geodata_powerline.py * Update Geodata.ipynb * Update Geodata.md * Update docs * change pole height * change pole geight * Added line contact probability test * Update docs * Update Geodata.ipynb * Update CFO authenticator * Added interpolation of elevation * Update geodata_elevation.py * update elevation intepolation for geodata_elevation * Update the initial tension calculation * Fixed python notebook for geodata * Update Geodata.md * Update develop.yml * merge updates * Update path_example.csv * Update gridlabd-library * Update geodata_vegetation.py * Update geodata_vegetation.py * Create geodata.conf * Update update_vegetation.py * Update Geodata.ipynb * Update CFO authentication * Update Geodata.ipynb * Update geodata_vegetation.py * Fix autotest validation * Update test_geodata.txt * Update geodata_vegetation.py * Update geodata_vegetation.py * Update geodata_powerline.py * Update geodata_powerline.py * Update geodata_powerline.py * Update Geodata.ipynb * Update geodata_powerline.py Co-authored-by: David P. Chassin Co-authored-by: David P. Chassin Co-authored-by: Alyona Teyber --- gldcore/geodata/docs/Geodata.ipynb | 19 +++++++++++++++++-- gldcore/geodata/geodata_powerline.py | 21 ++++++++++++++++----- 2 files changed, 33 insertions(+), 7 deletions(-) diff --git a/gldcore/geodata/docs/Geodata.ipynb b/gldcore/geodata/docs/Geodata.ipynb index 94e0b7eca..4cc00ff0e 100644 --- a/gldcore/geodata/docs/Geodata.ipynb +++ b/gldcore/geodata/docs/Geodata.ipynb @@ -2026,7 +2026,7 @@ }, { "cell_type": "code", - "execution_count": 62, + "execution_count": 5, "id": "f6cc13cb", "metadata": { "scrolled": false @@ -2036,7 +2036,22 @@ "name": "stdout", "output_type": "stream", "text": [ - "ERROR [geodata/powerline]: 'height'\r\n" + "WARNING [geodata/powerline]: cannot run function CONTACT and 'height' is missing or invalid\n", + " linesag\n", + "position \n", + "0 18.0\n", + "50 12.2\n", + "100 9.4\n", + "150 9.7\n", + "200 13.0\n", + "... ...\n", + "8390 -16.6\n", + "8440 -8.9\n", + "8490 0.6\n", + "8540 12.0\n", + "8583 23.0\n", + "\n", + "[191 rows x 1 columns]\n" ] } ], diff --git a/gldcore/geodata/geodata_powerline.py b/gldcore/geodata/geodata_powerline.py index 1e381b2f7..06b66119a 100644 --- a/gldcore/geodata/geodata_powerline.py +++ b/gldcore/geodata/geodata_powerline.py @@ -567,11 +567,22 @@ def apply(data, options=default_options, config=default_config, warning=print): CONFIG = config result = pandas.DataFrame(data) - result["linesag"] = linesag(data) - result["linesway"] = linesway(data) - result["linegallop"] = linegallop(data) - result["contact"] = contact(result) - + try: + result["linesag"] = linesag(data) + except Exception as err: + WARNING(f"cannot run function LINESAG and {err} is missing or invalid") + try: + result["linesway"] = linesway(data) + except Exception as err: + WARNING(f"cannot run function LINEWAY and {err} is missing or invalid") + try: + result["linegallop"] = linegallop(data) + except Exception as err: + WARNING(f"cannot run function LINEGALLOP and {err} is missing or invalid") + try: + result["contact"] = contact(result) + except Exception as err: + WARNING(f"cannot run function CONTACT and {err} is missing or invalid") return result # perform validation tests