[Portugal] Usar GDAL com ficheiros NetCDF da ECMWF
Joaquim Luis
jluis at ualg.pt
Thu Dec 2 20:38:45 EST 2010
On 02-12-2010 18:05, António Rocha wrote:
> Bom dia
>
> Estou a tentar fazer a projecção dos dados da ECMWF (formato NetCDF)
> para o sistema de portugal EPSG:3726. Mas, infelizmente o GDAL não
> consegue reconhecer o sistema de coordenadas usada pela ECMWF nos
> ficheiros NetCDF. Como tal, ao projectar (utilizando GDALWARP) coloca
> os rasters no local errado. A minha questão é, alguém já utilizou
> estes dados? Se sim, cosnegue-me dizer o EPSG utilizado?
>
António,
Estás um bocadito entalado com esta transformação. Não pelos sistemas de
coordenadas em si mas pelas ferramentas.
O GDAL não te faz o trabalho por causa daquele bug (que eles não admitem
como tal) que te falei no outros mails que trocámos. É que o teu fiche
netCDF tem scale/offset e isso não é considerado pelo gdalwarp
resultando em que o ficheiro transformado tem Z's errados.
Quanto às coordenadas, as da tua chuva estão em simples lon lat ou seja
coordenadas geográficas. Podes usar o GMT para extrair correctamente
planos do teu ficheiro que tem 730 grelhas (tempos diferentes), e em
princípio pederias fazer a projecção com o GMT também mas algo de errado
se passa com o grdproject do GMT4 que me fica empancado a fazer sei lá o
quê. Curiosamente na versão GMT5 (alfa) a conversão ,m funciona bem.
Para extraires diferentes planos (tempos) com GMT faz assim para sacar o
primeiro nível
grdreformat 2009.nc?tp[0] tempo_0.grd
ou, para o nível 500 (a contagem começa em 0)
grdreformat 2009.nc?tp[499] tempo_500.grd
agora já podes converter com o gdalwarp, mas não para netCDF porque isso
é uma operação não suportada. Erra com:
"Output driver `netCDF' not recognised or does not support direct output
file creation. "
mas podes converter por exemplo para GeoTiff
gdalwarp -s_srs "+proj=latlong" -t_srs "+proj=tmerc
+lat_0=39.666666666666667 +lon_0=-8.13190611111111 +k=1.0 +x_0=180.598
+y_0=-86.99 +ellps=intl +towgs84=-223.237,110.193,36.649,0,0,0,0"
tempo_0.grd tempo_0_prj.tiff
Neste exemplo converti para Gauss (D73) pois não sei, nem fui à procura,
do que é o EPSG:3726
Podes fazer isto tudo facilmente em Mirone, mas como este não é
scriptável e os teus fiches têm 730 planos essa solução não é
propriamente prática porque teria de ser aplicada uma a uma.
Joaquim Luis
More information about the Portugal
mailing list