/***********************************

/* Program: cn_map.aml

/*

/* Function: Combine a soils and a vegetation map to create an

/* average curve number map for each field in a

/* given subwatershed. The curve number values

/* are assigned according to a lookup-table based

/* on a table in "Handbook of Hydrology" by D.R.

/* Maidment (1993) for semi-arid rangelands.

/*

/* History: Created 1999 by Jill Heller, the Advanced Resource Technology

/* Group, the University of Arizona, Tucson, AZ 85721.

/* ph: 520-621-3045. jheller@nexus.srnr.arizona.edu

 

/***********************************

/* Routines called: None.

/*

/* Requirements: Subwatershed, soils, and vegetation coverage.

/* Lookup table of curve number values.

/*

/* Results: Grid of the average curve number (cnavg_%sws%) for

/* each field in the subwatershed.

/*

/* Usage: &run cn_map

/*

/* Arguments: None

/******************************************************************

 

&if %:PROGRAM% ne ARC &then &do

&if %:PROGRAM% eq GRID &then quit

&end

 

 

&do sws &list <subws>

 

/*=======Soil map===========

 

clip statsgo_clip %sws% %sws%_soils

additem %sws%_soils.pat %sws%_soils.pat code 2 2 i

additem %sws%_soils.pat %sws%_soils.pat hydgrp 1 1 c

tables

select %sws%_soils.pat

reselect MUID = 'AZ060'

calc code = 3

move 'C-B' to hydgrp

select %sws%_soils.pat

reselect MUID = 'AZ066'

calc code = 4

move 'D' to hydgrp

select %sws%_soils.pat

reselect MUID = 'AZ272'

calc code = 4

move 'D' to hydgrp

select %sws%_soils.pat

reselect MUID = 'AZ277'

calc code = 2

move 'B' to hydgrp

q

idedit %sws%_soils poly

 

/*======Vegetation map=======

 

clip azveg_clp %sws% %sws%_veg

additem %sws%_veg.pat %sws%_veg.pat code 2 2 i

tables

select %sws%_veg.pat

reselect VDESC = 'Semidesert Mixed Grass-Mesquite'

calc code = 1

select %sws%_veg.pat

reselect VDESC = 'Encinal Mixed Oak-Mesquite'

calc code = 2

select %sws%_veg.pat

reselect VDESC = 'Semidesert Mixed Grass-Mixed Scrub'

calc code = 3

select %sws%_veg.pat

reselect VDESC = 'Semidesert Mixed Grass-Yucca-Agave'

calc code = 4

select %sws%_veg.pat

reselect VDESC = 'Encinal Mixed Oak'

calc code = 5

q

 

 

 

/*======Curve Number map ============

 

/* Land cover type Curve Number By HSG

/*-----------------------------------------------------------------------------

/*Code HSG-A HSG-B HSG-C HSG-D

/*-----------------------------------------------------------------------------

/* 1 Semidesert Mixed Grass-Mesquite 55 72 81 86

/* 2 Encinal Mixed Oak-Mesquite 55 72 81 86

/* 3 Semidesert Mixed Grass-Mixed Scrub 55 72 81 86

/* 4 Semidesert Mixed Grass-Yucca-Agave 55 72 81 86

/* 5 Encinal Mixed Oak N/A 48 57 63

 

/* Values are based on 'Fair' Hydrologic condition; Maidment Table 5.5.1 p. 5.28

/* Maybe should use 'Good' Hydrologic condition which would provide the minimum

/* curve number values.

 

 

 

polygrid %sws%_soils soil_%sws% code

30

y

/* A cell size of 30 was selected in order to have the same resolution as

/* all other grids used in this project.

 

polygrid %sws%_veg veg_%sws% code

30

y

/* A cell size of 30 was selected for the veg. map as well.

 

&do sws &list <subws>

 

grid

/* create a CN map according to the CN lookup table previously created.

 

cn_%sws% = con (soil_%sws% eq 1 and veg_%sws% eq 1, 55, ~

con (soil_%sws% eq 1 and veg_%sws% eq 2, 55, ~

con (soil_%sws% eq 1 and veg_%sws% eq 3, 55, ~

con (soil_%sws% eq 1 and veg_%sws% eq 4, 55, ~

con (soil_%sws% eq 2 and veg_%sws% eq 1, 72, ~

con (soil_%sws% eq 2 and veg_%sws% eq 2, 72, ~

con (soil_%sws% eq 2 and veg_%sws% eq 3, 72, ~

con (soil_%sws% eq 2 and veg_%sws% eq 4, 72, ~

con (soil_%sws% eq 2 and veg_%sws% eq 5, 48, ~

con (soil_%sws% eq 3 and veg_%sws% eq 1, 81, ~

con (soil_%sws% eq 3 and veg_%sws% eq 2, 81, ~

con (soil_%sws% eq 3 and veg_%sws% eq 3, 81, ~

con (soil_%sws% eq 3 and veg_%sws% eq 4, 81, ~

con (soil_%sws% eq 3 and veg_%sws% eq 5, 57, ~

con (soil_%sws% eq 4 and veg_%sws% eq 1, 86, ~

con (soil_%sws% eq 4 and veg_%sws% eq 2, 86, ~

con (soil_%sws% eq 4 and veg_%sws% eq 3, 86, ~

con (soil_%sws% eq 4 and veg_%sws% eq 4, 86, ~

con (soil_%sws% eq 4 and veg_%sws% eq 5, 63, 0)))))))))))))))))))

 

/* Now find average CN for each field (upland and lateral)

cnavg_%sws% = zonalmean (%sws%_grd, cn_%sws%)

 

list cnavg_%sws%

/* cnavg_%sws% is the map containing the average curve number value for

/* each field element in the subwatershed.

 

&end

&return