Gostaria de ajudar?

segunda-feira, 10 de setembro de 2012

Como instalar/Usar o g2ctl.pl e o wgrib2 no linux

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.
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!



14 comentários :

  1. Gostei bastante do post. Me ajudou bastante.
    Mas 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.

    ResponderExcluir
    Respostas
    1. Olá Alexandre,

      Obrigado 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

      Excluir
  2. Boa noite.
    Tem como usar o g2ctl no windows?

    ResponderExcluir
    Respostas
    1. Dê uma olhada neste link...

      http://opengrads.org/doc/udxt/grib2/grib2.html

      Abraço

      Excluir
    2. Obrigado.
      Desculpe-me por nao me identificar. Agora tah ok

      Excluir
  3. 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?

    ResponderExcluir
  4. Respostas
    1. http://opengrads.org/doc/udxt/grib2/grib2.html#usage_under_microsoft_windows

      Excluir
  5. olá 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
    ele diz: makefile:358: *** ERROR, did not recognize fortran compiler, cannot use IPOLATES, set FC=f90 compiler. Pare.
    Mas eu ja tenho instalado o gfortran

    ResponderExcluir
    Respostas
    1. Oi Manuel,

      Você 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

      Excluir
  6. Olá Cristiano,

    estou 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

    ResponderExcluir
    Respostas
    1. Oi Kleber Lima,

      A resposta a sua pergunta pode estar no final deste site.

      http://www6.cptec.inpe.br/ManualGrADS/gradutilgribmap.html

      Abraço,
      Cristiano

      Excluir
  7. 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...

    gfs.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.

    ResponderExcluir
    Respostas
    1. Olá MT,

      Sim dentro da pasta do GrADS. Se você tiver o opengrads (GrADS2) coloca na pasta /grads-2.0.1/Contents/

      Abraço,
      Cristiano

      Excluir