source: anuga_work/production/australia_ph2/bamaga/export_results_max.py @ 6975

Last change on this file since 6975 was 6975, checked in by ole, 15 years ago

Removed accidental copying of the 'gulf' scenario onto 'bamaga.'
This reverted all changesets from 6895 to the current (6972).
The command used on bamaga was

svn merge -r HEAD:6894 .

File size: 4.0 KB
Line 
1"""
2Generates ascii grids of nominated areas -
3Input: sww file from run_perth.py
4       boundaries for grids from project.py
5Outputs: ascii grids of specified variables
6Stored in the 'outputs_dir' folder for respective .sww file
7
8Note:
9If producing a grid for the enitre extent cellsize should be greater than 30m
10If producing grids for inundation area resolution should be greater than mesh (ie ~22m)
11"""
12
13import project, os
14import sys
15from os.path import join
16from anuga.lib.maxasc.maxasc import MaxAsc
17from anuga.shallow_water.data_manager import convert_dem_from_ascii2netcdf, dem2pts
18from anuga.shallow_water.data_manager import sww2dem
19from os import sep
20
21
22directory = project.output_folder
23
24time_dir1 = '20090408_152655_run_final_0_31975_2000_Tb__mhingee'
25time_dir2 = '20090409_123239_run_final_0_51390_2000_Tb__mhingee'
26time_dir3 = '20090410_110658_run_final_0_63735_2000_Tb__mhingee'
27
28time_dirs = [time_dir1, time_dir2, time_dir3]
29
30cellsize = 250
31##cellsize = 5
32
33timestep = None    # None means no timestep!
34#timestep = 0
35
36######
37# Set the special areas of interest.  If none, do: area='All'
38######
39
40#area = ['Bunbury', 'Busselton']  # strings must match keys in var_equations below
41area = ['All']      # 'All' means no special areas - the whole thing
42
43######
44# Define allowed variable names and associated equations to generate values.
45# This would not normally change.
46######
47var_equations = {'stage':     'stage',
48                 'momentum':  '(xmomentum**2 + ymomentum**2)**0.5',
49                 'depth':     'stage-elevation',
50                 'speed':     '(xmomentum**2 + ymomentum**2)**0.5/(stage-elevation+1.e-6)',
51                 'elevation': 'elevation' }
52
53# one or more key strings from var_equations above
54var = ['stage']
55
56######
57# Start running the various conversions we require.
58######
59
60for which_var in var:
61    if which_var not in var_equations:
62        print 'Unrecognized variable name: %s' % which_var
63        break
64
65    for which_area in area:
66        if which_area == 'All':
67            easting_min = None
68            easting_max = None
69            northing_min = None
70            northing_max = None
71        else:
72            try:
73                easting_min = eval('project.xmin%s' % which_area)
74                easting_max = eval('project.xmax%s' % which_area)
75                northing_min = eval('project.ymin%s' % which_area)
76                northing_max = eval('project.ymax%s' % which_area)
77            except AttributeError:
78                print 'Unrecognized area name: %s' % which_area
79                break
80
81        for time_dir in time_dirs:
82
83            name1 = join(directory, time_dir, project.scenario_name)
84            name2 = join(directory, time_dir, project.scenario_name)+'_time_37920_0'
85
86            names = [name1, name2]
87
88            asc_name = []
89
90            for name in names:
91               
92                outname = name + '_' + which_area + '_' + which_var
93                quantityname = var_equations[which_var]
94
95                print 'start sww2dem: time_dir=%s' % time_dir
96               
97                sww2dem(name, basename_out = outname,
98                            quantity = quantityname,
99                            timestep = timestep,
100                            cellsize = cellsize,     
101                            easting_min = easting_min,
102                            easting_max = easting_max,
103                            northing_min = northing_min,
104                            northing_max = northing_max,       
105                            reduction = max, 
106                            verbose = True,
107                            format = 'asc')
108
109                asc_name.append(outname + '.asc')
110   
111            maxasc_outname = join(directory, time_dir, project.scenario_name)+'_'+which_area+'_'+which_var+'_max.asc'
112
113            print 'max asc outname ', maxasc_outname
114            print 'asc_name ', str(asc_name)
115           
116            MaxAsc(maxasc_outname, asc_name)
117             
Note: See TracBrowser for help on using the repository browser.