<div dir="ltr"><div>If you just want to remove ensemble mean then you could do the following:</div><div><br></div><div>x_new      = x</div><div>
ens_mean = dim_avg_n_Wrap(x,1) <br></div><div></div><div>do n=0,nens-1</div><div>   x_new(:,n,:,:) = x(:,n,:,:) - 
ens_mean <br></div><div>end do</div><div><br></div><div>However, please make sure that this is what you want!, it is up to you to decide and know what you are trying to accomplish here. Your variable names suggest that there could be some confusion...</div><div><br></div><div>Cheers,</div><div>Rashed<br></div><div><br></div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jun 12, 2020 at 12:50 PM Sri nandini via ncl-talk <<a href="mailto:ncl-talk@mailman.ucar.edu">ncl-talk@mailman.ucar.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello dear ncl-users,<br>
<br>
I want to know the best way to remove the ensemble mean from the <br>
corresponding time of each ensemble member. Can someone tell me if the <br>
following code is correct? i do not get any error but i wanted to be <br>
sure of the method.<br>
<br>
Thanx in advance<br>
<br>
Sri<br>
<br>
;==================================================================<br>
;  Remove the ensemble mean from each ensemble member<br>
;==================================================================<br>
    dimx = dimsizes(x)<br>
    ntim = dimx(0)          ; 240<br>
    nens = dimx(1)          ; 100<br>
    nlat = dimx(2)          ; 45<br>
    mlon = dimx(3)          ; 90<br>
<br>
    nmos = 12<br>
    nyrs = ntim/nmos         ; 21<br>
<br>
    printVarSummary(x)       ;[time | 240] x [ens | 100] x [lat | 45] x [lon | 90]<br>
    ens_mean=dim_avg_n_Wrap(x,1)<br>
    printVarSummary(ens_mean);[time | 240]  x [lat | 45] x [lon | 90]<br>
<br>
     detrended_x = x<br>
     do nt=0,ntim-1<br>
       nmo = nt%12<br>
      do ne=0,nens-1<br>
         detrended_x(nt,ne,:,:) = (/ x(nt,ne,:,:) - ens_mean(nmo,:,:) /) ; detrended array<br>
      end do<br>
    end do<br>
    detrended_x@long_name = “Ensemble mean removed”<br>
<br>
    printVarSummary(detrended_x)<br>
   [time | 240] x [ens | 100] x [lat | 45] x [lon | 90]<br>
<br>
_______________________________________________<br>
ncl-talk mailing list<br>
<a href="mailto:ncl-talk@mailman.ucar.edu" target="_blank">ncl-talk@mailman.ucar.edu</a><br>
List instructions, subscriber options, unsubscribe:<br>
<a href="https://mailman.ucar.edu/mailman/listinfo/ncl-talk" rel="noreferrer" target="_blank">https://mailman.ucar.edu/mailman/listinfo/ncl-talk</a></blockquote></div>