<div dir="ltr"><div><div>If  <b>lw_aqua_3 </b>and <b>lw_aqua_7 </b>have the same _FillValue and units,and  you use<br><br>lw(0,:,:) = lw_aqua_3<br>
lw(1,:,:) = lw_aqua_7<br><br>
and then<br>
<br>
lw_sum = dim_sum_n_Wrap(lw,0)<br></div><div>lw@long_name = "LW: SUM[AQUA_3 and AUQA_7]"<br></div>printVarSummary(lw)<br><br></div>Then it does what I think you want!<br><div><div><b></b></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 7, 2018 at 11:48 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">Hi Dennis:<br>
<br>
Of course, that makes complete sense. Not sure what I was thinking<br>
here. I was further wondering. If I were to put lw_aqua_3 and<br>
lw_aqua_7 in one array, like:<br>
<br>
lw(0,:,:) = lw_aqua_3<br>
lw(1,:,:) = lw_aqua_7<br>
and then<br>
<br>
lw_sum = dim_sum_n_Wrap(lw,0).<br>
<br>
Would this be the same as using the where function and ismissing? This<br>
may be a simpler way to do this?<br>
<br>
Thanks for your quick reply on my 1st e-mail,<br>
Laura<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
<br>
<br>
On Thu, Jun 7, 2018 at 11:30 AM, Dennis Shea <<a href="mailto:shea@ucar.edu">shea@ucar.edu</a>> wrote:<br>
> In many [?all?] languages, you can not directly test for NaN [if (x.eq.Nan)]<br>
> You must use a function.<br>
><br>
> NCL is similar in the way it treats _FillValue. You can not use: if<br>
> (x.eq.x@_FillValue)<br>
><br>
> NCL *requires* the user to use the ismissing function to test for _FillValue<br>
><br>
> <a href="https://www.ncl.ucar.edu/Document/Functions/Built-in/ismissing.shtml" rel="noreferrer" target="_blank">https://www.ncl.ucar.edu/<wbr>Document/Functions/Built-in/<wbr>ismissing.shtml</a><br>
><br>
> q = where(ismissing(x) .and. .not.ismissing(y), a, b)<br>
><br>
> HTH<br>
><br>
><br>
> On Thu, Jun 7, 2018 at 11:14 AM, Laura Fowler <<a href="mailto:laura@ucar.edu">laura@ucar.edu</a>> wrote:<br>
>><br>
>> 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>
>><br>
>><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>
>><br>
>> !-----------------------------<wbr>------------------------------<wbr>------------------------------<wbr>--------------------<br>
>><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>
><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>
</div></div></blockquote></div><br></div>