<div dir="ltr"><div>In many [?all?] languages, you can not directly test for <b>NaN</b> [if (x.eq.Nan)]  You must use a function.<br><br>NCL is similar in the way it treats _FillValue. You can not use: if (x.eq.x@_FillValue)<br><br>NCL <b>*requires*</b> the user to use the <b>ismissing</b> function to test for _FillValue<br><br><b><a href="https://www.ncl.ucar.edu/Document/Functions/Built-in/ismissing.shtml">https://www.ncl.ucar.edu/Document/Functions/Built-in/ismissing.shtml</a></b><br><br></div><div>q = <b>where</b>(<b>ismissing</b>(x) .and. <b><span style="color:rgb(255,0,0)">.not.</span>ismissing</b>(y), a, b)<br><br></div><div>HTH<br></div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 7, 2018 at 11:14 AM, Laura Fowler <span dir="ltr"><<a href="mailto:laura@ucar.edu" target="_blank">laura@ucar.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello:<br>
<br>
I am trying to make a composite of 2 cloud layers using the where<br>
function but that does not seem to work. I am attaching the plots<br>
test.layers_3.pdf and test.layers_7.pdf which are monthly mean values<br>
of the liquid water paths for the lower cloud layer and the upper<br>
cloud layer. Both data include missing values (green), but the liquid<br>
water path for the upper cloud layer contains a lot more missing data<br>
than the lower cloud layer.<br>
<br>
I would like to make a composite of the two layers. So first, I used<br>
the where function as below:<br>
<br>
lw = where(lw_aqua_3.ne.lw_aqua_3@_<wbr>FillValue .and.<br>
lw_aqua_7.ne.lw_aqua_7@_<wbr>FillValue, \<br>
                   lw_aqua_3+lw_aqua_7,lw_aqua_3@<wbr>_FillValue)<br>
<br>
where lw_aqua_3 and lw_aqua_7 are the liquid water paths for the lower<br>
and upper cloud layers, respectively. The plot<br>
test1.add_layers.pdf show the "total" liquid water path.<br>
<br>
<br>
What I can't seem to be able to do is to fill the missing value of lw<br>
with lw_aqua_3 where lw_aqua_7 is actually missing and vice versa. So<br>
I did:<br>
<br>
;lw2 = where(lw_aqua_3.ne.lw_aqua_3@_<wbr>FillValue .and.<br>
lw_aqua_7.eq.lw_aqua_7@_<wbr>FillValue, \<br>
                      lw_aqua_3,lw)<br>
<br>
but that does not work as the plot of lw2 (test1.add_layers.pdf) is<br>
the same as the plot for lw (since lw is missing where lw_aqua_3 is<br>
not missing). I also tried to use ismissing but that does not work<br>
since lw and lw2 are a two dimensional array.<br>
<br>
<br>
Is there a simpler way to compute that kind of composite?<br>
<br>
Thanks,<br>
Laura<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
<br>
<br>
<br>
<br>
-- <br>
!-----------------------------<wbr>------------------------------<wbr>------------------------------<wbr>--------------------<br>
Laura D. Fowler<br>
Mesoscale and Microscale Meteorology Division (MMM)<br>
National Center for Atmospheric Research<br>
P.O. Box 3000, Boulder CO 80307-3000<br>
<br>
e-mail: <a href="mailto:laura@ucar.edu">laura@ucar.edu</a><br>
phone: 303-497-1628<br>
<br>
!-----------------------------<wbr>------------------------------<wbr>------------------------------<wbr>--------------------<br>
</font></span><br>______________________________<wbr>_________________<br>
ncl-talk mailing list<br>
<a href="mailto:ncl-talk@ucar.edu">ncl-talk@ucar.edu</a><br>
List instructions, subscriber options, unsubscribe:<br>
<a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" rel="noreferrer" target="_blank">http://mailman.ucar.edu/<wbr>mailman/listinfo/ncl-talk</a><br>
<br></blockquote></div><br></div>