Olá a todos,
Irei mostrar um excelente script em linguagem perl (g2ctl.pl) que nos possibilita gerar um arquivo descritor .ctl ou um template a partir de dados GRIB2. Para utilizar este script é preciso seguir alguns passos.
Primeiro é preciso ter isntalado em seu sistema o Software GrADS na versão 2.0 você pode fazer isso seguindo o post da instalação do GrADS. Ressaltando que é necessário criar uma variável de ambiente para o "gribmap" para isso insira a linha abaixo em seu .bashrc (que vocêencontra em seu /home).
alias gribmap='/usr/local/grads-2.0.1/Contents/gribmap'
Segundo é preciso baixar o script g2ctl.pl no link http://www.cpc.ncep.noaa.gov/products/wesley/g2ctl.html.
Terceiro é preciso instalar o wgrib2, para isso vamos fazer o download do wgrib a partir do link http://www.cpc.ncep.noaa.gov/products/wesley/wgrib2/ ou clicando em wgrib2. Após o download execute o seguintes comandos:
> tar -zxvf wgrib.gz
Ao descompactar será preciso mover o diretorio criado para a pasta /usr/local
> sudo mv grib2 /usr/local/
Agora vá até o diretorio
> cd /usr/local/grib2
> sudo make
>sudo make install
Após terminar a instalação verifique a presença do binario wgrib2 na pasta:
>ls -la /usr/local/grib2/wgrib2/wgrib2 “.
Quarto abra o arquivo g2ctl.pl e altere a seguinte linha:
de:
wgrib2=’wgrib2′;
para:
wgrib2=’/usr/local/grib2/wgrib2/wgrib2′;
Feito isso precisamos transformar o script g2ctl.pl em um executável e depois criar uma variável de ambiente para que possamos usar o g2ctl em qualquer diretorio que estejamos, para isso siga os passos:
>chmod +x g2ctl.pl
>sudo mv g2ctl.pl /usr/local/bin
Feito isso abra novamente seu .bashrc e insira a seguinte linha:
export G2CTL=/usr/local/bin
Salve e depois execute:
>source .bashrc
Ok, agora você pode usar o g2ctl.pl, para testar digite no terminal:
>g2ctl.pl -v
Agora que já instalamos o g2ctl e o wgrib vamos usar um pouco:
Arquivos de análise:
ga>g2ctl.pl -0 arquivo_grib2 > arquivo_grib2.ctl (nenhuma opção)
ga>gribmap -0 -i arquivo_grib.ctl (nenhuma opção)
Arquivos de previsão:
ga>g2ctl.pl arquivo_grib2 > arquivo_grib2.ctl
ga>gribmap -i arquivo_grib.ctl
Agora abra o GrADS e teste o ctl para verificar se esta funcionando.
Para template:
ga>g2ctl gfs.t00z.pgrb2bf%f2 > previsao.ctl
ga>gribmap -i previsao.ctl
ou
ga>g2ctl -0 pgb.%y4%m2%d2%h2.f00 > analise.ctl
ga>gribmap -0 -i analise.ctl
Para o template você pode usar as seguintes funções:
%y4 - código para ano com 4 digitos
%y2 - código para ano com 2 digitos
%m2 - código para mês com 2 digitos
%m1 - código para ano com 1 ou 2 digitos
%h2 - código para hora com 2 digitos
%h1 - código para hora com 1 ou 2 digitos
%f3 - código para hora com 3 digitos
%f2 - código para hora com 2 ou 3 digitos
%e - nome do ensemble (especifico para opção -ens).
As principais diferenças entre a sintaxe do grib2ctl.pl e do g2ctl.pl são:
Para arquivos grib versão 2, usamos o script g2ctl.pl para criar ctl. A opção de usar -0 (zero) são passados, para ambos os comandos tanto o g2ctl.pl quanto o gribmap para os arquivos de análise e não para os arquivos de previsão na versão grib 2.
Para arquivos na versão 1, usamos o script grib2ctl.pl para criar ctl. A opção de uso -0 (zero) é passado no comando gribmap para arquivos de análise e a opção -verf é passado no comando grib2ctl.pl para arquivos de previsão. Para saber mais sobre o uso do grib2ctl.pl, como instalar e como usar, clique aqui.
PS. O que é o formato de arquivo GRIB e ctl
Grib é o formato de arquivo binário para armazenar os dados de análise e previsão em algum tipo de forma estruturada. Ctl é um arquivo de controle no formato ASCII que pode ser usado para ler o arquivo Grib.
Ambos os formatos são normalmente utilizados em centros de previsão do tempo e estudos de meteorologia.
Irei mostrar um excelente script em linguagem perl (g2ctl.pl) que nos possibilita gerar um arquivo descritor .ctl ou um template a partir de dados GRIB2. Para utilizar este script é preciso seguir alguns passos.
Primeiro é preciso ter isntalado em seu sistema o Software GrADS na versão 2.0 você pode fazer isso seguindo o post da instalação do GrADS. Ressaltando que é necessário criar uma variável de ambiente para o "gribmap" para isso insira a linha abaixo em seu .bashrc (que vocêencontra em seu /home).
alias gribmap='/usr/local/grads-2.0.1/Contents/gribmap'
Segundo é preciso baixar o script g2ctl.pl no link http://www.cpc.ncep.noaa.gov/products/wesley/g2ctl.html.
Terceiro é preciso instalar o wgrib2, para isso vamos fazer o download do wgrib a partir do link http://www.cpc.ncep.noaa.gov/products/wesley/wgrib2/ ou clicando em wgrib2. Após o download execute o seguintes comandos:
> tar -zxvf wgrib.gz
Ao descompactar será preciso mover o diretorio criado para a pasta /usr/local
> sudo mv grib2 /usr/local/
Agora vá até o diretorio
> cd /usr/local/grib2
> sudo make
>sudo make install
Após terminar a instalação verifique a presença do binario wgrib2 na pasta:
>ls -la /usr/local/grib2/wgrib2/wgrib2 “.
Quarto abra o arquivo g2ctl.pl e altere a seguinte linha:
de:
wgrib2=’wgrib2′;
para:
wgrib2=’/usr/local/grib2/wgrib2/wgrib2′;
Feito isso precisamos transformar o script g2ctl.pl em um executável e depois criar uma variável de ambiente para que possamos usar o g2ctl em qualquer diretorio que estejamos, para isso siga os passos:
>chmod +x g2ctl.pl
>sudo mv g2ctl.pl /usr/local/bin
Feito isso abra novamente seu .bashrc e insira a seguinte linha:
export G2CTL=/usr/local/bin
Salve e depois execute:
>source .bashrc
Ok, agora você pode usar o g2ctl.pl, para testar digite no terminal:
>g2ctl.pl -v
Agora que já instalamos o g2ctl e o wgrib vamos usar um pouco:
Arquivos de análise:
ga>g2ctl.pl -0 arquivo_grib2 > arquivo_grib2.ctl (nenhuma opção)
ga>gribmap -0 -i arquivo_grib.ctl (nenhuma opção)
Arquivos de previsão:
ga>g2ctl.pl arquivo_grib2 > arquivo_grib2.ctl
ga>gribmap -i arquivo_grib.ctl
Agora abra o GrADS e teste o ctl para verificar se esta funcionando.
Para template:
ga>g2ctl gfs.t00z.pgrb2bf%f2 > previsao.ctl
ga>gribmap -i previsao.ctl
ou
ga>g2ctl -0 pgb.%y4%m2%d2%h2.f00 > analise.ctl
ga>gribmap -0 -i analise.ctl
Para o template você pode usar as seguintes funções:
%y4 - código para ano com 4 digitos
%y2 - código para ano com 2 digitos
%m2 - código para mês com 2 digitos
%m1 - código para ano com 1 ou 2 digitos
%h2 - código para hora com 2 digitos
%h1 - código para hora com 1 ou 2 digitos
%f3 - código para hora com 3 digitos
%f2 - código para hora com 2 ou 3 digitos
%e - nome do ensemble (especifico para opção -ens).
As principais diferenças entre a sintaxe do grib2ctl.pl e do g2ctl.pl são:
Para arquivos grib versão 2, usamos o script g2ctl.pl para criar ctl. A opção de usar -0 (zero) são passados, para ambos os comandos tanto o g2ctl.pl quanto o gribmap para os arquivos de análise e não para os arquivos de previsão na versão grib 2.
Para arquivos na versão 1, usamos o script grib2ctl.pl para criar ctl. A opção de uso -0 (zero) é passado no comando gribmap para arquivos de análise e a opção -verf é passado no comando grib2ctl.pl para arquivos de previsão. Para saber mais sobre o uso do grib2ctl.pl, como instalar e como usar, clique aqui.
PS. O que é o formato de arquivo GRIB e ctl
Grib é o formato de arquivo binário para armazenar os dados de análise e previsão em algum tipo de forma estruturada. Ctl é um arquivo de controle no formato ASCII que pode ser usado para ler o arquivo Grib.
Ambos os formatos são normalmente utilizados em centros de previsão do tempo e estudos de meteorologia.
Os arquivos CTL pode ser lido e visualizado através do software GRADS, CDAT e outros softwares meteorológicos. Ambos GrADS e CDAT são software livre.
É isso!
Boa Sorte e Bom Trabalho a Todos! É isso!
Gostei bastante do post. Me ajudou bastante.
ResponderExcluirMas tenho uma dúvida, o script g2ctl.pl ele converte somente a primeira previsão feita ?
O caso é o seguinte, ao baixar algumas reanálises do NCEP ,que aparentemente eram previsões com intervalos de 6 em 6 horas, esperava encontrar uma saída com variáveis de vários dias e horários diferentes, mas o que retornei de resposta foi somente o resultado da previsão equivalente ao primeiro dia e primeiro horário.
Isso teria a ver com o script ou poderia ser um erro de algum procedimento posterior ?
Desde já, agradeço toda a ajuda possível.
Olá Alexandre,
ExcluirObrigado pelo elogio ao post. Bom vamos a tua pergunta: Se você baixar o arquivo que contem além da análise as previsões o g2ctl.pl consegue através do .ctl referente ao teu arquivo baixado identificar quantos tempos tem no arquivo e transformar todo ele. Lembre que se você tem um arquivo com vários tempos será transformado em um outro arquivo também com vários tempos, apensas um arquivo e será o .ctl quem permitirá você percorrer todos os tempos existentes. Espero ter ajudado
Abraço,
Cristiano
Boa noite.
ResponderExcluirTem como usar o g2ctl no windows?
Dê uma olhada neste link...
Excluirhttp://opengrads.org/doc/udxt/grib2/grib2.html
Abraço
Obrigado.
ExcluirDesculpe-me por nao me identificar. Agora tah ok
Oi Cristiano! Se tenho arquivos em sequência, tipo newname_mes12_hora12_00.grb2, newname_mes12_hora12_02.grb2, newname_mes12_hora12_03.grb2... como edito no ctl? É com o %t2? Como fica o tdef?
ResponderExcluire no windows?
ResponderExcluirhttp://opengrads.org/doc/udxt/grib2/grib2.html#usage_under_microsoft_windows
Excluirolá cristiano eu tentei instalar estava tudo correndo bem ate que apareceu esta msg de erro ao executar o quarto passo fazendo: /usr/local/grib2 sudo make
ResponderExcluirele diz: makefile:358: *** ERROR, did not recognize fortran compiler, cannot use IPOLATES, set FC=f90 compiler. Pare.
Mas eu ja tenho instalado o gfortran
Oi Manuel,
ExcluirVocê precisa identificar o local e o nome do binário associado a seu compilador fortran, as vezes o gfortran não se chama f90.
Abraço,
Cristiano
Olá Cristiano,
ResponderExcluirestou fazendo uma análise utilizando os campos de precipitacao do MERGE. Tem que criar um arquivo ctl, opcao template e tudo mais. Certo!
Na hora de aplicar o gribmap apareceu o erro dizendo que o arquivo nao era formato grib1 ou grib2 (ja esperava isso). O arquivo de saida do MERGE é um .ctl (prec_data.ctl) e um .bin (prec_data.bin). Minha duvida é:
Qual o comando que eu devo dar que faca a mesma coisa que o gribmap faz utilizando esse tipo de arquivo (.bin)?
Desde já eu agradeco
Oi Kleber Lima,
ExcluirA resposta a sua pergunta pode estar no final deste site.
http://www6.cptec.inpe.br/ManualGrADS/gradutilgribmap.html
Abraço,
Cristiano
Olá Cristiano, obrigada pela sua explicação. Uma pergunta parva, você coloca o g2ctl.pl e wgrib dentro da pasta do GrADS ? Porque já tentei varias vezes instalar e na hora de testar dá sempre erros...
ResponderExcluirgfs.t12z.pgrb2.1p00.anl does not exist (bad name? wrong directory?)
gfs.t12z.pgrb2.1p00.anl is not a grib file
cannot write a temporary file /tmp/g21723.tmp (permissions? full disk?)
wgrib was not found (/usr/local/bin/wgrib not on path, wrong directory?)
/usr/local/bin/wgrib was compiled for a different machine or operating system
Obrigada pela sua atenção.
Olá MT,
ExcluirSim dentro da pasta do GrADS. Se você tiver o opengrads (GrADS2) coloca na pasta /grads-2.0.1/Contents/
Abraço,
Cristiano