Nonpoint Sources in Tillamook Bay

Center for Research in Water Resources

University of Texas at Austin

Prepared by: Patrice Melancon
pmelancon@mail.utexas.edu
1 July 1998
 

Table of Contents

    1. Getting Acquainted with the Basin
    2. Annual Precipitation in the Basin
    3. Create a Runoff Grid
    4. Linking Land Use to Expected Mean Concentration (EMC) of Pollutants
    5. Estimating Annual Loadings
    6. Cleaning Up

Goals of the Exercise

This exercise is based on an exercise written for the Corpus Christi Bay National Estuary Project by Ann Quenzer.  This exercise has taken that framework and utilized data for Tillamook Bay to calculate annual loadings of fecal coliforms and suspended sediment.

The purpose of this exercise is to show how Arcview 3.0a with Spatial Analyst (v 1.1)  and the Hydrology Extensions can be used to provide estimates of nonpoint source pollutant loads to a receiving body of water. For this exercise, the receiving water is Tillamook Bay on the northern coast of Oregon.  The Miami, Kilchis, Wilson, Trask, and Tillamook are the five major rivers that drain into Tillamook Bay.

You will use a coverage of land uses in Tillamook Bay and associate Expected Mean Concentration (EMC) values of various pollutant constituents with those land uses. Then, for a selected pollutant, you will create an EMC grid and multiply it by a grid of average annual total flow in the basin. The result will be the annual loading of the constituent to each grid cell in the basin, i.e.

Load = Flow * Concentration, or
L (Mass/Time) = Q (Volume/Time) * C (Mass/Volume)

Finally, you'll perform a flow accumulation on the cell-based loads to determine average annual loads to the rivers and the bay.

Computer and Data Requirements

This exercise makes use of ArcView 3.0 using the Spatial Analysis and the Hydrology Extensions.

All of the files for this exercise are located on the zip disk in the tbayex/gisfiles folder.  They include:

Baymodel (coverage of bay segments; had been edited for model purposes)

Bdemfill (grid of the burned in DEM that has been filled with the Hydrology/Fill function)

Tbaylu (coverage of land use in the Tillamook Bay area)

Lriver (coverage of the 5 major rivers)

Avgprecip (grid of average precipitation - see text for explanation)

tillbayex.apr (the project file for the exercise)

tbemc.dbf (database file with Expected Mean Concentration values associated with land uses)

landuse.avl (legend editor color scheme for land use data)

  forestag.shp (point shapefile of the forest-agriculture interface along the rivers)
epapoint.shp (point shapefile coverage of regularly sampled sites along the river near the bay; EPA STORET sites)  

Assignment Procedure

The first thing that you need to do is to create a subdirectory in the c:\temp folder called tbayex.  This is where all of the grids and coverages created in this exercise will be stored.  This exercise may be run from the zip drive, however if you do not have an SCSI port, it will probably run rather slowly.  You may opt to copy the entire gisfiles folder onto your hard drive and run it from there in the interest of speed.  Then, start ArcView, select File/Open Project and go to the gisfiles folder and open the project file called tillbayex.apr.

1. Getting Acquainted with the Basin DEM

Go to the project window and select Project/Properties. In the box called Work Directory, set the path to c:\temp\tbayex\.  This is very important so that the grids/coverages that you will be creating will be saved in the right place.  The scripts that you will run later have a path to this folder for saving work.

Click on File/Extensions and check that the Spatial Analyst and Hydrologic Modeling are checked on.

Go to the Project Window and Open a new view.  Add the Bdemfill grid to the view by clicking on , change the Data Source Type to Grid Data Source, highlight bdemfill, and click OK. Once the theme has been added, check the   box next to the theme to view the DEM of the area. The Bdemfill grid is a specially modified DEM of the region that has the land surface cells not on the stream raised by 2000m from their original elevation so that the cells on the stream will be clearly defined and coincident with the mapped streams of the Tillamook Bay basin.  This has the effect of "burning in" the stream paths into the DEM.  In this case, the stream paths have included the bay segments in the burn in process.  Refer to the project report on Modeling the Hydrology of Tillamook Bay for more detail.

At any time in the exercise you may hide the legend of any theme by making the theme active and going to Theme/Hide/Show Legend.
 

2. Annual Precipitation in the Basin

The USDA Natural Resources Conservation Service and Oregon State University are publishing annual and monthly precipitation grids of the United States, developed using an interpolation process called PRISM, and verified by consultation with State climatologists. The grid is an annual long term average of precipitation and is based on data from 1961-1990.  The original data is presented in mm/yr.  The data presented has been converted to in/yr.  In this exercise, you will use the portion of this annual precipitation grid for the Tillamook Bay basin.

Using the  button, add the grid avgprecip (remember to change to grid data source).  When the themes show up in the legend of the view, double click on the avgprecip symbol to bring up the Legend Editor window. In the Legend Editor, change the color scheme to get a ramped effect. Click on the arrow next to the Color Ramps box, scroll down, and select the Precipitation color scheme. When you are finished, select in the Legend Editor window and then close the Legend Editor. Finally, select  for the avgprecip theme in the View Legend. You should be able to easily see the distribution of average precipitation in the Tillamook Bay Basin.

This average precipitation grid represents at any grid cell the average value of precipitation of all the grid cells upstream of it.  Again, see the Modeling the Hydrology of Tillamook Bay report for more detail.  It is derived from a weighted flow accumulation of the precipin grid (long term average annual grid obtained from the PRISM website and converted to in/yr) and the flow accumulation grid based on the DEM.
 

3. Create a Runoff Grid

A mathematical relationship has been determined between average precipitation and total flow in the basin.  This relationship is based on the avgprecip grid, daily rainfall data at the Tillamook 1W raingage (near the radio station), and daily flow data from the Wilson River USGS flow gage.  In this exercise, we will focus on total flow rather than  baseflow and surface runoff, although the Avenue script that you will run calculates a separate grid for baseflow, surface runoff, and total flow.

The rainfall/discharge relationships are:

Q(r) = 0.3763(1.0738*P) – 15.478 For Surface Runoff

Q(b) = 0.5188(1.0738*P) + 1.857 For Baseflow

Q = Q(r) + Q(b)

Where Q = total runoff (in/yr) and P = average precipitation (in/yr)

For details on how these equations were derived, see the report on Modeling the Hydrology of Tillamook mentioned earlier.  An Avenue script has been written to calculate the runoff for the Tillamook Bay Basin. The script inserts the avgprecip grid into the rainfall/runoff equations to calculate three runoff grids, one for surface runoff, one for baseflow, and one for total runoff.

You are now going to calculate these grids. Before you do this, go to Analysis/Properties and set the Analysis Extent to "Same as bdemfill" and Analysis Cell Size to "Same As bdemfill." Go to the drop down menu called NPS Analysis and select Runoff Grid. You will be asked to select the theme within the view which will be used as the precipitation input (avgprecip).

The grids are calculated, saved in the c:\temp\tbayex folder and added to the view as "baseflow," "runoff," and "totalflow."  All three grids will be displayed in the view.  Since for this exercise we are going to focus only on the total flow, you can delete the baseflow and runoff grids by making them both active and clicking on Edit/Delete Themes.  Feel free the change the color scheme using the Legend Editor.  If you notice, there are some negative values.  The few cells that have negative values are on the northern and eastern edges of the grid.  These negative values most likely result because they are outside of the basin upon which the relationship equations are based (notice the negative value in the 'y = mx + b' runoff equation).  The rainfall at these locations is lower than the lower rainfall limit for the data within the basin.  Even though these are outside of the study area, we will take a minute to edit these values to a value of zero.  Make the totalflow grid active and go to Analysis/Properties, selecting "same as totalflow" for the both the extent and cell size.  Then go to Analysis Map/Query.  In the layers box, double click on totalflow, click on the > symbol, and enter the number zero.  Then click the Evaluate button.  When it is done calculating, close the query box.  The query resulting grid has a value of 1 where the flow values are greater than 0 and a value of 0 where the flow values are less than zero.  Now, go to Analysis Map/Calculator.  In the calculator box, double click on totalflow, then click on the * (multiply symbol), and then double click on the Map Query 1.  (There may be two map query 1 entries.  One of them is visibly closed in brackets; choose this one.)  Then click the Evaluate button.  When it is done calculating, close the calculator box.  You will have a grid called Map Calculation 1, which is a grid of total flow with any negative values set to zero.  To save this grid permanently (it is a temporary grid right now), make Map Calculation 1 the active theme, go the Theme/Save Dataset, and save it in the c:\temp\tbayex folder as totalflow1.  Using the  button, add in the totalflow1 grid, and delete the map calculation grid.  Here is what the total flow grid should look like:

 

You can also delete the totalflow grid since we will be using the totalflow1 grid for the rest of the exercise.

4. Linking Land Use to Expected Mean Concentration (EMC) of Pollutants

Now you are going to associate Expected Mean Concentration (EMC) values of various pollutant constituents to the land use types.  The agricultural land fecal coliform concentration has been based on information found in a 1983 ASAE publication on Bacterial Pollution (Crane, et al, 1983).  The other land use bacteria concentrations were based on that number.  The sediment concentrations are based on data used for the Corpus Christi NEP Project.  Once better estimates are determined for the Tillamook area, the values can be edited and the exercise re-run.  The landuse codes and the associated concentrations have been compiled into a .dbf file called tbemc.dbf If you would like to, you can view this table by bringing it up in excel. You'll need to join these EMC values to the landuse polygon attribute table in order to associate them with land use

For this exercise, I have not attempted to use the lowland polgon coverage with very detailed distinctions of landuses.  This will be incorporated at a later date.  I obtained a land use land cover file from the EPA's Geographic Information Retreival and Analysis System (GIRAS).  The file 'lva45122.e00' was obtained from the EPA's ftp server at ftp.epa.gov: /pub/EPAGIRAS/wgiras.  This is the quad map that contains Tillamook county.  This file, once imported had to be projected from an Albers projection to the Oregon Lambert projection.  Then the grid was clipped to match the extent of the DEM.  This grid is called lulcarea.  This grid was converted to a polygon coverage in ArcInfo using the command:

        Arc:  gridpoly lulcarea tbaylu

The lulcarea grid and the tbaylu polygon coverage use the Anderson Land Use Code classification system, in which major land use types are broken out into 9 categories.  7 of these 9 categories show up in the Tillamook Bay land use coverage.

Files for the state of Oregon based on 1:250,000 map sheet names can also be downloaded from the USGS Land Use/Land Cover site. The Vancouver dataset is the one you want.  These files are in UTM coordinates and will have to be converted to the Oregon Lambert Projection to be used with the project data files.

Add in the tbaylu coverage by using the  button.  Set the Data Source type to 'Features Data Source,' go the the tbayex/gisfiles folder, and select tbaylu.  You are going to use a pre-developed color scheme for the landuse data. Double click on the tbaylu symbol to bring up the Legend Editor, click on load, and select landuse.avl. When it asks for Field, select "landuses-id."  Click on the   button and then close the Legend Editor.  Now select  for the tbaylu theme in your view and note where all the different land use categories in the basin are.  Rename this tbaylu theme to EMC by highlighting it and clicking on Theme/Properties and changing the name to EMC.  Open the table Attributes of EMC using the table button .  Notice there are no concentration values here yet.

In the ArcView project window, highlight the Table icon, click on Add, and add in the tbemc.dbf file. This will automatically bring up the tbemc.dbf table.

If it is not opened, open the Attributes of EMC table. You may want to rearrange your windows so that both the attribute tables are visible.  Now, click on the tbemc.dbf table and click on the landuses-i field (it will look indented). Then click on the Attributes of EMC and click on the landuses-id field (it will look indented). Remember that the order that you do this is important. Now, choose Table/Join. If you look at the Attributes of EMC table now, you will see that it now contains the constituent concentration information.

Then, double Click on the EMC theme symbol to bring up the Legend Editor. In the Legend Editor, select the Legend Type to be Graduated Color.  Set the Classification Field to Bacti (you can do the same thing for Sediment).  This will cause the symbol color to ramp from a light color for 0 mg/L to a darker color for the Max EMC. Choose whatever color ramp you like and your changes from the Legend Editor window. Select  for the EMC theme in your the view to get a look at the Bacti EMC map for the Tillamook Bay Basin.
 
We will now convert the land use theme to an equivalent grid showing the Bacti concentrations in F.C./100ml over the landscape. Before you do this, go to Analysis/Properties and set the Analysis Extent and Analysis Cell Size to "Same As Bdemfill."  Go to the NPS Analysis pull down menu and select "Bacti Grid."  Pick EMC as the land use theme and Bacti as the concentration field. The new grid (called "bactigrid") will look very similar to the EMC coverage just shown, however it will be a grid rather than a coverage.

Your bactigrid should look something like this:

Repeat this process for the Sediment concentrations.  The sediment concentrations will be in mg/L over the landscape.  When you go to the NPS Analysis menu, select "Sediment Grid," and use EMC as the land use theme with Sediment as the concentration field.  The new grid will be called "sedigrid."

5.Estimating Annual Loadings

LAND

We will now convert the two grids that we just created to grids showing the loadings to the landscape.  The bacteria grid will be in units of million F.C./yr, and the sediment grid will be in units of Kg/yr.

The total loading grid is found by multiplying the concentration grid by the runoff grid.  An Avenue script has been written to calculate the annual nonpoint source land surface loading grids.  This grid could be used to add in point sources later on. However, for this exercise we will only deal with the land surface loadings.  Again, because we are dealing with two different constituents, we will run the script twice with two different conversion factors to convert the concentration units * flow units to load units.

In effect, for each cell, the load is computed as
 

Note that the cells are 100 ft by 100 ft in size.  The conversions are as follows:
        We'll do the sediment loading first.  Go to Analysis/Properties and set the Analysis Extent to "Same As totalflow1" and Analysis Cell Size to "Same As totalflow1." Go to the NPS Analysis pull down menu and select "Landload Grid." Pick sedigrid as the concentration grid and totalflow1 as the runoff grid. The resultant grid is called "loadgrid" and is saved in the c:\temp\tbayex\ folder.

Your sediment loadgrid should look something like this:

For the bacti loading, go the the NPS Analysis pull down menu and select "BactiLoad Grid."  Pick bactigrid as the concentration and totalflow1 as the runoff grid.  The resultant grid is called bactiload.

WATER

This part of the procedure includes a flow accumulation. In order to perform this, the river system needs to be connected to the bay system.  You will use the script connect.ave to do this.  This script drops the elevation of the bays below the elevation of the adjacent land surface. The centroids of the bays are then dropped further so the flow accumulates at the centroid.  The shellmgt coverage had to be cleaned up some to avoid problems with the connect script.  The coverage was converted to a grid, and cleanup was conducted using ArcTools/Grid Tools.  The clean up involved deleting the 'fingers' at the south end that connect to the rivers, editing the eastern end of the flowerpot segment so that it extends the width of the bay (to avoid model short circuits), and deleting a few 'fingers' at the northeast end.  The last cleanup involved extending the northern edge of the bay so that the centroid of the Main Bay - Prohibited segment fell within the bay polygon.  After the cleanup, the grid was converted back into a coverage.  The cleanup coverage of the bay segments is called baymodel.

Add the baymodel theme as an arc and a polygon (remember, click once on the folder next to baymodel and use the shift key to select both the arc and polygon option). Make the baymodel arc theme, the baymodel polygon theme, and the bdemfill themes active by highlighting them (use the shift key to select more than one).

Go to Analysis/Properties and check that the Analysis Extent and Analysis Cell Size are set to "Same As bdemfill."  Go to the NPS Analysis pull down menu and select "Connect Bay&River."  Once the program is running it will ask you if you would like to save the temporary data sets. I recommend you don't due to the large amount of space that they will take up. The temporary files are not needed. A new grid is calculated and is called gridconnect.  Don't worry that the range of values is huge and that the grid is all one color (I wasn't able to figure out the legend color); just trust the process.

Next, a flow direction must be done on gridconnect. Make the gridconnect theme active. Go to Analysis/Properties and check that the Analysis Extent and Analysis Cell Size are set to "Same As bdemfill." Go to the NPS Analysis pull down menu and select "Flow Direction."  This flow direction grid is a temporary grid, so if you want to keep it, use Theme/Save Dataset and give it a name (maybe fdir).

Rivers

We will now accumulate the cell-based values for the annual loads to determine downstream values of average annual loads.

The script wfacgrid.ave executes the command that is known as a WEIGHTED flow accumulation.  This is an extension of the regular flow accumulation command that uses the flow direction grid to count the number of cells upstream of each particular cell in the grid.  It then stores that particular count as the value for that cell. For the WEIGHTED flow accumulation command, a weight grid (in this case, loadgrid or bactiload) is used and the SUM of the values of that grid in the cells upstream of a particular cell is what is stored as the value of that cell.  We will be using the same script for both the bacti and sediment calculations.  So, you will have to edit the wfacgrid.ave script to change the filename for the computed grid.  Don't panic!  I'll give you directions on how to do this.  Let's start with the bacteria load first.

Go to the Project Menu and click on the Scripts icon.  You will see a listing of the scripts.  Double click on the wfacgrid.ave script and it will open.  Size it so that you can see it well enough.  Scroll down almost to the end.  There is a line that reads:
 

Make sure that for this bacteria run, name is bactiwfac.  If you have to edit it, do so.  On the toolbar at the top, you will see a   checkmark next to a button with a running man on it.  Hit this checkmark to compile the script and then close it.

Go to Analysis/Properties and set the Analysis Extent to "Same As bdemfill" and Analysis Cell Size to "Same As bdemfill." Go to the NPS Analysis pull down menu and select "Weighted FlowAccumulation." Pick the appropriate themes when prompted (the flow direction and bactiload for this run).  This function will take a while, so be patient.  The resultant grid called bactiwfac will be added to the view.

You will repeat this procedure for the sediment load.  Open the script and change name to sediwfac, the hit the checkmark to compile the script and close the script.  Then go to NPS Analysis and select "Weighted FlowAccumulation."

With either the bactiwfac or sediwfac grids active, use the inquiry button  to determine the average annual loads in the basin.  Remember that the sediment units are kg/yr and units for bacteria are million F.C./yr.  Add in the lriver coverage and investigate values along the rivers.  I have included two point shapefiles, forestag.shp and epapoint.shp, that you can add in now as feature data sources.  The forestag.shp represents the forest-agriculture interface, and the epapoint.shp file contains five of the EPA/DEQ regularly sampled sites.  You can use the inquiry button at these sites to get the accumulated values.  Note, that if a point falls a bit outside the river (there is one that I remember that does), select the closest point that is actually in/on the lriver coverage.  If you get a value of 0, try again; you probably didn't hit on the modeled stream.  Also, note that the Tillamook River doesn't really have a forest/ag interface.  The values that I got on the queries are:
 
 
 

6. Cleaning Up

If you want to, I would suggest you keep the .apr file because it has some useful scripts that you may want to use later.  If you want to save the exercise as it is with all of the view, grids, etc., I would suggest that you name it something else so that you have the original exercise intact.

Other than that, you can pretty much delete all of the files/folders that are in your working directory.

Ok, you're done! Hope you enjoyed it!



References:

[1]  Crane, S.R., Moore, J.A., Grismer, M.E., and Miner, J.R.  1983.  "Bacterial Pollution from Agricultural Sources:  A Review."  Transactions of the ASAE.  pp. 858-872.


Go to Patrice's Homepage.