You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<li>Define the total number of random combinations among the best models of each station for joint-station TIP calculation.</li>
491
491
<li>Default is 500, which means for every station a random permutation of ranking numbers (based on the fitting degree) of the best models is performed with each sequence of ranking number having 500 elements, and the ith joint-station model parameter combination is thus from the best models of each station indexed by the ith element of each permutation.</li>
492
492
</ul></li>
493
+
<li><p>‘WithExtra’</p>
494
+
<ul>
495
+
<li>If ‘WithExtra’ is <code>true</code>, the returned <code>InfoTable</code> will include a variable for <code>Other</code> data.</li>
496
+
<li>Please refer the output arguments of <code>jointstation</code>.</li>
<p><code>isinS</code> indicates the points of xLon, yLat that are in the range of <code>Rc</code> centered at <code>Lon</code>, <code>Lat</code>. <strong>Unit:</strong></p>
863
+
<p>Given the Longitude <code>Lon</code>, Latitude <code>Lat</code> and the radius <code>Rc</code>, <code>[isinS,insideRatio] = TIPArea(Lon,Lat,Rc,xLon,yLat)</code> returns a logical vector indicating whether each grid point specified by <code>xLon</code> and <code>yLat</code> is inside <code>Rc</code> centered at (<code>Lon</code>, <code>Lat</code>).</p>
864
+
<p><code>TIPArea</code> used <code>isInpolygon</code> of <code>okatsn/toolbox</code> which simply splits circles by <code>NaN</code> before applying matlab’s <code>inpolygon</code>. In the official documentation of <code>inpolygon</code> in the section “Points Inside Multiply Connected Polygon”, if the polygon in the inner loop are defined in a counterclockwise direction while the outer one in a clockwise direction, <code>inpolygon</code> identifies the points inside the outer polygon but not inside the inner polygon. What the official documentation didn’t explicitly say is, if two (or more) polygons are all defined in the same direction, which is our case that all circles are defined in the counterclockwise direction, <code>inpolygon</code> identifies points in either polygon, which the expected behavior in our application. That is, when the TIP area of one station overlapped with the TIP area of another one station, <code>isinS</code> is <code>true</code> if a grid point is inside of either and <code>(xLon(isinS), yLat(isinS))</code> are essentially the union of the TIP area of all stations.</p>
865
+
<p><strong>Unit:</strong></p>
858
866
<ul>
859
867
<li><code>xLon</code> (<code>yLat</code>): degree of longitude (latitude).</li>
860
868
<li><code>Rc</code>: kilometer. Noted that <code>Rc</code> is convert to the unit of degree and be the mean of those based on the latitude and longitude of the center respectively. (Hint: when converting km to deg, it depends on latitude and the longitude. For example, at lower latitude, the distance of 1 deg interval in longitude is much larger than that of 1 deg interval at high latitude.)</li>
<li><code>isinS</code>: <code>xLon(isinS),yLat(isinS)</code> specify all the points (clearly non-repeated) that are within the ranges of radii <code>Rc</code> inside the centers specified by <code>Lon</code>, <code>Lat</code>.</li>
878
+
<li><code>isinS</code>: a N by 1 array, where <code>xLon(isinS),yLat(isinS)</code> specify all the points (clearly non-repeated) that are within the ranges of radii <code>Rc</code> inside the centers specified by <code>Lon</code>, <code>Lat</code>.</li>
<li><code>isinTS</code>: a S by T logical array specifying spatial-temporal points that are within the ranges of radii <code>Rc</code> inside the centers specified by <code>Lon</code>, <code>Lat</code>, where <code>[Rc, Lon, Lat] = LatLonRc_TIPtrue</code> is a M by 3 array where <spanclass="math inline">\(M \geq T\)</span> must be satisfied.</li>
878
-
</ul>
883
+
<p>Given the dates to calculate TIP area <code>dates_TIPtrue</code>, the range (<code>Rc</code>) around the center point (<code>LatLon</code>) in <code>LatLonRc_TIPtrue</code>, and the grid points of the entire map (<code>xLon</code>, <code>yLat</code>), <code>[dt_TIP_true_uniq,TIP_true_area,isinTS] = TIPspatialtemporal(dates_TIPtrue,LatLonRc_TIPtrue, xLon, yLat)</code> returns the unique and sorted vector of dates (<code>dt_TIP_true_uniq</code>) and the vector of spatial TIP area <code>TIP_true_area</code> for each date in <code>dt_TIP_true_uniq</code>.</p>
884
+
<p>The value of <code>TIP_true_area</code> is the ratio of spatial TIP area to total area. When in the context of calculating the total amount of alarmed area, <code>sum(TIP_true_area)</code> is the alarmed area ratio to the entire 2D space specified by <code>xLon</code> and <code>yLat</code> (i.e., which are all grid points in the region of <code>[TwLat0, TwLat1],[TwLon0, TwLon1]</code>). See <code>TIPArea</code> for more information.</p>
885
+
<p><code>isinTS</code> is a S by T logical array specifying spatial-temporal points that are within the ranges of radii <code>Rc</code> inside the centers specified by <code>Lon</code>, <code>Lat</code>, where <code>[Rc, Lon, Lat] = LatLonRc_TIPtrue</code> is a M by 3 array where <spanclass="math inline">\(M \geq T\)</span> must be satisfied.</p>
886
+
<p>Noted that <code>dt_TIP_true_uniq</code> are successive (e.g., 1, 2, 4) dates but not necessarily consecutive (e.g., 1, 2, 3).</p>
<li><code>sum_validateInds</code>: A J-by-1 cell array with each cell corresponding to <code>BestmodelNames</code>. See <code>loadAIN()</code>.</li>
1075
1083
<li><code>DateTime_dti</code>: A T by 1 datetime array for the time series in <code>sum_tsAINs</code> and the <code>sum_validateInds</code>.</li>
1076
1084
<li><code>CWBcatalog</code>: A table of earthquake catalog. You may load <code>CWBcatalog</code> using <code>only1field([dir_catalog filesep 'catalog.mat'])</code>.</li>
1077
-
<li><code>Verbose</code>: Output an additional <code>struct</code> of <code>Other</code>variables.</li>
1085
+
<li><code>WithExtra</code>: Output an additional <code>struct</code> of supplementary data as the <code>Other</code>variable.</li>
1078
1086
</ul>
1079
1087
<p><strong>Output arguments:</strong></p>
1080
1088
<ul>
1081
-
<li><p><code>HitRates</code>, <code>AlarmedRates</code>: M by 1 array, being the hit rates (alarmed rates) of each combination of best models. M is the amounts of total combinations (the <code>totalM</code> in <code>bestmodel()</code>). They are <code>AlarmedRateForecasting</code> and <code>HitRatesForecasting</code> of <code>molscore3</code>’s output.</p></li>
1089
+
<li><p><code>HitRates</code>, <code>AlarmedRates</code>: M by 1 array, being the hit rates (alarmed rates) of each combination of best models. M is the amounts of total combinations (the <code>totalM</code> in <code>bestmodel()</code>). They are <code>AlarmedRateForecasting</code> and <code>HitRatesForecasting</code> of <code>molscore3</code>’s output.<code>AlarmedRates(i)</code> can be a number or <code>NaN</code> (when <code>0/0</code>).</p></li>
1082
1090
<li><p><code>SpatialProbability</code>: A S by T array of the temporal-spatial forecasting probabilities. It is the output variable <code>Probability</code> of <code>molscore3()</code>.</p></li>
1083
1091
<li><p><code>xLon</code> (<code>yLat</code>): The longitudes (latitudes) of all spatial points as a S by 1 array. It is the output variable <code>ProbabilityLon</code> (<code>ProbabilityLat</code>) of <code>molscore3()</code>.</p></li>
1084
1092
<li><p><code>validStationTime</code>: A T by J table of the ratio of valid models each day each station. This is for <code>plotProbability()</code>, that the ratio will be demonstrated as gradient color in the marker of each station. If the ratio is zero, the marker on map will be hollow. It is the output variable <code>validStationTime</code> of <code>molscore3()</code>.</p></li>
<li><code>InStation</code>: Indicates the target earthquake is of which station.</li>
1092
1100
<li><code>EqkDist</code>: The distance between the station (as specified by <code>InStation</code>) and hypocenter of the target earthquake. Also see <code>simpleStationEQKdist3D</code>.</li>
1093
1101
</ul></li>
1094
-
<li><p><code>Other</code>: The additional output when ‘Verbose’ is <code>true</code>.</p>
1102
+
<li><p><code>Other</code>: The additional output when ‘WithExtra’ is <code>true</code>.</p>
1095
1103
<ul>
1096
1104
<li><code>Other.nEQK</code>: The number of target earthquakes for each model in forecasting phase.</li>
1097
-
<li><code>Other.areaTIP</code>: The total area (spatial + temporal) of TIP for each model in forecasting phase. See <code>TIPspatialtemporal</code> and <code>TIPArea</code>.</li>
1098
-
<li><code>Other.nEQK .* HitRates</code> is the number of hitted earthquakes in this forecasting phase.</li>
1099
-
<li><code>Other.areaTIP .* AlarmedRates</code> is the total amount of alarmed TIP area in this forecasting phase.</li>
1100
-
<li>Noted that it is nonsesnse to set ‘Verbose’ to be <code>true</code> when ‘calculateHitRate’ and ‘calculateAlarmedRate’ are <code>false</code>.</li>
1105
+
<li><code>Other.areaTIP</code>: The total area (spatial + temporal, i.e., <code>sum(TIP_valid_area)</code>) of TIP for each model in forecasting phase. See <code>TIPspatialtemporal</code> and <code>TIPArea</code>.</li>
1106
+
<li><code>Other.nEQK .* HitRates</code> is the number of hitted earthquakes for each model in this forecasting phase.</li>
1107
+
<li><code>Other.areaTIP .* AlarmedRates</code> is the total amount of alarmed TIP area (i.e., <code>sum(TIP_true_area)</code>) for each model in this forecasting phase.</li>
1108
+
<li>Noted that it is nonsesnse to set ‘WithExtra’ to be <code>true</code> when ‘calculateHitRate’ and ‘calculateAlarmedRate’ are <code>false</code>.</li>
0 commit comments