source: anuga_work/production/new_south_wales/batemans_bay/plot_area_energy2.py @ 7577

Last change on this file since 7577 was 7577, checked in by jgriffin, 14 years ago
File size: 4.6 KB
Line 
1"""
2This file plots offshore wave energy against inundation area
3Created: 3 December 2009
4Cretor: Jonathan Griffin
5"""
6import matplotlib
7matplotlib.use('Agg')
8import pylab
9from pylab import *
10import csv
11from os.path import join
12
13boundary_path = "/nas/gemd/georisk_models/inundation/data/new_south_wales/batemans_bay_tsunami_scenario_2009/anuga/boundaries/"
14in_file_name = 'area_comparisons_anuga_sum.csv'
15energy_file_name = 'wave_energy_summary.csv'
16energy_figure_name = 'area_wave_energy_sum_areas2.png'
17wave_height_figure_name = 'area_wave_wave_height_sum_areas2.png'
18madsen_figure_name = 'area_wave_madsen_sum_areas2.png'
19energy_run_up_figure_name = 'area_wave_energy_run_up_sum_areas2.png'
20
21in_file = join(boundary_path, in_file_name)
22
23energy_file = join(boundary_path, energy_file_name)
24energy_figure_path = join(boundary_path, 'figures',energy_figure_name)
25wave_height_figure_path = join(boundary_path, 'figures',wave_height_figure_name)
26madsen_figure_path = join(boundary_path, 'figures',madsen_figure_name)
27energy_run_up_figure_path = join(boundary_path, 'figures',energy_run_up_figure_name)
28
29csv_in = csv.reader(open(in_file,'r'))
30csv_energy = csv.reader(open(energy_file,'r'))
31##header = csv_in.next()
32header_energy = csv_energy.next()
33
34event_dict = {'Event1_MSL':58346,
35              'Event2_MSL':51204,
36              'Event3_MSL':58284,
37              'Puysegur_200yr':58129,
38              'Puysegur_500yr':58115,
39              'Puysegur_1000yr':58226,
40              'Puysegur_5000yr':58286,
41              'Puysegur_15000yr':58272,
42              'New_Hebrides_200yr':51077,
43              'New_Hebrides_500yr':51378,
44              'New_Hebrides_1000yr':51347,
45              'New_Hebrides_2000yr':51292,
46              'New_Hebrides_5000yr':51424}
47
48anuga_areas_dict = {}
49for row in csv_in:
50    anuga_areas_dict[row[0]]=float(row[1])
51print anuga_areas_dict
52##area_id_list = []
53area_anuga_list = []
54##energy_id_list = []
55##energy = []
56energy_list = []
57wave_height_list = []
58madsen_list = []
59energy_run_up_list = []
60##area_sum_list = []
61
62for row in csv_energy:
63    event_id = row[0].split('/')[10]
64    print 'event id', event_id
65    for key, value in event_dict.iteritems():
66        if value == int(event_id):
67            print 'anuga_areas_dict[value]',anuga_areas_dict[str(value)]
68            area_anuga_list.append(anuga_areas_dict[str(value)])
69            energy_list.append(float(row[1]))
70            wave_height_list.append(float(row[5]))
71            madsen_list.append(float(row[3]))
72            energy_run_up_list.append(float(row[4]))
73##    if event_name == False:
74##        continue
75   
76pylab.cla()
77
78pylab.title('Inundation area and maximum offshore energy')
79pylab.xlabel('Maximum crest integrated energy at 100 m contour (J)')
80#pylab.xlabel('Maximum offshore wave height (m)')
81pylab.ylabel('Area inundated (m^2)')
82##for key, value in area_percent:
83##    key_list = []
84##    for val in value:
85##        key_list.append(key)
86pylab.scatter(energy_list,area_anuga_list)
87#pylab.scatter(energy,area_sum_list)
88#pylab.axis([0,2e7,0,500000])
89pylab.savefig(energy_figure_path)
90
91pylab.cla()
92
93pylab.title('Inundation area and maximum offshore wave height')
94#pylab.xlabel('Maximum crest integrated energy at 100 m contour (J)')
95pylab.xlabel('Maximum offshore wave height (m)')
96pylab.ylabel('Area inundated (m^2)')
97##for key, value in area_percent:
98##    key_list = []
99##    for val in value:
100##        key_list.append(key)
101pylab.scatter(wave_height_list,area_anuga_list)
102#pylab.scatter(energy,area_sum_list)
103#pylab.axis([0,2e7,0,500000])
104pylab.savefig(wave_height_figure_path)
105
106pylab.cla()
107
108pylab.title('Inundation area and Madsen run-up solution')
109#pylab.xlabel('Maximum crest integrated energy at 100 m contour (J)')
110pylab.xlabel('Madsen run-up solution (m)')
111pylab.ylabel('Area inundated (m^2)')
112##for key, value in area_percent:
113##    key_list = []
114##    for val in value:
115##        key_list.append(key)
116pylab.scatter(madsen_list,area_anuga_list)
117#pylab.scatter(energy,area_sum_list)
118#pylab.axis([0,2e7,0,500000])
119pylab.savefig(madsen_figure_path)
120
121pylab.cla()
122
123pylab.title('Inundation area and energy balance run-up solution')
124#pylab.xlabel('Maximum crest integrated energy at 100 m contour (J)')
125pylab.xlabel('Energy balance run-up solution (m)')
126pylab.ylabel('Area inundated (m^2)')
127##for key, value in area_percent:
128##    key_list = []
129##    for val in value:
130##        key_list.append(key)
131pylab.scatter(energy_run_up_list,area_anuga_list)
132#pylab.scatter(energy,area_sum_list)
133#pylab.axis([0,2e7,0,500000])
134pylab.savefig(energy_run_up_figure_path)
Note: See TracBrowser for help on using the repository browser.