source: anuga_work/production/australia_ph2/ceduna/export_results_max.py @ 6402

Last change on this file since 6402 was 6402, checked in by myall, 16 years ago

models seem to be working using new scripts. problem with old scripts left over in Ceduna???

File size: 4.1 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 = '20090224_102606_run_trial_0_58362_kvanputt'
25##time_dir2 = ''
26##time_dir3 = ''
27##time_dir4 = ''
28##time_dir5 = ''
29##time_dir6 = ''
30##
31time_dirs = [time_dir1] #time_dir2]# , time_dir4, time_dir5, time_dir6]
32 
33
34cellsize = 250
35##cellsize = 5
36
37#timestep = None    # None means no timestep!
38timestep = 0
39
40######
41# Set the special areas of interest.  If none, do: area='All'
42######
43
44#area = ['Bunbury', 'Busselton']  # strings must match keys in var_equations below
45area = ['All']      # 'All' means no special areas - the whole thing
46
47######
48# Define allowed variable names and associated equations to generate values.
49# This would not normally change.
50######
51var_equations = {'stage':     'stage',
52                 'momentum':  '(xmomentum**2 + ymomentum**2)**0.5',
53                 'depth':     'stage-elevation',
54                 'speed':     '(xmomentum**2 + ymomentum**2)**0.5/(stage-elevation+1.e-6)',
55                 'elevation': 'elevation' }
56
57# one or more key strings from var_equations above
58var = ['elevation']
59
60######
61# Start running the various conversions we require.
62######
63
64for which_var in var:
65    if which_var not in var_equations:
66        print 'Unrecognized variable name: %s' % which_var
67        break
68
69    for which_area in area:
70        if which_area == 'All':
71            easting_min = None
72            easting_max = None
73            northing_min = None
74            northing_max = None
75        else:
76            try:
77                easting_min = eval('project.xmin%s' % which_area)
78                easting_max = eval('project.xmax%s' % which_area)
79                northing_min = eval('project.ymin%s' % which_area)
80                northing_max = eval('project.ymax%s' % which_area)
81            except AttributeError:
82                print 'Unrecognized area name: %s' % which_area
83                break
84
85        for time_dir in time_dirs:
86
87            name1 = join(directory, time_dir, project.scenario_name)
88            #name2 = join(directory, time_dir, project.scenario_name)+'_time_39600_0'
89            #name3 = join(directory, time_dir, project.scenario_name)+'_time_79200_0'
90
91            names = [name1] #, name2]#, name3]
92     
93           # asc_name = []   
94               
95            for name in names:
96                         
97                outname = name + '_' + which_area + '_' + which_var
98                quantityname = var_equations[which_var]
99
100                print 'start sww2dem: time_dir=%s' % time_dir
101               
102                sww2dem(name, basename_out = outname,
103                            quantity = quantityname,
104                            timestep = timestep,
105                            cellsize = cellsize,     
106                            easting_min = easting_min,
107                            easting_max = easting_max,
108                            northing_min = northing_min,
109                            northing_max = northing_max,       
110                            reduction = max, 
111                            verbose = True,
112                            format = 'asc')
113
114##                asc_name.append(outname + '.asc')
115##   
116##            maxasc_outname = join(directory, time_dir, project.scenario_name)+'_'+which_area+'_'+which_var+'_max.asc'
117##
118##            print 'max asc outname ', maxasc_outname
119##            print 'asc_name ', str(asc_name)
120##           
121##            MaxAsc(maxasc_outname, asc_name)
Note: See TracBrowser for help on using the repository browser.