GeoscienceAustralia / eqrm

Automatically exported from code.google.com/p/eqrm
Other
5 stars 4 forks source link

max_width not working as advertised #36

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Run in the script in 
/nas/gemd/ehp/georisk_earthquake/EQRM/sandpits/dburbidg/python_eqrm/EQRM/trunk/c
ase_studies/national/validation/peer11

What is the expected output? What do you see instead?

The max_width variable is set to 1 in setdata_ProbHaz_val.py. However the 
widths in "peer11_event_set.txt" are all 6.1km. It appears that the max_width 
variable is being ignored.

What version of the product are you using? On what operating system?
1016

Please provide any additional information below.

FYI to completely reproduce the PEER problem I'd ideally like to be able to 
limit both the maximum width and maximum length. There doesn't seem to be a way 
to do that at the moment.

Original issue reported on code.google.com by David.Bu...@ga.gov.au on 23 Mar 2012 at 1:58

GoogleCodeExporter commented 9 years ago

Original comment by b...@girorosso.com on 23 Mar 2012 at 2:02

GoogleCodeExporter commented 9 years ago
Looking at how the result of 6.1km is derived.

setdata_ProbHaz_val.py:
is_scenario = False
max_width = 1
input_dir = join('/nas/gemd/ehp/georisk_earthquake/EQRM', 
'national/validation','input') 

This means that EQRM will use generate_synthetic_events rather than 
create_scenario_events to create the event set, using the zone source file as 
input. In this case it is using peer11_zone_zource_20120213.xml. The key 
parameters are:

<geometry  dip = "55" delta_dip = "0" azimuth = "180" delta_azimuth = "180" 
depth_top_seismogenic = "5" depth_bottom_seismogenic = "10"> 

Event_Set creation uses the parameter fault_width as a max width figure. 
generate_synthetic_events calculates this as

fault_width = (depth_top_seismogenic - depth_bottom_seismogenic) / sin(dip * 
pi/180)

which for the parameters above is ~6.1

Original comment by b...@girorosso.com on 23 Mar 2012 at 2:34

GoogleCodeExporter commented 9 years ago
Tasks to come out of this:
- Rename max_width to scenario_max_width to reflect what it's used for
- Create new scaling functions to be used by David B
PEER_rup_area => returns 1 (km^2)
PEER_rup_width => returns 1 (km)
- These are referred to in the event control file as "PEER", e.g.
<scaling scaling_rule = "PEER" />

Original comment by b...@girorosso.com on 23 Mar 2012 at 3:18

GoogleCodeExporter commented 9 years ago
To be clear, these scaling functions are used in generate_synthetic_events like 
so:

area = scaling.scaling_calc_rup_area(magnitude, source.scaling)
width = scaling.scaling_calc_rup_width(magnitude, source.scaling, dip, 
rup_area=area, max_rup_width=fault_width)
and length falls out as length = area / width

where fault_width is calculated as per the comment above => 
(depth_top_seismogenic - depth_bottom_seismogenic) / sin(dip * pi/180)

What David wants is to standardise the generated event set where length=1km, 
width=1km, area=1km^2

If the scaling_rule is set to 'PEER' then this will be the case.

Original comment by b...@girorosso.com on 23 Mar 2012 at 3:27

GoogleCodeExporter commented 9 years ago
Yes, that's a great description of it.
Thanks for putting it into the issue.

Original comment by duncan.g...@gmail.com on 23 Mar 2012 at 3:30

GoogleCodeExporter commented 9 years ago
Revision 1017 implements the new scaling rule functions as explained in the 
comments above

Original comment by b...@girorosso.com on 23 Mar 2012 at 4:22

GoogleCodeExporter commented 9 years ago
Revision 1018 relabels max_width to scenario_max_width. Documentation still to 
be updated.

Original comment by b...@girorosso.com on 25 Mar 2012 at 10:33

GoogleCodeExporter commented 9 years ago
Issue 1019 updates the documentation

Original comment by b...@girorosso.com on 25 Mar 2012 at 10:45

GoogleCodeExporter commented 9 years ago
Revision 1025 adds max_width as a deprecated parameter, replaced by 
scenario_max_width. It also adds some more information in the warning messages 
to say what changes were made.

Original comment by b...@girorosso.com on 27 Mar 2012 at 2:09