<div dir="ltr">Aloha Mark, <div><br></div><div>I&#39;ve had much better luck using amaxlocx and amaxlocy over maxloc.</div><div><a href="http://www.iges.org/grads/gadoc/gradfuncamaxlocx.html">http://www.iges.org/grads/gadoc/gradfuncamaxlocx.html</a><br></div><div><br></div><div>It&#39;s two lines of code instead of one, but then you don&#39;t have to deal with the nightmare of output from the maxloc function.  When you use maxloc, it produces a lot of output, so your script is just grabbing the wrong line.  amaxlocx and amaxlocy produce only 1 line of output.  </div><div><br></div><div>That&#39;s what I used as a work around for this same problem.  Here is the code to replace what you are doing.  I hope it works for you.</div><div><br></div><div>**Find the x-coordinate of the maximum htsgw (xc)</div><div><span style="font-size:12.8000001907349px">&#39;d a</span><span class="" style="font-size:12.8000001907349px;background-color:rgb(255,255,255)">maxlocx</span><span style="font-size:12.8000001907349px">(</span><span style="font-size:12.8000001907349px">htsgw,lon=&#39;lon1&#39;,</span><span style="font-size:12.8000001907349px">lon=&#39;lon2&#39;,lat=&#39;lat1&#39;,lat=&#39;</span><span style="font-size:12.8000001907349px">lat2&#39;)&#39;</span></div><div><span style="font-size:12.8000001907349px">xc=subwrd(result,4)</span></div><div>**Find the y-coordinate of the maximum htsgw (yc)<span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px">&#39;d a</span><span class="" style="font-size:12.8000001907349px">maxlocy</span><span style="font-size:12.8000001907349px">(</span><span style="font-size:12.8000001907349px">htsgw,lon=&#39;lon1&#39;,</span><span style="font-size:12.8000001907349px">lon=&#39;lon2&#39;,lat=&#39;lat1&#39;,lat=&#39;</span><span style="font-size:12.8000001907349px">lat2&#39;)&#39;</span><span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px">yc=subwrd(result,4)</span></div><div><br></div><div>-Tom</div><div><br></div><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 26, 2015 at 8:39 AM, Mark Sponsler <span dir="ltr">&lt;<a href="mailto:msponsler@comcast.net" target="_blank">msponsler@comcast.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>Hello everyone,</div>
<div>I&#39;m struggling with maxloc. For whatever reason - I cannot get valid results out of it</div>
<div></div>
<div>I&#39;m using a simple 0.5 X 0.5 deg grid.</div>
<div></div>
<div>I can find the max value just fine.  It&#39;s the location of that value that is the issue.</div>
<div>Specifically selecting the correct record to read to obtain the x value (nxp3 in this example):</div>
<div></div>
<div>&#39;d maxloc(max(htsgw,lat=&#39;lat1&#39;,lat=&#39;lat2&#39;),lon=&#39;lon1&#39;,lon=&#39;lon2&#39;)&#39;<br>   rec=sublin(result,nxp3)</div>
<div></div>
<div>The last valid line of data from maxloc looks like this (the next line is undefined values):</div>
<div>        rec = MAXing.  dim = 1, start = 146, end = 286<br><br>Where is the actual grib point or longitude where the max value is located?</div>
<div>The results I&#39;m getting are the same for every time step in the grib file....  dim = 1</div>
<div></div>
<div>Or should I be looking somewhere else?</div>
<div></div>
<div>Thanks for your help.</div>
<div></div>
<div>Here&#39;s the whole script:</div>
<div></div>
<div>********************************<br>* Define number of grid points to scan<br>********************************</div>
<div>lon1 = 120<br>lon2 = 255<br>lat1 = -5<br>lat2 = 65</div>
<div></div>
<div>nxp = (lon2-lon1)<br>*       say &#39;  nxp = &#39;nxp<br>nyp = (lat2-lat1)<br>*      say &#39;  nyp = &#39;nyp<br>*  Grid dimensions are 0.5 x 0.5<br>nxp1 = nxp/0.5<br>*    say &#39;nxp1 = &#39;nxp1<br>nyp1 = nyp/0.5<br>*    say &#39;nyp1 = &#39;nyp1<br>nxp2 = math_int(nxp1)<br>nyp2 = math_int(nyp1)<br>*   say &#39;nxp2 nyp2 = &#39;nxp2&#39; &#39;nyp2<br><br>********************************<br>* Find Max Longitude (x dim)<br>********************************<br>* There are &#39;nxp1&#39; number of data points over the longitude range plus 1 for MAXLOCing<br>* and 1 for the result value line. So add 2.  <br>********************************<br> nxp3 = (nxp2 + 2)<br>     say &#39;nxp3 = &#39;nxp3<br><br>&#39;set gxout print&#39;<br>&#39;d maxloc(max(htsgw,lat=&#39;lat1&#39;,lat=&#39;lat2&#39;),lon=&#39;lon1&#39;,lon=&#39;lon2&#39;)&#39;<br>   rec=sublin(result,nxp3)<br>       say &#39;rec = &#39;rec<br>   xc=subwrd(rec,4)<br>        say &#39;Max height lon = &#39;xc<br><br>********************************<br>* Find max Latitude (y dim)<br>********************************<br>* There are &#39;nyp1&#39; number of data points over the long range plus 1 for MAXLOCing <br>* and 1 for the result value line. So add 2.  <br>********************************<br> nyp3 = (nyp2 + 2)<br>     say &#39;nyp3 = &#39;nyp3<br>&#39;d maxloc(max(htsgw,lon=&#39;lon1&#39;,lon=&#39;lon2&#39;),lat=&#39;lat1&#39;,lat=&#39;lat2&#39;)&#39;<br>   rec=sublin(result,nyp3)<br>      say &#39;rec = &#39;rec<br>   yc=subwrd(rec,4)<br>     say &#39;Max height lat = &#39;yc<br><br>       say &#39;location of max seas = &#39;xc&#39; &#39;yc<br><br>**************<br>*  Draw Max Location<br>**************<br>&#39;q gr2xy &#39;xc&#39; &#39;yc<br>    rec2=sublin(result,1)<br>      say &#39;rec2 = &#39;rec2<br>    xc2 = subwrd(result,3)<br>    yc2 = subwrd(result,6)<br>      say &#39;Max Height coords = &#39;xc2&#39; &#39;yc2</div>
<div></div>
<div><span style="font-size:small" size="2">Thanks,<br>Mark</span></div><br>_______________________________________________<br>
gradsusr mailing list<br>
<a href="mailto:gradsusr@gradsusr.org">gradsusr@gradsusr.org</a><br>
<a href="http://gradsusr.org/mailman/listinfo/gradsusr" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a><br>
<br></blockquote></div><div><br></div>
</div></div>