Avoiding FOR loops ? [message #40673] |
Wed, 25 August 2004 03:31 |
sdj
Messages: 20 Registered: November 2003
|
Junior Member |
|
|
Dear All,
Is there a away to avoid the FOR loops in the following code:
;no. of months & no. of lat, lon points
n_months = 256
lon = 1304
lat = 1028
;3-D array with SST observations for all
;months and all pixels - Populated
data_all = fltarr(n_months, lon, lat)
;Array of all valid observations across all months
;for all pixels - To be populated
data_obs = intarr(lon, lat)
;Array of mean values across all months
;for all pixels - To be populated
data_mean = fltarr(lon, lat)
;Array of median values across all months
;for all pixels - To be populated
data_median = fltarr(lon, lat)
;The values of LAND to be avoided
;Bad value obs is defined as 0
def_val = -9999.9
FOR ilon = 0, lon - 1 DO BEGIN
FOR ilat = 0, lat - 1 DO BEGIN
valid = where(data_all(*, ilon, ilat) NE def_val AND $
data_all(*, ilon, ilat) NE 0, count = valid_obs)
data_obs(ilon, ilat) = valid_obs
data_mean(ilon, ilat) = mean(data_all(*, ilon, ilat))
data_median(ilon, ilat) = median(data_all(*, ilon, ilat))
ENDFOR
ENDFOR
It seems to me that I am not exactly speeding things up by using this method...
Thanks in advance for your help.
Regards,
Pepe
*************************************************
Pepe S. D. Juevara
- No debe cambiarse de caballo al cruzar el r�o -
*************************************************
|
|
|