Wednesday, June 21, 2017

Module 5: Geoprocessing in ArcGIS

This week we covered model builder and how to export it as a script.  A model was created that took a soils file, clipped it to another layer and then erased the non-farmland parts of the soil layer.  The model was exported as a script and I made sure that it ran in PythonWin.

Wednesday, June 14, 2017

Peer Review 1

Peer Review 1
Article Citation
Integration of beach hydrodynamic and morphodynamic modelling in a GIS environment
Ana Maria Almeida Nobre Silva & Rui Pires Matos Taborda

This article discusses model tool created for ArcGIS called BeachMM.  BeachMM uses two existing tools, SWAN and XBeach, and brings their outputs into ArcGIS using Python to model beach morphodynamics.  SWAN predicts wave patterns given a variety of conditions.  XBeach models costal responses to hurricanes and storms over time.  BeachMM was made using Python within ArcGIS.  Data for SWAN and XBeach are inputted directly into ArcGIS then BeachMM sends the data to the two programs.  The results from the two programs are then changed into a format the ArcGIS can use.  There is also a show help button on the input screens.  The individual steps in the model along with the final result are saved for verification purposes.  BeachMM was tested using Norte beach on the Portuguese west coast.

Overall I found this article to be very interesting. The order in which the information is laid out is logical such as describing the two input tools before BeachMM. The flow charts of how the model works are very helpful in understanding the model worked with ArcGIS and the other two programs.  The picture of the beach describing what was going on was nice for people with less experience with beach modeling. Explaining how using these tools limit errors was useful.

Lab 3- Watershed Analysis

This week covered stream and watershed analysis.  I created a model stream layer as a raster and also converted the layer to a polyline.  I also made a watershed and basin layer using the stream layer.  For the map below, I created a pour point and then used the watershed tool to create a model watershed.  This is compared with a provided observed watershed.  Modeled and observed streams are also compared.

Module 4 - Python Debugging and Error Handling

This week we covered error handling in python.  There were three scripts to fix.  The first script had two errors to fix and shows the headings for an attribute table.

The second script has eight errors to correct.  I had the most trouble with this one.  The script prints the layers in a data frame.

In the third script, I kept the errors and used a try-except statement to catch the error.  This also printed the error.

Wednesday, June 7, 2017

Module 3: Python Fundamentals Part II

We continued with the basics of python programming this week.  We covered importing modules, correcting script errors, creating while loops and conditional statements and adding script comments. I corrected errors in a pre-existing script in a for statement in a dice game.  Then I created a list of 20 random numbers and then removed the number 5 from the list.  The results are below.

Lab 2 – Least-Cost Path and Corridor Analysis

This week we covered least-cost path and corridor analysis.  For the first part of the lab, I did a least-cost path.  First data was reclassified for cost.  Then cost distance tool was used to create a cost distance raster and backlink raster.  Multiple versions were run using different criteria.
In the second part a corridor analysis was done to create a corridor for black bears between two units of Coronado National Forest.
The data layers were reclassified.  Cost distance tool was used twice with both Coronado units being the source.  The results were used with the Corridor tool.   

Saturday, May 27, 2017

Module 2: Python Fundamentals Part 1

This week we covered some of the basic structures and syntax of Python.  I made a script that printed my last name and a number equal to three times the number of characters in
my last name.  I created the script using Python in PythonWin.  First, I made string of my complete name.  Then I split the string into a list.  I created a new variable and set it equal to the number of characters in my last name by using the len function.  I then multiplied that variable by 3.  The result is below.