source: anuga_work/production/broome_2006/project.py @ 3788

Last change on this file since 3788 was 3788, checked in by sexton, 17 years ago

path fixups

File size: 4.3 KB
Line 
1# -*- coding: cp1252 -*-
2"""Common filenames and locations for topographic data, meshes and outputs.
3"""
4
5from os import sep, environ, getenv, getcwd
6from os.path import expanduser
7import sys
8from time import localtime, strftime, gmtime
9from anuga.utilities.polygon import read_polygon, plot_polygons, polygon_area, is_inside_polygon
10from anuga.coordinate_transforms.redfearn import degminsec2decimal_degrees, convert_points_from_latlon_to_utm
11
12if sys.platform == 'win32':
13    home = getenv('INUNDATIONHOME')
14    user = getenv('USERPROFILE')
15
16else:   
17    home = getenv('INUNDATIONHOME', sep+'d'+sep+'xrd'+sep+'gem'+sep+'2'+sep+'ramp'+sep+'risk_assessment_methods_project'+sep+'inundation')     
18    user = getenv('LOGNAME')
19    print 'USER:', user
20
21# INUNDATIONHOME is the inundation directory, not the data directory.
22home += sep +'data'
23
24#Making assumptions about the location of scenario data
25state = 'western_australia'
26scenario_dir_name = 'broome_tsunami_scenario_2006'
27
28# onshore data provided by WA DLI
29onshore_name = '' # original
30
31# offshore data provided by WA DPI
32offshore_name_dpi1 = ''
33
34# AHO data
35offshore_name1 = 'xy100003760'
36
37# developed by NM&I
38coast_name = 'coastline_points'
39
40boundary_basename = 'SU-AU' # Mw ?
41
42#swollen/ all data output
43basename = 'source'
44codename = 'project.py'
45
46#Derive subdirectories and filenames
47local_time = strftime('%Y%m%d_%H%M%S',gmtime()) 
48meshdir = home+sep+state+sep+scenario_dir_name+sep+'anuga'+sep+'meshes'+sep
49datadir = home+sep+state+sep+scenario_dir_name+sep+'anuga'+sep+'topographies'+sep
50gaugedir = home+sep+state+sep+scenario_dir_name+sep+'anuga'+sep+'gauges'+sep
51polygondir = home+sep+state+sep+scenario_dir_name+sep+'anuga'+sep+'polygons'+sep
52boundarydir = home+sep+sep+state+sep+scenario_dir_name+sep+'anuga'+sep+'boundaries'+sep
53outputdir = home+sep+state+sep+scenario_dir_name+sep+'anuga'+sep+'outputs'+sep
54outputtimedir = outputdir + local_time + sep
55polygondir = home+sep+state+sep+scenario_dir_name+sep+'anuga'+sep+'polygons'+sep
56
57gauge_filename = gaugedir + 'broome_gauges.csv'
58
59codedir = getcwd()+sep                           
60codedirname = codedir + 'project.py'
61meshname = outputtimedir + 'mesh_' + basename
62
63# Necessary if using point datasets, rather than grid
64onshore_dem_name = datadir + onshore_name
65offshore_dem_name_local1 = datadir + offshore_name_dpi1
66offshore_dem_name_aho1 = datadir + offshore_name1
67
68coast_dem_name = datadir + coast_name
69
70combined_dem_name   = datadir + 'broome_combined_elevation'
71
72###############################
73# Domain definitions
74###############################
75
76# bounding box for clipping MOST/URS output (much bigger than study area)
77south = degminsec2decimal_degrees(-19,0,0)
78north = degminsec2decimal_degrees(-17,15,0)
79west  = degminsec2decimal_degrees(120,0,0)
80east  = degminsec2decimal_degrees(122,30,0) 
81
82d0 = [south, west]
83d1 = [south, east]
84d2 = [north, east]
85d3 = [north, west]
86poly_bc, zone = convert_points_from_latlon_to_utm([d0, d1, d2, d3])
87refzone = zone
88
89# bounding polygon for study area
90polyAll = read_polygon(polygondir+'extent.csv')
91
92# plot bounding polygon and make sure BC info surrounds it
93plot_polygons([polyAll, poly_bc],'boundingpoly',verbose=False)
94print 'Area of bounding polygon', polygon_area(polyAll)/1000000.0
95
96###################################################################
97# Clipping regions for export to asc and regions for clipping data
98###################################################################
99
100# clipping 20m onshore data set
101#eastingmin = 520000
102#eastingmax = 536000
103#northingmin = 5245000
104#northingmax = 5260000
105
106###############################
107# Interior region definitions
108###############################
109
110# broome digitized polygons
111poly_broome1 = read_polygon(polygondir+'Broome_Local_Polygon.csv')
112poly_broome2 = read_polygon(polygondir+'Broome_Close2.csv')
113poly_broome3 = read_polygon(polygondir+'Broome_Coast.csv')
114poly_broome4 = read_polygon(polygondir+'Cable_Beach.csv')
115
116plot_polygons([polyAll,poly_broome1,poly_broome2,poly_broome3,poly_broome4],'boundingpoly2',verbose=False)
117print 'Area of local polygon', polygon_area(poly_broome1)/1000000.0
118print 'Area of close polygon', polygon_area(poly_broome2)/1000000.0
119print 'Area of coastal polygon', polygon_area(poly_broome3)/1000000.0
120print 'Area of cable beach polygon', polygon_area(poly_broome4)/1000000.0
121
122for i in poly_broome3:
123    v = is_inside_polygon(i,poly_broome1, verbose=False)
124    if v == False: print v
Note: See TracBrowser for help on using the repository browser.