Basin Query Result
Contents
Basin Query Algorithms
Both Z1.0 and Z2.5 will use the same algorithms, they will just look for different Vs values Z1.0 = Vs = 1000m/s Z2.5 = Vs = 2500m/s, which we call the Target_Z.
- First Crossing - If the surface Vs is > Target_Z, then depth is 0. Otherwise, query the CVM every 20m depth, until a Vs >= Target_Z is found. Return the depth at which the Vs returned from the model is greater than or equal to the Target-Z.
- Second Crossing -
- Last Crossing -
Basin Query Algorithms in actual implmentation
For each grid point within the user supplied boundary, a stack of query points is generated with different depths in the increment of 20m. This set of query points are submitted to the backend model for their matching Vs.
Search of Vs threshold crossings of a grid point starts by looking at the Vs of this grid point from the first depth layer to the very last depth layer.
If the Vs is less than 0.0, it is invalid, just skip it.
If the Vs is greater than 0.0, check if this is a crossing point. A crossing is found if Vs of the earlier depth layer is lower than the preset threshold and the Vs of the current depth layer is higher than the preset threshold, ie. an upward sloping crossing.
5 different types of result for all the grid points are being collected and outputted into 5 different binary data files. User may selectively collect each or all data files by supplying the matching data file names on command line.
- First Crossing -- If there is no crossing, return -1 or else return the first upward crossing's depth
- Second or First Crossing -- If there is no crossing, return -1. If there are more than one crossing, return the second to the first or else return the depth of the first crossing
- Last Crossing -- If there is no crossing, return -1 or return the last upward crossing's depth
- Second only Crossing -- If there is no crossing or less than two crossings, return -1. Return the second crossing depth even if there are more than two crossings.
- Last but not Second or First Crossing -- If there is no crossing or there are less than or equal to two crossings, return -1, or return the last crossing's depth
Basin Query Result
These result were ran on HPC and Blue Waters
Model | First Upward Crossing | Last Upward Crossing |
---|---|---|
CVM-S4.26
(cvms5) |
threshold = 1000m/s | threshold = 1000m/s |
CVM-S4.26-M01
(cvmsi) |
threshold = 1000m/s | threshold = 1000m/s |
CCA06
(cca) |
threshold = 1000m/s | threshold = 1000m/s |
Here are comparable results from OpenSHA. First crossing results were calculated by David Gill, either in UCVMC or python, I'm not sure (but 4.26 files were provided years ago and are thus likely with the C version). Second crossing results were calculated by Scott Callaghan after modifying the python version of UCVM, Summer 2017. Note that the 3rd column is second crossing, not last.
Model | First Upward Crossing | Second Upward Crossing |
---|---|---|
CVM-S4.26
(cvms5) |
None | None |
CVM-S4.26-M01
(cvmsi) |
First crossing in old tree of opensha-commons/master | Second crossing on opensha-commons/master, now with metadata |
CCA06
(cca) |
First crossing in old tree of opensha-commons/master | Second crossing on opensha-commons/master, now with metadata |