[ncl-talk] wind_speed: dimension size mismatch

Borja Sas González saszalez at gmail.com
Thu Jan 16 05:27:07 MST 2020


Hi everyone. I am trying to put in a CSV file the wind speed and direction
for level 1 of the out file of the WRF output. I have reviewed the script a
thousand times, but I can't find where the error is. The answer that prints
me is:

(0) wind_speed: dimension size mismatch

(0)         u: 1000

(1)         u: 27

(2)         u: 81

(3)         u: 82

(0)         v: 1000

(1)         v: 27

(2)         v: 82

(3)         v: 81

The script is:

begin


; Abrir archivos

files = systemfunc("ls /home/ssd/begur/WRF/test/em_real/wrfout_d03_*") +
".nc"

a = addfiles(files,"r")


; Definir latitud y longitud

lat = 41.935165

lon = 3.158911


; Opciones del encabezado

csv_filename = "wind_levels.csv"

system("rm -f " + csv_filename)

fields = (/"TIME","WIND SPEED (m/s)","WIND DIRECTION (º)"/)


; Crear encabezado

dq = str_get_dq()

fields = dq + fields + dq

header = [/str_join(fields,",")/]


; Formato de escritura de las variables

format = "%s,%g,%g,%g,%g" ; Para escribir sin espacios


; Crea el archivo con el encabezado

write_table(csv_filename,"w",header,"%s")


; Para leer archivo por archivo

nfiles = dimsizes(files)


; Bucle archivo por archivo

do nf = 0,nfiles-1


; Localización del punto más próximo

opt = True ; Devuelve la coordenada entera

loc := wrf_user_ll_to_xy(a[nf],lon,lat,opt) ; Pasa lon/lat a xy más próximo


; Coordenadas para las variables

lat2 = loc(1) ; Latitud para las variables

lon2 = loc(0) ; Longitud para las variables


; Velocidad del viento a los niveles establecidos

u := wrf_user_getvar(a[nf],"U",-1)

v := wrf_user_getvar(a[nf],"V",-1)

wspd := wind_speed(u,v)

wspd = decimalPlaces(wspd,2,True)


; Dirección del viento a los niveles establecidos

wdir := wind_direction(u,v,0)


; Loop temporal

times := wrf_user_getvar(a[nf],"times",-1)

ntimes = dimsizes(times)


; Bucle temporal

do it = 0,ntimes-1


; Crea el archivo CSV con las variables

alist = [/times(it),wspd(it,0,lat2,lon2),wdir(it,0,lat2,lon2)/]

write_table(csv_filename,"a",alist,format)


end do


end do


end

If anyone can help me I appreciate it.

-- 
Borja Sas González
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20200116/f063f6b3/attachment.html>


More information about the ncl-talk mailing list